演習 - IoT Edge デバイスを展開して Azure IoT Central から管理する

完了

IoT Edge ランタイムを Linux VM に展開し、Azure IoT Central から IoT Edge デバイスを管理します。

ソリューションを店舗に展開する前にテストするには、クラウド内の Linux 仮想マシン (VM) で IoT Edge モジュールを実行することを思い出してください。

ここでは、IoT Edge ランタイムを Linux VM に展開して、Azure IoT Central アプリケーションでモジュールの動作をテストします。

Note

この演習は省略してもかまいません。 この演習を実行する場合は、始める前に Azure サブスクリプションを作成する必要があります。 Azure アカウントをお持ちでない場合、またはこの時点で作成しない場合は、提示されている情報を理解するため手順に目を通してください。

IoT Edge デバイスを構成して展開する

前のモジュールでは、IoT Edge デバイスには Azure IoT Central アプリケーションからの接続情報が必要であることを学習しました。 Cloud Shell サンドボックスで次の環境変数を設定します。

  1. 仮想マシンに接続するための堅固なパスワードを生成します。 パスワードは 12 文字以上で、小文字、大文字、数字、特殊文字の 4 つのうち 3 つを含む必要があります。 コマンド openssl rand --base64 15 を使用して、パスワードに適した一連のランダムな文字を生成します。

    VM_PASSWORD=$(openssl rand --base64 15)
    echo "Your VM password is: $VM_PASSWORD"
    

    シェルがタイムアウトして環境変数が失われた場合に備えて、パスワードをメモしておいてください。

  2. <IOT_CENTRAL_APP_SCOPE_ID> を、前の演習で記録したスコープ ID に置き換えます。

    SCOPE_ID="<IOT_CENTRAL_APP_SCOPE_ID>"
    
  3. <IOT_CENTRAL_DEVICE_KEY> を、前の演習で記録したデバイスの主キーに置き換えます。

    DEVICE_KEY="<IOT_CENTRAL_DEVICE_KEY>"
    
  4. 次のコマンドを実行して Linux VM を作成し、IoT Edge ランタイムをインストールし、構成ファイルを編集します。 既定では、IoT Edge のインストールは IoT ハブに直接接続されます。 構成ファイルを編集することで、IoT Edge デバイスがデバイス プロビジョニング サービス (DPS) を使用して Azure IoT Central アプリケーションに接続することが保証されます。

    az deployment group create \
      --name edgeModuleVM \
      --resource-group <rgn>[sandbox resource group name]</rgn> \
      --template-uri https://raw.githubusercontent.com/Azure-Samples/iot-central-docs-samples/main/edge-vm-deploy-1-4/edgeModuleVMDeploy.json \
      --parameters dnsLabelPrefix="$APP_NAME" \
      --parameters adminUsername="AzureUser" \
      --parameters adminPassword="$VM_PASSWORD" \
      --parameters scopeId="$SCOPE_ID" \
      --parameters deviceId="store-001" \
      --parameters deviceKey="$DEVICE_KEY"
    
  5. Azure IoT Central アプリケーションの [デバイス] ページで、[環境センサー エッジ デバイス] デバイスに移動します。 URL を忘れた場合は、次のコマンドを実行します。

    echo "You can now navigate to: https://$APP_NAME.azureiotcentral.com/devices"
    

    IoT Edge デバイスが接続すると、[デバイスの状態][登録済み] から [プロビジョニング済み] に変わります。

    プロビジョニング済みのデバイスを示すデバイス一覧のスクリーンショット。

    ヒント

    状態が [プロビジョニング済み] に変わるまで、数分待ちます。

  6. [デバイスの状態][プロビジョニング済み] と表示されたら、デバイス名 store-001 を選択します。 [モジュール] など、デバイスに使用できるビューを確認できます。

  7. [モジュール] ビューを選択します。 Azure IoT Central アプリケーションがモジュールの実行を検出すると、3 つのモジュールの状態が [実行中] に変わります。 状態が更新されるまでに数分かかる場合があります。

    IoT Edge デバイスで 3 つのモジュールが実行していることを示すスクリーンショット。

テレメトリを監視する

IoT Edge デバイスから送られてくるテレメトリを表示するには、View IoT Edge device telemetry を選択します。 このビューは、前に作成したものです。 数分経つと、テレメトリが折れ線グラフに表示されます。

IoT Edge モジュールからのテレメトリ プロットを示すスクリーンショット。21 度未満の環境温度値が含まれます。

Note

IoT Edge モジュールからは、21° を下回る環境温度値がいくつか送信されています。 次のユニットでは、エッジでこれらの低い値をフィルター処理する方法について説明します。

作業を確認

これで、IoT Edge デバイスが Azure VM で実行され、DPS を使用して Azure IoT Central アプリケーションに接続され、テレメトリが送信されるようになりました。

次のこともできます。

  • [生データ] ページで、IoT Edge デバイスから送信された生データを表示します。
  • [Store information] ページで、定義したクラウド プロパティを編集します。
  • [管理] ページで、デバイスの書き込み可能なプロパティ (Send DataSend Interval) を編集します。 Azure IoT Central は、IoT Edge デバイス用にこのページを自動的に作成します。