対象:
IoT Edge 1.5
重要
IoT Edge 1.5 LTS は、サポートされているリリースです。 IoT Edge 1.4 LTS は 2024 年 11 月 12 日に終了しました。 以前のリリースを使用している場合は、「Update IoT Edgeを参照してください。
Azure IoT Edgeは、コンテナー化された Linux アプリケーションのデプロイ、実行、監視を可能にする、デバイスに重点を置いたランタイムであり、分析情報を迅速に把握し、オフラインの意思決定を行うために、分析をデバイスに近づけることができます。
分析は、IoT ソリューションのビジネス上の価値を決める重要な要素ですが、すべての分析をクラウドで行う必要はありません。 Azure IoT Edgeは、クラウドの分析力をデバイスに近づけて、より優れたビジネス分析情報を得て、オフラインでの意思決定を可能にするのに役立ちます。 たとえば、エッジで異常検出を実行して、生産ラインで発生した緊急時にできるだけ迅速に対応できます。 帯域幅コストを削減し、テラバイト規模の生データを転送することを回避したい場合は、データのクリーニングや集約をローカルで行い、分析のために分析情報をクラウドに送信するだけで済みます。
Azure IoT Edgeは、エッジベースの機能をクラウドベースのソリューションに提供し、クラウドから IoT ソリューションをスケールアウトして管理できる Azure IoT Hub の機能です。 ビジネス ロジックを標準コンテナーにパッケージ化し、パートナーまたは Microsoft Artifact Registry の事前構築済みIoT Edgeモジュール イメージを使用することで、ソリューションを簡単に作成、デプロイ、保守できます。
Azure IoT Edgeは、次の 3 つのコンポーネントで構成されます。
- IoT Edge モジュール は、Azure サービス、サード パーティのサービス、または独自のコードを実行するコンテナーです。 モジュールはIoT Edgeデバイスにデプロイされ、それらのデバイスでローカルに実行されます。
- IoT Edge ランタイムは、各IoT Edge デバイスで実行され、各デバイスにデプロイされたモジュールを管理します。
- クラウドベースのインターフェイスを使用すると、IoT Edgeデバイスをリモートで監視および管理できます。
注
Azure IoT Edgeは、IoT Hubの無料レベルと Standard レベルで利用できます。 Free レベルは、テストおよび評価用です。 Basic レベルと Standard レベルの詳細については、「適切なIoT Hubレベルを選択する方法を参照してください。
IoT Edge モジュール
IoT Edge モジュールは、Docker と互換性のあるコンテナーとして実装される実行単位であり、エッジでビジネス ロジックを実行します。 互いに通信を行う複数のモジュールを構成することで、データ処理のパイプラインを作成することができます。 カスタム モジュールを開発したり、特定のAzure サービスをオフラインおよびエッジで分析情報を提供するモジュールにパッケージ化したりできます。
エッジで利用できる人工知能
Azure IoT Edgeを使用すると、機械学習、画像認識、複雑なイベント処理などの高度な AI 機能を社内開発を必要とせずに、エッジに直接デプロイできます。 Azure Stream AnalyticsやAzure Machine LearningなどのAzureサービスはすべて、Azure IoT Edge経由でオンプレミスで実行できます。 ただし、Azure サービスに限定されるわけではありません。 すべてのユーザーが自分で使用するための AI モジュールを作成できます。
Bring Your Own Code
独自のコードをデバイスに展開する場合は、Azure IoT Edgeもサポートします。 Azure IoT Edgeは、他のAzure IoT サービスと同じプログラミング モデルを保持します。 同じコードをデバイスでもクラウドでも実行できます。 Azure IoT Edgeでは Linux と Windows の両方がサポートされているため、任意のプラットフォームにコーディングできます。 Java、.NET、Node.js、C、Pythonがサポートされているため、開発者は既に知っている言語でコードを記述し、既存のビジネス ロジックを使用できます。
IoT Edge ランタイム
Azure IoT Edge ランタイムでは、IoT Edge デバイスでカスタム ロジックとクラウド ロジックが有効になります。 ランタイムは、IoT Edge デバイスに配置され、管理操作と通信操作を実行します。 このランタイムによって実行されるいくつかの機能を次に示します。
- デバイスにモジュールをインストールして更新します。
- デバイスAzure IoT Edgeセキュリティ標準を維持します。
- IoT Edgeモジュールが常に実行されていることを確認します。
- モジュールの正常性をクラウドに報告してリモート監視を可能にする。
- ダウンストリーム デバイスとIoT Edge デバイス間、IoT Edge デバイス上のモジュール間、およびIoT Edge デバイスとクラウド間の通信を管理します。
Azure IoT Edge デバイスの使用方法はユーザー次第です。 そのランタイムは多くの場合、他のオンプレミス デバイスからのデータを集約して処理するゲートウェイ デバイスに AI をデプロイする目的で使用されますが、そのデプロイ モデルは選択肢の 1 つにすぎません。
Azure IoT Edge ランタイムは、さまざまな方法で使用できる多数の IoT デバイスで実行されます。 Linux とWindowsの両方のオペレーティング システムをサポートし、ハードウェアの詳細を抽象化します。 多くのデータを処理していない場合は Raspberry Pi 3 より小さいデバイスを使用するか、産業用サーバーを使用してリソースを大量に消費するアプリケーションを実行します。
IoT Edge クラウド インターフェイス
製造元やモデルが異なっていたり、地理的に分散したりしている数百万台の IoT デバイスのソフトウェア ライフサイクルを管理するのは困難です。 モジュールは、特定の種類のデバイス用に作成および構成され、すべてのデバイスに展開され、不適切な動作をするデバイスをキャッチするために監視されます。 これらのアクティビティは、デバイス単位で行うことはできないため、一定の規模で実施する必要があります。
Azure IoT Edgeは、Azure IoT Central とシームレスに統合され、ソリューションのニーズに 1 つのコントロール プレーンを提供します。 ユーザーは Cloud Services を通じて次のことを実行できます。
- 特定の種類のデバイスで実行するモジュールを作成して構成します。
- 一連のデバイスにモジュールをデプロイします。
- フィールド内のデバイスで実行されているモジュールを監視します。
次のステップ
最初のIoT Edge モジュールをデバイスにデプロイして、IoT Edgeの概念を学習する次の手順を実行します。