Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Greengrassを使ったIoTのアーキテクチャ
Search
Ryohei Hisamitsu
February 21, 2022
Technology
0
150
Greengrassを使ったIoTのアーキテクチャ
Ryohei Hisamitsu
February 21, 2022
Tweet
Share
More Decks by Ryohei Hisamitsu
See All by Ryohei Hisamitsu
re:Invent参加フィードバック会
hisami
0
89
GoのアプリをEKS(Fargate)にデプロイしてみた話
hisami
0
240
ECS Execを使ってFargateにログインしてみた
hisami
1
380
TypeScriptでDIしてみた
hisami
0
520
Other Decks in Technology
See All in Technology
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
1.2k
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.3k
OCI Oracle Database Services新機能アップデート(2025/09-2025/11)
oracle4engineer
PRO
0
100
30分であなたをOmniのファンにしてみせます~分析画面のクリック操作をそのままコード化できるAI-ReadyなBIツール~
sagara
0
110
Playwrightのソースコードに見る、自動テストを自動で書く技術
yusukeiwaki
13
5.2k
ログ管理の新たな可能性?CloudWatchの新機能をご紹介
ikumi_ono
1
630
5分で知るMicrosoft Ignite
taiponrock
PRO
0
320
A Compass of Thought: Guiding the Future of Test Automation ( #jassttokai25 , #jassttokai )
teyamagu
PRO
1
250
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
130
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
4
1k
新 Security HubがついにGA!仕組みや料金を深堀り #AWSreInvent #regrowth / AWS Security Hub Advanced GA
masahirokawahara
1
1.7k
評価駆動開発で不確実性を制御する - MLflow 3が支えるエージェント開発
databricksjapan
1
110
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.6k
Being A Developer After 40
akosma
91
590k
Agile that works and the tools we love
rasmusluckow
331
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Designing Experiences People Love
moore
143
24k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Visualization
eitanlees
150
16k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
We Have a Design System, Now What?
morganepeng
54
7.9k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
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