次の方法で共有


デバイス更新エージェントのプロビジョニング

Device Update Module エージェントは、同じ論理デバイスの一部として IoT Hub に接続する他のシステム プロセスや IoT Edge モジュール と共に実行できます。 このセクションでは、Device Update エージェントをモジュール ID としてプロビジョニングする方法について説明します。

パブリック プレビュー更新時の Device Update エージェントの変更

最新のパブリック プレビュー更新エージェント (バージョン 0.8.0) で、Device Update エージェントに多くの新機能が追加されました。 詳細については 、新機能の一覧 を参照してください。

Device Update エージェント バージョン 0.6.0 または 0.7.0 を使用している場合は、最新のエージェント バージョン 0.8.0 に移行してください。 変更とアップグレード方法については、パブリック プレビュー更新エージェントを参照してください

インストールされているバージョンのデバイス更新エージェントと配信の最適化エージェントは、 IoT デバイス ツインの [デバイスのプロパティ] セクションで確認できます。 デバイスのプロパティの詳細については、ADU Core インターフェイスを参照してください

モジュール ID とデバイス ID

IoT Hub では、デバイス ID ごとに最大 50 のモジュール ID を作成できます。 モジュールの ID ごとに、モジュール ツインは暗黙的に生成されます。 デバイス側では、IoT Hub デバイス SDK を使用して、それぞれが IoT Hub への独立した接続を確立するモジュールを作成できます。 モジュール ID とモジュール ツインは、デバイス ID とデバイス ツインと同様の機能を提供しますが、細かい粒度で提供されます。 IoT Hub のモジュール ID の詳細

デバイス レベルのエージェントからデバイス上のモジュール ID としてエージェントを追加するように移行する場合は、デバイス ツイン経由で通信していた古いエージェントを削除します。 Device Update エージェントをモジュール ID としてプロビジョニングすると、デバイスとデバイス更新サービス間のすべての通信がモジュール ツイン経由で行われるので、 グループ を作成するときにデバイスのモジュール ツインにタグを付け、すべての 通信 がモジュール ツイン経由で行われる必要があります。

デバイス更新プログラムのサポート

Device Update では、次の種類の IoT デバイスの無線更新が現在サポートされています。

前提条件

パッケージ ベースの更新用に IoT デバイス/IoT Edge デバイスを設定する場合は、次の手順に従って、コンピューターのリポジトリに packages.microsoft.com を追加します。

  1. Device Update エージェントをインストールするマシンまたは IoT デバイスにログオンします。

  2. [ターミナル] ウィンドウを開きます。

  3. デバイスのオペレーティング システムに一致するリポジトリ構成をインストールします。

    curl https://packages.microsoft.com/config/ubuntu/18.04/multiarch/prod.list > ./microsoft-prod.list
    
  4. 生成されたリストを sources.list.d ディレクトリにコピーします。

    sudo cp ./microsoft-prod.list /etc/apt/sources.list.d/
    
  5. Microsoft GPG 公開キーをインストールします。

    curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
    
    sudo cp ./microsoft.gpg /etc/apt/trusted.gpg.d/
    

Device Update エージェントをモジュール ID としてプロビジョニングする方法

このセクションでは、デバイス更新エージェントをモジュール ID としてプロビジョニングする方法について説明します。

  • IoT Edge 対応デバイス、または
  • Edge 以外の IoT デバイス、または
  • その他の IoT デバイス。

デバイスで IoT Edge が有効になっているかどうかを確認するには、 IoT Edge のインストール手順を参照してください。

以下のセクションのすべてに従って、管理している IoT デバイスの種類に基づいてデバイス更新エージェントを追加します。

IoT Edge 対応デバイスの場合

IoT Edge 対応デバイスに Device Update エージェントをプロビジョニングするには、次の手順に従います。

  1. 手順に従って、 1 つの Linux IoT Edge デバイスを手動でプロビジョニングします

  2. Device Update イメージ更新エージェントをインストールします。

    ここでは、Assets リポジトリにサンプル イメージを提供します。 swUpdate ファイルは、Raspberry Pi B3+ ボードにフラッシュできる基本イメージです。 .gz ファイルは、Device Update for IoT Hub からインポートする更新プログラムです。 例については、「 IoT Hub デバイスにイメージをフラッシュする方法」を参照してください

  3. デバイス更新のパッケージの更新エージェントをインストールします。

    • packages.miscrosoft.com からの最新のエージェント バージョンの場合: デバイスのパッケージ 一覧を更新し、次を使用して Device Update エージェント パッケージとその依存関係をインストールします。

      sudo apt-get update
      
      sudo apt-get install deviceupdate-agent deliveryoptimization-plugin-apt
      
    • "rc" ( 成果物 からのリリース候補エージェントのバージョン) の場合: Device Update エージェントをインストールするコンピューターに.deb ファイルをダウンロードし、次の手順を実行します。

      sudo apt-get install -y ./"<PATH TO FILE>"/"<.DEB FILE NAME>"
      
  4. これで、IoT Edge デバイスで Device Update エージェントを開始する準備ができました。

IoT Edge がインストールされていない IoT Linux デバイスの場合

IoT Linux デバイスに Device Update エージェントをプロビジョニングするには、次の手順に従います。

  1. IoT Identity Service をインストールし、「 Azure IoT Identity Service のインストール」の説明に従って、IoT デバイスに最新バージョンを追加します。

  2. Azure IoT Identity Service の構成」の手順に従って、IoT Identity Service を構成します。

  3. 最後に、Device Update エージェントをインストールします。 ここでは、アセットのサンプル イメージを提供します。swUpdate ファイルは Raspberry Pi B3+ ボードにフラッシュできる基本イメージであり、.gz ファイルは Device Update for IoT Hub からインポートする更新プログラムです。 IoT Hub デバイスにイメージをフラッシュする方法の例を参照してください。

  4. デバイス更新エージェントをインストールしたら、次のコマンドを実行して、Device Update の構成ファイルを編集する必要があります。

     sudo nano /etc/adu/du-config.json
    

    プロビジョニングに IoT Identity Service を使用するエージェントの connectionType を "AIS" に変更します。 ConnectionData フィールドは空の文字列である必要があります

  5. これで、IoT デバイスで Device Update エージェントを起動する準備ができました。

その他の IoT デバイス

デバイス更新エージェントは、テスト用または制約付きデバイス用に IoT Identity サービスなしで構成することもできます。 (モジュールまたはデバイスから) 接続文字列を使用して Device Update エージェントをプロビジョニングするには、次の手順に従います。

  1. ここでは、Assets リポジトリにサンプル イメージを提供します。 swUpdate ファイルは、Raspberry Pi B3+ ボードにフラッシュできる基本イメージです。 .gz ファイルは、Device Update for IoT Hub からインポートする更新プログラムです。 例については、「 IoT Hub デバイスにイメージをフラッシュする方法」を参照してください

  2. マシンまたは IoT Edge デバイス/IoT デバイスにログオンします。

  3. ターミナル ウィンドウを開きます。

  4. 接続文字列を Device Update 構成ファイルに追加します。

    1. ターミナル ウィンドウで以下を入力します。

    2. プライマリ接続文字列をコピーする

      • Device Update エージェントがモジュールとして構成されている場合は、モジュールのプライマリ接続文字列をコピーします。
      • それ以外の場合は、デバイスのプライマリ接続文字列をコピーします。
    3. コピーしたプライマリ接続文字列を、du-config.json ファイルの 'connectionData' フィールドの値に入力します。 ファイルを保存して閉じます。

  5. これで、IoT デバイスで Device Update エージェントを起動する準備ができました。

デバイス更新エージェントを起動する方法

このセクションでは、IoT デバイスで正常に実行されているモジュール ID として Device Update エージェントを起動して確認する方法について説明します。

  1. Device Update エージェントがインストールされているコンピューターまたはデバイスにログインします。

  2. ターミナル ウィンドウを開き、次のコマンドを入力します。

    sudo systemctl restart adu-agent
    
  3. 次のコマンドを使用して、エージェントの状態を確認できます。 問題が発生した場合は、この トラブルシューティング ガイドを参照してください。

    sudo systemctl status adu-agent
    

    状態が [OK] と表示されます。

  4. IoT Hub ポータルで、IoT デバイスまたは IoT Edge デバイスに移動して、Device Update エージェントで構成したデバイスを見つけます。 デバイス更新エージェントがモジュールとして実行されていることがわかります。 例えば次が挙げられます。

    デバイス更新モジュール名の図。

Device Update エージェントをビルドして実行する方法

独自の顧客の Device Update エージェントをビルドおよび変更することもできます。

手順に従って、ソースからデバイス更新エージェントを ビルド します。

エージェントが正常にビルドされたら、エージェントを 実行 します。

次に、エージェントをイメージに組み込むために必要な変更を行います。 ガイダンスについては、デバイス更新エージェントを 変更 する方法を参照してください。

トラブルシューティング ガイド

問題が発生した場合は、「Device Update for IoT Hub トラブルシューティング ガイド 」を参照して、考えられる問題のブロックを解除し、Microsoft に提供するために必要な情報を収集してください。

次のステップ

Device Update for IoT Hub の簡単なデモンストレーションには、次のチュートリアルを使用できます。