適用於 IoT 中樞的 Azure 裝置更新允許將更新部署到 IoT 裝置的使用者定義群組。 每個裝置更新受控裝置都是裝置群組的成員,但定義裝置群組是選擇性的。 您也可以部署至裝置更新所提供的預設裝置群組。
如果您建立並指派使用者定義的裝置更新標籤給裝置,Device Update 會自動根據指派的標籤和裝置相容性屬性建立群組。 針對每個裝置群組,裝置更新可以建立多個具有不同裝置類別的子群組。 裝置更新會將沒有標籤的裝置放在裝置群組中 default 。
本文說明如何使用 Azure 入口網站 或 Azure CLI 來建立和管理使用者定義的裝置更新裝置標籤和群組。 若要將更新部署至使用者定義的或預設裝置群組,請參閱 部署裝置更新。
必要條件
開始前,請注意以下先決條件:
- 裝置必須成功接入 Device Update 後,群組指派才能生效。
- 裝置必須回報支援的 隨插即用 型號 ID。 有關支援的型號 ID 清單,請參見 裝置更新模型。
- 對於 IoT Edge 情境,裝置更新代理會以模組形式執行,並必須透過適當的身份身分報告模型 ID。
- 已啟用 IoT 中樞的裝置更新 的 Azure IoT 中樞 標準 (S1) 或更高層級執行個體。
- 在 IoT 中樞內,已為裝置更新佈建的 IoT 裝置或模擬器。
- 裝置更新代理程式是以模組或裝置層級身分識別的形式在裝置上安裝並啟動。
- 已匯入的佈建裝置更新。
將標籤新增至您的裝置
若要指派 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標籤。
在 Azure 入口網站中,瀏覽至您的 IoT 中樞。
在左側瀏覽窗格中,選取 [裝置管理] 下的 [裝置]。 如果您有IoT Edge裝置,請改為選取 [IoT Edge ]。
在 [ 裝置] 頁面上,選取您的裝置。
在裝置頁面上,您可以在頂端功能表中選取 裝置對應項,或在 模組身分識別 底下選取模組身分識別,然後選取模組對應項。
在 twin 中,加入
ADUGroup帶有使用者定義值的標籤。 若要更新現有的ADUGroup標籤值,請使用不同的使用者定義值來覆寫它。"tags": { "ADUGroup": "<CustomTagValue>" }選取儲存。
檢視裝置群組
在 Azure 入口網站,前往連接到你的裝置更新實例的物聯網中樞。
選取左側導覽中 裝置管理 下的 [更新] 選項。
選取 [群組和部署] 索引標籤。
當你建立群組時,合規表和群組列表會更新。 裝置更新合規性圖表顯示各種合規性狀態的裝置計數:最新的更新、有新的更新可用和更新進行中。 如需詳細資訊,請參閱裝置更新合規性。
群組清單顯示現有的裝置更新群組,以及該群組中可用的裝置更新。 不符合該群組裝置類別要求的裝置會出現在對應的無效群組中。 您可以在此檢視中,選取群組旁的 部署,將最佳可用更新部署到該群組。
檢視群組的裝置詳細資料
從裝置群組移除裝置
若要從裝置群組中移除裝置,請在 twin 中將 ADUGroup 的值變更為 null,然後選取 儲存。
"tags": {
"ADUGroup": "null"
}
此動作會從裝置分身中刪除群組標籤,並將裝置從裝置群組中移除。
刪除裝置群組
裝置更新會自動建立裝置群組,並保留裝置群組、裝置類別,以及歷程記錄或其他使用者需求的部署,而不是自動清除它們。 您可以透過 Azure 入口網站 刪除裝置群組,方法是個別選取和刪除群組,或在群組上呼叫 az iot du device group delete Azure CLI 命令。
若要刪除,群組必須符合下列需求:
- 不得為
default群組。 - 不得有任何成員裝置。 也就是說,已在 Device Update 執行個體中佈建的任何裝置,都不能具有值與群組名稱相符的
ADUGroup標籤。 - 不得有任何相關聯的作用中或已取消的部署。
注意
如果您無法刪除符合上述需求的群組,請檢查您是否有任何 狀況不良 的裝置標記為群組的一部分。 狀況不良的裝置無法接收部署,因此它們不會直接出現在群組中的成員裝置清單中。
檢查您是否有任何狀況不良的裝置:
- 在 Azure 入口網站中,瀏覽至您的 IoT 中樞。
- 從左側導覽中選取 [更新 ],然後選取 [ 診斷] 索引標籤 。
- 展開 [尋找遺失的裝置] 區段。
如果您已將狀況不良的裝置標記為群組的一部分,您必須先變更標籤或刪除裝置,才能刪除群組。
如果裝置再次指派給已刪除的組名,Device Update 會自動重新建立群組,但沒有相關聯的裝置或部署歷程記錄。
Troubleshooting
如果你標記了裝置但沒看到群組,請嘗試以下故障排除步驟:
- 確認標籤設定正確。
- 請確認裝置包含有效的 隨插即用 型號 ID 及有效
ADUGroup標籤。 - 確認 IoT 中樞 訊息路由是否正確配置。 欲了解更多資訊,請參閱 訊息路由。
- 確保 IoT 中樞 正確與裝置更新實例綁定。
- 執行裝置更新診斷和代理檢查。
- 必要時執行裝置同步。
欲了解更多資訊,請參閱 隨插即用 in Azure Device Update 及 Device Update for Azure IoT 中樞 agent check。