Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Greengrassを使ったIoTのアーキテクチャ
Search
Ryohei Hisamitsu
February 21, 2022
Technology
0
160
Greengrassを使ったIoTのアーキテクチャ
Ryohei Hisamitsu
February 21, 2022
Tweet
Share
More Decks by Ryohei Hisamitsu
See All by Ryohei Hisamitsu
re:Invent参加フィードバック会
hisami
0
92
GoのアプリをEKS(Fargate)にデプロイしてみた話
hisami
0
250
ECS Execを使ってFargateにログインしてみた
hisami
1
380
TypeScriptでDIしてみた
hisami
0
520
Other Decks in Technology
See All in Technology
Next.js 16の新機能 Cache Components について
sutetotanuki
0
210
Data Hubグループ 紹介資料
sansan33
PRO
0
2.5k
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
1
330
技術選定、下から見るか?横から見るか?
masakiokuda
0
180
I tried making a solo advent calendar!
zzzzico
0
140
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
_第4回__AIxIoTビジネス共創ラボ紹介資料_20251203.pdf
iotcomjpadmin
0
180
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.4k
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
0
770
ECS_EKS以外の選択肢_ROSA入門_.pdf
masakiokuda
1
120
Eight Engineering Unit 紹介資料
sansan33
PRO
0
6.2k
SES向け、生成AI時代におけるエンジニアリングとセキュリティ
longbowxxx
0
300
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Automating Front-end Workflow
addyosmani
1371
200k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
270
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
74
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Writing Fast Ruby
sferik
630
62k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
94
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
880
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
Greengrassを使ったIoTのアーキテクチャ 久光遼平 AWS LT会 2022.02.18
自己紹介:久光 遼平(ひさみつ りょうへい) l 自動車業界約6年、IT業界約4年のエンジニア l 大学:Java l 自動車会社:Matlab、C++ l
前職:PHP l NCDC:TypeScriptでの開発、 AWSでのインフラ構築(5日前にSAP資格取れました!) l 趣味 l マラソン:フルマラソン2回、30km大会1回、ハーフマラソン1回 l サッカー 2
今日するお話 l 作ったもの l システム構成 l Greengrassについて l メリット l
設定〜デプロイの大まかな流れ l はまったポイント l 実運用に向けたポイント 3
作ったもの 4 センサーデータ
TVCOFU 71$ システム構成 3%4 "84$MPVE &$4 6TFS $MPVE'SPOU 4 ʢ8FCΞϓϦͷஔʣ
ΤοδσόΠε .255 $PHOJUP (SFFOHSBTT ηϯαʔ &UIFSOFU '51 *P5$PSF "1*(BUFXBZ 4FDSFUT.BOBHFS $MPVE8BUDI -PHT "1*(BUFXBZ "NQMJGZ 今日のお話のメイン センサからのデータを受け取ってクラウドに送信&受信
Greengrassとは? l AWSの機能をエッジデバイスに拡張するサービス l Greengrassを使うことでデバイス上でLambdaを動かせる 6 引用:AWS Black Belt
Greengrassを使用するメリット l MQTTを使ったクラウドへのデータ送信が簡単に作れる l Greengrass用のSDKが用意されています l デプロイの制御が簡単にできる l 複数台のエッジデバイスに数クリックでデプロイできる。更新も簡単。 l
ログの管理がしやすい l CloudWatch Logsにエッジデバイスのログを送付できる (ただし、仕様にクセがあるので後で別途お話します) 7 ΤοδσόΠε .255 (SFFOHSBTT *P5$PSF import ggSdk from "aws-greengrass-core-sdk"; const iotClient = new ggSdk.IotData(); iotClient.publish( { topic, payload }, publishCallback);
設定〜デプロイの大まかな流れ 8 マイコンポーネント (Lambda) の作成 デバイス の設定 コンポーネント のデプロイ
設定〜デプロイの大まかな流れ 9 マイコンポーネント (Lambda) の作成 デバイス の設定 コンポーネント のデプロイ ・Greengrass
Coreのインストールパッケージをダウンロード ・デバイス名などを指定してインストールコマンドを実行 (デバイスの環境変数にAWSの認証情報を保持する必要あり ) インストールコマンド実行 AWSのコンソール上にデバイスが登録される
設定〜デプロイの大まかな流れ 10 マイコンポーネント (Lambda) の作成 デバイス の設定 コンポーネント のデプロイ ・Lambdaの関数名・バージョンを指定
・メモリやタイムアウト時間などを選択
設定〜デプロイの大まかな流れ 11 マイコンポーネント (Lambda) の作成 デバイス の設定 コンポーネント のデプロイ ・AWSで既に用意されているパブリックコンポーネントも存在
(CloudWatch Logsとの連携用など) ・上記の自分で作ったコンポーネントとパブリックコンポーネン トを組み合わせてデプロイ
はまったポイント l Greengrassにバグがある l メッセージの送信を許可するトピックの設定に、”hello/#”のようにワイル ドカードを挟むと、メッセージが二重に送信されるバグがあった l AWSに問い合わせ後、約3ヶ月やりとりした後に修正版リリース l その他
l JavaScriptには新ver用のsdkがないため、LegacySubscriptionRouterが必要 l メモリ増やすにはLambdaのメモリだけでなくJVMの設定が必要 12
実運用に向けたポイント l ログの設定 l CloudWatchにログを送れますが、挙動に少しクセがあります l リアルタイムでは送れない。デバイスに新しいログファイルが生成される タイミングで送られる l 1時間経過&次の時間の新しいログが出力された場合
l ログファイルのサイズ上限(1024KB)をオーバーした場合 l 厳密にリアルタイムで見るにはデバイスにsshするしかない 13 ↓デバイス上のログファイル
まとめ l Greengrassを使うと、エッジデバイス(ラズパイなど)から簡単に クラウドにデータを送れます l たまにバグと出くわしたり、トラブルが起きた時の情報がまだ少 ないです →抱え込みすぎず、サポートなどを有効に活用しましょう 14
None
実運用に向けたポイント l 複数環境の構築 l Greengrassのグループを使用して、送信するトピックを分けています 16 テスト用グループ 本番用グループ デバイス ①
デバイス ② デバイス ③ デバイス ④ *P5$PSF stg/hello prd/hello テスト用Lambda 本番用Lambda