(レポート) AWSモバイル/IoTサービス徹底攻略!!『デベロッパーに贈る、実践AWS IoT 入門』 #cmdevio
こんにちは、オペブの半瀬です。
11/21(土)に目黒のAWSJにて開催された「AWSモバイル/IoTサービス徹底攻略!!〜Developers.IO Meetup番外編〜」のレポートです!
イベント概要
本勉強会は、基本的な内容のBasic Track、応用的な内容のAdvanced Track、実際に試すことの出来るHands Onの3トラックに分けてAWSのモバイルサービスや、サーバーレスアーキテクチャ、IoTのお話をするというものです。
本セッションのご登壇者様・タイトル
AWSJ 福井 厚 様
デベロッパーに贈る、実践AWS IoT 入門
セッションの内容
IoTの広がりと今後
- モノが増えていくことに対する課題
- その中でCloudといかにつなぐか → AWS IoT
- 具体的な、AWS IoTの位置付けとは
- データフローに対する各種AWSサービスのマッピング
- datacollection and storage
- event processing
- data processing
- data analysys
AWS IoTのOverView:主な機能
- メッセージブローカー
- デバイスとの認証アクセス許可
- ルールエンジン
- デバイスシャドー(※)
- レジストリ
- デバイス開発を容易にするDevice SDK
メッセージブローカー:ハイスケーラブル
- 数百万のデバイスをさばくことができる
- クラウドを介したメッセージ送受信を行う
- デフォルトセキュリティ: X509証明書 TLS1.2
- MQTT
- HTTPSにくらべスループットが高い
- HTTPSにくらべて消費電力が低い
認証とアクセスの許可 : セキュリティ
- 2種類のプロトコルで
- MQTT+Mutual Auth TLS
- HTTPS+Mutual Auth TLS
ルールエンジン : AWS各種サービスとつなぐ
- 各種AWSサービスとの連携が可能に
- 受け取ったメッセージを評価して変換とエンドポイントへの配信をルールに従い実行する
- SQLライクな構文/シンプルかつ慣れた構文で
- jsonをサポート
- メッセージ変換機能
- 文字列操作/算術計算/暗号 ...
- 1つのトピックに対して、複数のルールが適用可能である
シャドー : デバイスの状態変更管理
- デバイスが状態をシャドーに送信する(json)
- アプリからもシャドーを見る
- アプリからデバイスの状態を確認する
- アプリからシャドーに対して、変更のリクエストを送信する
- DELTA
- デバイスはシャドーの状態を確認し、変更DELTAがあれば同期
レジストリ : デバイスの管理
- S3にバージョン管理されたファームを管理
- メッセージブローカのトピックパターンを使ってデバイス群に通知
Device SDK : デモを交えて
- 実際に状態管理をどのように行うか(node.js)
- 光感知センサーから照度情報をAWS IoTへ送信する
- topic/device_paramの定義/メッセージブローカへの接続処理/レコードの組み立て/dataをjsonに変換し、送信
- AWS IoTでハンドリング
- DynamoDB(とKinesis)にsave
- マネジメントコンソール上で DynamoDBでテーブルを確認する
★ json形式で格納されていることを確認できました(すばらしい!!
- LED照明の管理 処理デバイス側の処理
- 現在の状態を取得→ 状態変化(DELTA)を確認→ 変更点を処理/制御する→ シャドウと自分(デバイス側)同期
★ 今回はマネジメントコンソールから直接状態を変更 : LED照明の点灯/消灯の切り替わりを確認することができました(すばらしい!!!
- 現在の状態を取得→ 状態変化(DELTA)を確認→ 変更点を処理/制御する→ シャドウと自分(デバイス側)同期
まとめ
!!AWS IoTは AWSの各サービスとの連携が容易!!
さいごに
「AWS IoTって何?」というところからはじまり、実際のデモで具体的な使い方をイメージすることができました。初心者にとっても開発者にとっても参考となる、とても楽しいセッションでした。
<会場の様子>
福井様ありがとうございました!