Azure IoT Edge入門
木澤朋和
Microsoft MVP for Windows and Device for IT
windows-podcast.com
2019年2月23日 .NETラボ勉強会
自己紹介
• 木澤朋和(きざわともかず)
• 国内メーカーのグループ会社でエンジニアをやっています
• Microsoft MVP for Windows and Devices for IT
(2018/7~2019/6)
• ポッドキャスト番組の配信(今年で配信10年目)
• 動画の配信
• ブログの執筆
• コミュニティ活動
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 2
Azure IoT Edge
• 目的
• エッジデバイス側で高速に処理
• よく多くのデバイスをAzure IoTで扱う
• 対応プラットフォームはWindowsとLinux
• エッジ側の処理は、コンテナ技術を使ってクラウドから配信
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 3
Azure IoT Edge登場まで
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 4
・センサなどのデバイスからの
データ収集
・遠隔操作
・データ処理・判定はクラウドで
高速なレスポンス・多彩なデバイスの接続
• リアルタイムな情報収集とフィードバック
• センサの反応を即時に警告(警告音、パトライト点灯など)
• クラウドを介さず、できるだけデバイス側で処理
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 5
• すべてのデバイスがAzure IoT Hubに接続できるわけではない
• ハードウェアの制約
• プロトコルの未サポート
• ゲートウェイとしての機能
• インターフェース変換、プロトコル変換
Edge
利用シーン
• 情報の中継
• Azure IoT Hubとの仲介
• Azureとの通信ができない場合のデータの蓄積
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 6
マイコン
ボード
+
センサ
シリアル通信
Azure
IoT Hub
Azure
IoT Edge
利用シーン
• プロトコル変換
• エッジデバイスがAzure IoT Hubと通信できない場合
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 7
Edge
マイコン
ボード
+
センサ
MQTT
Azure
IoT Hub
Azure
IoT Edge
独自
プロトコル
利用シーン
• エッジデバイス側だけで処理
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 8
Edgeマイコン
ボード
+
センサ
通知
Azure
IoT Hub
Azure
IoT Edge
通知
ランプ
ブザー
など
出力
利用シーン
• IoT EdgeにAzureの機能を実装
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 9
Edge
マイコン
ボード
+
センサ
通知
Azure
IoT Hub
Azure IoT
Edge
通知
データ解析
機械学習
デプロイ モジュール
WindowsとLinuxが対応
• IoT EdgeはWindowsまたはLinuxで構築できる。
• 今回はSurface ProをIoT Edgeデバイスにしてしまいます。
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 10
対応しているWindowsとLinux
• Windows
• Windows 10 Ver.1809 (October 2018 Update) Build 17763
• Windows 10 IoT Core (October 2018 Update)
• Windows Server 2016
• Linux
• レベル1(公式サポート)
Raspbian-stretch, Ubuntu Server 16.04, Ubuntu Server 18.04
• レベル2(互換性があるので大丈夫っぽい)
CentOS 7.5, Debian 8, Debian 9, RHEL 7.5, Ubuntu 18.04,
Ubuntu 16.04, Wind River 8, Yocto
• VMもOK
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 11
使ってみよう
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 12
IoT Edgeのサンプル
• モジュール:温度を生成して
送信するサンプル
• IoT Edgeで生成した温度を
BLOBストレージに保存
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 13
Azure
IoT Edge Device
(Surface Pro)
(Windows)
モジュール
Azure IoT Edge
ランタイム
IoT Hub
Azure Container
Registry
モジュール
Stream
Analytics
BLOB
リソースグループ作成
• リソースグループの作成
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 14
IoT Hubの作成
• IoT Hubの作成
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 15
IoT Hubの作成
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 16
IoT Hubの作成
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 17
IoT Hubの作成
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 18
IoTデバイスの登録
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 19
IoTデバイスIDの確認
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 20
Azure IoT Edgeランタイムインストール
• コンテナのインストール
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 21
Azure IoT Edgeランタイムインストール
• ランタイムのインストール
• インストールの確認
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 22
モジュールを展開する
• Azureから「温度センサー(シミュレーション)」をデプロイする
• 「Simulated Temperature Sensor」で検索
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 23
モジュールの展開
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 24
モジュールの設定
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 25
モジュールの確認
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 26
データの表示
• iotedge list
• iotedge logs SimulatedTemperatureSensor –f
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 27
Azureで確認する
• [デモ]
• IoT Hubで受信
• Stream Analyticsでデータの受け渡し
• BLOBストレージに保存
• Azure Storage Explorerで確認する
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 28
Azure
IoT Edge Device
(Surface Pro)
(Windows)
モジュール
Azure IoT Edge
ランタイム
IoT Hub
Azure Container
Registry
モジュール
Stream
Analytics
BLOB
まとめ
• Azure IoT Edge
• エッジデバイス側で高速に処理
• よく多くのデバイスをAzure IoTで扱う
• 対応プラットフォームはWindowsとLinux
• エッジ側の処理は、コンテナ技術を使ってクラウドから配信
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 29
続きは
• Raspberry Piでの実機デモ
• Stream Analytics、機械学習のデプロイ
• カスタムモジュールの作成
• というのをやりたいと思っています。
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 30
いつかできるから今日できる
Copyright (c) 2019 Tomokazu Kizawa All rights reserved. 31

Azure IoT Edge入門