管理適用於 IoT 中樞的 Azure 裝置更新裝置群組

適用於 IoT 中樞的 Azure 裝置更新允許將更新部署到 IoT 裝置的使用者定義群組。 每個裝置更新受控裝置都是裝置群組的成員,但定義裝置群組是選擇性的。 您也可以部署至裝置更新所提供的預設裝置群組。

如果您建立並指派使用者定義的裝置更新標籤給裝置,Device Update 會自動根據指派的標籤和裝置相容性屬性建立群組。 針對每個裝置群組,裝置更新可以建立多個具有不同裝置類別的子群組。 裝置更新會將沒有標籤的裝置放在裝置群組中 default 。

本文說明如何使用 Azure 入口網站 或 Azure CLI 來建立和管理使用者定義的裝置更新裝置標籤和群組。 若要將更新部署至使用者定義的或預設裝置群組,請參閱 部署裝置更新。

必要條件

開始前,請注意以下先決條件:

  • 裝置必須成功接入 Device Update 後,群組指派才能生效。
  • 裝置必須回報支援的 隨插即用 型號 ID。 有關支援的型號 ID 清單,請參見 裝置更新模型。
  • 對於 IoT Edge 情境,裝置更新代理會以模組形式執行,並必須透過適當的身份身分報告模型 ID。

將標籤新增至您的裝置

若要指派 Device Update 裝置群組,請在 IoT 中樞 中將 ADUGroup 標籤新增至一組目標的 Device Update 連線裝置。 如果裝置更新代理程式是使用裝置身分識別佈建,請將標籤新增至裝置對應項;如果裝置更新代理程式是使用模組身分識別佈建,請將標籤新增至對應的模組對應項。

裝置更新 ADUGroup 標籤會使用機碼/值格式,如下列裝置或模組對應項範例所示:

"etag": "",
"deviceId": "",
"deviceEtag": "",
"version": <version>,
"tags": {
   "ADUGroup": "<CustomTagValue>"
}

Important

新增 ADUGroup 標籤不會讓裝置直接進入裝置更新。 群組指派只有在裝置更新成功辨識並管理該裝置後才會發生。

如需對應項 JSON 語法的詳細資訊和範例,請參閱瞭解和使用裝置對應項或瞭解和使用模組對應項。

標籤 ADUGroup 具有下列屬性和限制:

  • 裝置只能有一個 ADUGroup 標籤,一次只能屬於一個裝置更新群組。 新增名為 ADUGroup 的另一個標記會覆寫現有的 ADUGroup 值。
  • 除了保留值 Uncategorized 和 $default 之外,您可以將任何值用於此標籤。
  • 標記值不能超過 200 個字元。
  • 標記值可以包含英數位元和下列特殊字元: . - _ ~。
  • 標籤 ADUGroup 名稱和組名值會區分大小寫。

下列各節說明新增和更新標記的幾種方式。

使用 SDK 新增標籤

將裝置註冊到 Device Update 之後,您可以使用 RegistryManager,透過適當的標籤更新裝置或模組孿生。 如需詳細資訊,請參閱下列文章:

透過工作新增標籤

您可以排程作業,在多個裝置上新增或更新裝置更新標籤。 如需作業的範例,請參閱安排多個裝置上的作業。 您可以根據裝置更新 Agent 是以裝置或模組身分佈建,決定使用作業來更新裝置對應項或模組對應項。 如需詳細資訊,請參閱安排和廣播作業。

注意

此作業會根據您的 IoT 中樞 訊息配額計算。 如果您一次變更 50,000 個以上的裝置或模組對應項標籤,您可能會超過每日 IoT 中樞 訊息配額,而且需要購買更多 IoT 中樞 單位。 如需詳細資訊,請參閱配額和節流。

透過更新對應項來新增標籤

您也可以直接在裝置或模組對應項中新增或更新 ADUGroup標籤。

  1. 在 Azure 入口網站中,瀏覽至您的 IoT 中樞。

  2. 在左側瀏覽窗格中,選取 [裝置管理] 下的 [裝置]。 如果您有IoT Edge裝置,請改為選取 [IoT Edge ]。

  3. 在 [ 裝置] 頁面上,選取您的裝置。

  4. 在裝置頁面上,您可以在頂端功能表中選取 裝置對應項,或在 模組身分識別 底下選取模組身分識別,然後選取模組對應項。

  5. 在 twin 中,加入 ADUGroup 帶有使用者定義值的標籤。 若要更新現有的 ADUGroup 標籤值,請使用不同的使用者定義值來覆寫它。

        "tags": {
                "ADUGroup": "<CustomTagValue>"
                }
    
  6. 選取儲存。

檢視裝置群組

  1. 在 Azure 入口網站,前往連接到你的裝置更新實例的物聯網中樞。

  2. 選取左側導覽中 裝置管理 下的 [更新] 選項。

  3. 選取 [群組和部署] 索引標籤。

    未分組裝置的螢幕快照。

當你建立群組時,合規表和群組列表會更新。 裝置更新合規性圖表顯示各種合規性狀態的裝置計數:最新的更新、有新的更新可用和更新進行中。 如需詳細資訊,請參閱裝置更新合規性。

群組清單顯示現有的裝置更新群組,以及該群組中可用的裝置更新。 不符合該群組裝置類別要求的裝置會出現在對應的無效群組中。 您可以在此檢視中,選取群組旁的 部署,將最佳可用更新部署到該群組。

更新合規性檢視的螢幕快照。

檢視群組的裝置詳細資料

  1. 從 [ 群組和部署] 索引 標籤中,選取群組的名稱。

    [ 群組詳細數據 ] 頁面會顯示更新合規性圖表,其中包含各種合規性狀態中的群組成員裝置計數,以及具有其裝置更新屬性的群組成員裝置清單。

    裝置群組詳細數據檢視的螢幕快照。

  2. 選取群組內的個別裝置,以移至 IoT 中樞 中的裝置詳細數據頁面。

    裝置詳細數據檢視的螢幕快照。

    IoT 中樞中裝置詳細數據檢視的螢幕快照。

從裝置群組移除裝置

若要從裝置群組中移除裝置,請在 twin 中將 ADUGroup 的值變更為 null,然後選取 儲存。

    "tags": {
            "ADUGroup": "null"
            }

此動作會從裝置分身中刪除群組標籤,並將裝置從裝置群組中移除。

刪除裝置群組

裝置更新會自動建立裝置群組,並保留裝置群組、裝置類別,以及歷程記錄或其他使用者需求的部署,而不是自動清除它們。 您可以透過 Azure 入口網站 刪除裝置群組,方法是個別選取和刪除群組,或在群組上呼叫 az iot du device group delete Azure CLI 命令。

若要刪除,群組必須符合下列需求:

  • 不得為 default 群組。
  • 不得有任何成員裝置。 也就是說,已在 Device Update 執行個體中佈建的任何裝置,都不能具有值與群組名稱相符的 ADUGroup 標籤。
  • 不得有任何相關聯的作用中或已取消的部署。

注意

如果您無法刪除符合上述需求的群組,請檢查您是否有任何 狀況不良 的裝置標記為群組的一部分。 狀況不良的裝置無法接收部署,因此它們不會直接出現在群組中的成員裝置清單中。

檢查您是否有任何狀況不良的裝置:

  1. 在 Azure 入口網站中,瀏覽至您的 IoT 中樞。
  2. 從左側導覽中選取 [更新 ],然後選取 [ 診斷] 索引標籤 。
  3. 展開 [尋找遺失的裝置] 區段。

如果您已將狀況不良的裝置標記為群組的一部分,您必須先變更標籤或刪除裝置,才能刪除群組。

如果裝置再次指派給已刪除的組名,Device Update 會自動重新建立群組,但沒有相關聯的裝置或部署歷程記錄。

Troubleshooting

如果你標記了裝置但沒看到群組,請嘗試以下故障排除步驟:

  • 確認標籤設定正確。
  • 請確認裝置包含有效的 隨插即用 型號 ID 及有效ADUGroup標籤。
  • 確認 IoT 中樞 訊息路由是否正確配置。 欲了解更多資訊,請參閱 訊息路由。
  • 確保 IoT 中樞 正確與裝置更新實例綁定。
  • 執行裝置更新診斷和代理檢查。
  • 必要時執行裝置同步。

欲了解更多資訊,請參閱 隨插即用 in Azure Device Update 及 Device Update for Azure IoT 中樞 agent check。