Device Update for IoT Hub のデバイス グループを管理する
Device Update for IoT Hub を使用すると、IoT デバイスのグループに更新プログラムをデプロイできます。 マネージド デバイスに更新プログラムをデプロイする場合、この手順は省略可能です。 自動的に作成される既定のグループを使用して、デバイスに更新プログラムをデプロイできます。 または、ユーザー定義タグをデバイスに割り当てることもできます。それらは、タグとデバイスの互換性プロパティに基づいて自動的にグループ化されます。
注意
ユーザーが作成したグループではなく、既定のグループにデプロイする場合は、更新プログラムのデプロイ方法に関する記事に進んでください。
前提条件
- Device Update for IoT Hub が有効になっている IoT Hub にアクセスできること。 IoT Hub には、S1 (Standard) レベル以上を使用することをお勧めします。
- Device Update 用にプロビジョニングされている、IoT ハブ内の IoT デバイス (またはシミュレーター)。
- モジュールまたはデバイス レベルの ID でデバイス更新エージェントを IoT デバイスにインストールして開始する
- プロビジョニングされたデバイス用にインポートされた更新プログラム。
サポートされているブラウザー:
- Microsoft Edge
- Google Chrome
デバイスにタグを追加する
デバイス グループを作成するには、最初の手順として、IoT Hub 内の対象デバイス セットにタグを追加します。 タグは、デバイスを Device Update に接続した後にのみ、デバイスに正常に追加できます。
Device Update タグは、次の例の形式を使用します:
"etag": "",
"deviceId": "",
"deviceEtag": "",
"version": <version>,
"tags": {
"ADUGroup": "<CustomTagValue>"
}
ツインの JSON 構文の詳細および例については、デバイス ツインの理解と使用に関する記事またはモジュール ツインの理解と使用に関する記事を参照してください。
以降のセクションでは、タグを追加したり更新したりするためのさまざまな方法について説明します。
SDK を使用してタグを追加する
Device Update にデバイスを登録したら、RegistryManager を使用して、適切なタグでデバイス ツインまたはモジュール ツインを更新できます。 詳細については、次の記事を参照してください。
Device Update エージェントがデバイス ID を使用してプロビジョニングされている場合は、デバイス ツインにタグを追加します。Device Update エージェントがモジュール ID を使用してプロビジョニングされている場合は、対応するモジュール ツインにタグを追加します。
ジョブを使用してタグを追加する
Device Update タグを追加または更新するためのジョブを複数のデバイスに対してスケジュールすることができます。 ジョブの操作例については、「複数デバイスでのジョブをスケジュール設定する」を参照してください。 Device Update エージェントのプロビジョニングにデバイス ID が使用されているかモジュール ID が使用されているかによって、ジョブを使用してデバイス ツインまたはモジュール ツインを更新できます。
詳細については、「ジョブのスケジュールとブロードキャスト」を参照してください。
Note
このアクションは、IoT Hub メッセージ クォータにカウントされます。 一度に変更するデバイス ツインまたはモジュール ツインのタグは、50,000 までに制限することをお勧めします。そうしないと、IOT Hub の 1 日のメッセージ クォータを超過した場合に IOT Hub ユニットの追加購入が必要になることがあります。 詳細については、クォータとスロットリングに関する記事を参照してください。
ツインを更新してタグを追加する
タグの追加または変更は、デバイス ツインやモジュール ツインに対して直接行うこともできます。
Azure Portal で、IoT ハブに移動します。
左側のナビゲーション ウィンドウの [デバイス] または [IoT Edge] で、目的の IoT デバイスを見つけます。 Device Update エージェントのプロビジョニングにデバイス ID が使用されているかモジュール ID が使用されているかに応じて、デバイス ツインに移動するか、または Device Update モジュールに移動してから対応するモジュール ツインに移動します。
ツインの詳細で、Device Update の既存のタグ値を null に設定することで削除します。
次に示すように、Device Update の新しいタグ値を追加します。
"tags": { "ADUGroup": "<CustomTagValue>" }
制限事項
- 予約済みの値である
Uncategorized
と$default
を除き、タグには任意の値を追加できます。 - 200 文字を超えるタグ値は指定できません。
- タグ値には、英数字と特殊文字の
. - _ ~
を含めることができます。 - タグ名およびグループ名では、大文字と小文字が区別されます。
- デバイスには、ADUGroup という名前のタグを 1 つだけ付けることができます。 その名前のタグを追加するたびに、タグ名 ADUGroup の既存の値がオーバーライドされます。
- 各デバイスは 1 つのグループにのみ属することができます。
デバイス グループを表示する
グループは、割り当てられたタグとデバイスの互換性プロパティに基づいて自動的に作成されます。 1 つのグループには、異なるデバイス クラスを持つ複数のサブグループを含めることができます。
Azure portal で、以前 Device Update インスタンスに接続した IoT ハブに移動します。
左側のナビゲーション バーの [デバイス管理] にある [更新] オプションを選択します。
[グループとデプロイ] タブを選択します。
グループが作成されると、コンプライアンス チャートとグループの一覧が更新されていることがわかります。 Device Update のコンプライアンス チャートには、さまざまなコンプライアンス対応状態 (最新の更新状態、利用可能な新しい更新プログラムがある、更新プログラムのインストールが進行中) にあるデバイスの数が表示されます。 詳細については、「デバイス更新のコンプライアンス」を参照してください。
グループの一覧には、既存のグループと、そこに含まれるデバイスに関して利用できる更新プログラムが表示されます。 グループのデバイス クラスの要件を満たしていないデバイスがある場合は、対応する無効なグループに表示されます。 このビューから、グループの横にある [デプロイ] ボタンを選択することで、そのグループに利用できる最適な更新プログラムをデプロイできます。
グループのデバイスの詳細を表示する
デバイス グループからのデバイスの削除
デバイス グループからデバイスを削除するには、ADUGroup タグの値を "null" に変更する必要があります。
"tags": {
"ADUGroup": "null"
}
これにより、デバイス ツインから ADUGroup タグが削除され、そのデバイス グループからデバイスが削除されます。
デバイス グループの削除
デバイス グループは自動的に作成されますが、履歴レコードまたはその他のユーザー ニーズに合わせて保持されるように、グループ、デバイス クラス、デプロイは自動的にクリーンされません。 デバイス グループを削除するには、Azure portal を使用して目的のグループを個別に選択して削除するか、グループに対して削除 API を呼び出します。 詳細情報
グループが削除された後に、このグループに対してデバイスが再び接続された場合、グループは自動的に再作成されますが、関連付けられたデバイスまたはデプロイの履歴はありません。
グループを削除するには、次の条件を満たす必要があります。
- グループにメンバー デバイスが存在してはなりません。 つまり、デバイス更新インスタンスのプロビジョニングされたデバイスに、選んだグループの名前と一致する値を持つ ADUGroup タグがありません。
- グループは既定のグループであってはなりません。
- グループにアクティブな、または取り消されたデプロイが関連付けられていないことが必要です。
注意
上の要件を満たしてもグループを削除できない場合は、グループの一部としてタグ付けされている異常なデバイスがあるかどうかを確認してください。 異常なデバイスとは、デプロイを受け取ることができず、結果として、グループ内のメンバー デバイス一覧に直接表示されなくなるデバイスです。 異常なデバイスがあるかどうかを確認するには、デバイス更新ポータル エクスペリエンスの [診断] タブにある [Find missing devices] (見つからないデバイスを見つける) に移動します。 グループの一部としてタグ付けされている異常なデバイスがある場合、グループを削除する前に、タグの値を変更するか、デバイスを完全に削除する必要があります。
次の手順
デバイス グループの詳細を確認します。
デバイス更新のコンプライアンスの詳細を確認します。