az iot edge deployment
注意
此參考是 Azure CLI 的 azure-iot 延伸模組的一部分(2.46.0 版或更高版本)。 擴充功能會在您第一次執行 az iot edge deployment 命令時自動安裝。 深入了解擴充功能。
大規模管理 IoT Edge 部署。
命令
名稱 | Description | 類型 | 狀態 |
---|---|---|---|
az iot edge deployment create |
在目標 IoT 中樞 中建立IoT Edge部署。 |
副檔名 | GA |
az iot edge deployment delete |
刪除 IoT Edge 部署。 |
副檔名 | GA |
az iot edge deployment list |
列出 IoT 中樞 中的IoT Edge部署。 |
副檔名 | GA |
az iot edge deployment show |
取得IoT Edge部署的詳細數據。 |
副檔名 | GA |
az iot edge deployment show-metric |
評估IoT Edge部署中定義的目標系統計量。 |
副檔名 | GA |
az iot edge deployment update |
更新IoT Edge部署的指定屬性。 |
副檔名 | GA |
az iot edge deployment create
在目標 IoT 中樞 中建立IoT Edge部署。
部署內容為 json,格式為 {“modulesContent”:{...}} 或 {“content”:{“modulesContent”:{...}}}。
根據預設,系統模組的屬性$edgeAgent和$edgeHub會根據隨 IoT 擴充功能安裝的架構進行驗證。 此驗證適用於基底部署。 如果對應的架構無法使用,或未偵測到基底部署格式,則會略過此步驟。 您可以使用 --no-validation 參數來停用架構驗證。
如果模組已定義 properties.desired.* ,邊緣部署會分類為分層。 任何以分層部署為目標的邊緣裝置,首先需要套用基礎部署。
以裝置為目標的任何分層部署,其優先順序必須高於該裝置的基底部署。
注意:如果在分層部署中設定模塊對應項的 properties.desired 欄位,properties.desired 會在任何較低優先順序的部署中覆寫該模組所需的屬性。
az iot edge deployment create --content
--deployment-id
[--auth-type {key, login}]
[--cl]
[--cmq]
[--hub-name]
[--lab]
[--layered {false, true}]
[--login]
[--metrics]
[--no-validation {false, true}]
[--pri]
[--resource-group]
[--target-condition]
範例
使用標籤 (bash 語法範例) 建立部署,該標籤適用於「建置 9」中的裝置,且環境為「測試」。
az iot edge deployment create -d {deployment_name} -n {iothub_name} --content ./modules_content.json --labels '{"key0":"value0", "key1":"value1"}' --target-condition "tags.building=9 and tags.environment='test'" --priority 3
建立具有標籤的部署(powershell 語法範例),適用於以環境 『dev』 標記的裝置。
az iot edge deployment create -d {deployment_name} -n {iothub_name} --content ./modules_content.json --labels "{'key':'value'}" --target-condition "tags.environment='dev'"
建立多層式部署,適用於以環境 'dev' 標記的裝置。 內嵌定義的用戶計量和模組內容(powershell 語法範例)。 請注意,這是已定義屬性.desired.* 的分層部署格式。
az iot edge deployment create -d {deployment_name} -n {iothub_name} --content "{'modulesContent':{'`$edgeAgent':{
'properties.desired.modules.mymodule0':{ }},'`$edgeHub':{'properties.desired.routes.myroute0':'FROM /messages/* INTO `$upstream'}}}"
--target-condition "tags.environment='dev'" --priority 10 --metrics "{'queries':{'mymetrik':'SELECT deviceId from devices where properties.reported.lastDesiredStatus.code = 200'}}"
建立適用於「建置 9」和環境「測試」中裝置的分層部署。 內嵌定義的用戶計量和模組內容(bash 語法範例)。 請注意,這是已定義屬性.desired.* 的分層部署格式。
az iot edge deployment create -d {deployment_name} -n {iothub_name} --content '{"modulesContent":{"$edgeAgent":{"properties.desired.modules.mymodule0":{ }},"$edgeHub":{"properties.desired.routes.myroute0":"FROM /messages/* INTO $upstream"}}}' --target-condition "tags.building=9 and tags.environment='test'" --metrics '{"queries":{"mymetrik":"SELECT deviceId from devices where properties.reported.lastDesiredStatus.code = 200"}}'
建立適用於 『building 9』 和環境 『test』 中裝置的部署。 從檔案定義的用戶計量和模組內容。
az iot edge deployment create -d {deployment_name} -n {iothub_name} --content ./modules_content.json --target-condition "tags.building=9 and tags.environment='test'" --metrics ./metrics_content.json
建立部署,其定義來自檔案,其中包含標籤和計量的殼層無關輸入。
az iot edge deployment create -d {deployment_name} -n {iothub_name} --content ./modules_content.json --target-condition "tags.building=9 and tags.environment='test'" --custom-labels key0=value0 key1=value1 --custom-metric-queries mymetric1="select deviceId from devices where tags.location='US'" mymetric2="select *"
必要參數
IoT Edge 部署內容。 提供檔案路徑或原始 JSON。
目標部署名稱。 允許小寫和下列特殊字元:[-+%_*!']。
選擇性參數
指出作業是否應該自動衍生原則密鑰,或使用目前的 Azure AD 工作階段。 如果驗證類型是登入,而且會提供資源主機名,除非需要,否則將會略過資源查閱。您可以使用 來設定預設值 az configure --defaults iothub-data-auth-type=<auth-type-value>
。
--labels 的替代輸入樣式(空格分隔的索引鍵=值組),並打算在未來取代它。 格式範例:key1=value1 key2=“this is my value”。
--metrics 的替代輸入樣式(空格分隔索引鍵=值組),並打算在未來取代它。 格式範例:metric1=“從 tags.location='US'” metric2=“select *” 的裝置選取 deviceId。
IoT 中樞 名稱或主機名。 如果未提供 --login,則為必要項。
要套用至目標部署的標籤對應。 使用下列格式:'{“key0”:“value0”,“key1”:“value1”}'。 建議使用 --custom-labels 而非 --labels。
分層部署可讓您在$edgeAgent、$edgeHub和用戶模組中定義所需的屬性,以在基底部署之上分層。 分層部署中指定的屬性將會與基底部署的屬性合併。 具有相同路徑的屬性將會根據部署優先順序覆寫。 此選項是 --no-validation 的別名。
此命令支援具有執行動作許可權的實體 連接字串。 使用來避免透過 「az login」 的工作階段登入。 如果提供實體 連接字串 和名稱,則 連接字串 優先使用。 如果未提供 --hub-name,則為必要專案。
IoT Edge 部署用戶計量定義。 提供檔案路徑或原始 JSON。 用戶計量的格式為 {“queries”:{...}} 或 {“metrics”:{“queries”:{...}}}。 建議使用 --custom-metric-queries 而非 --metrics。
停用邊緣部署建立的客戶端架構驗證。
在競爭規則(最高勝利)的情況下,部署的權數。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
邊緣部署套用的目標條件。 沒有目標條件的部署不會以任何裝置為目標。 使用下列格式:“tags.environment='test'”。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot edge deployment delete
刪除 IoT Edge 部署。
az iot edge deployment delete --deployment-id
[--auth-type {key, login}]
[--etag]
[--hub-name]
[--login]
[--resource-group]
必要參數
目標部署名稱。 允許小寫和下列特殊字元:[-+%_*!']。
選擇性參數
指出作業是否應該自動衍生原則密鑰,或使用目前的 Azure AD 工作階段。 如果驗證類型是登入,而且會提供資源主機名,除非需要,否則將會略過資源查閱。您可以使用 來設定預設值 az configure --defaults iothub-data-auth-type=<auth-type-value>
。
對應至資源最後狀態的 Etag 或實體標記。 如果未提供任何 etag,則會使用 『*』 值。
IoT 中樞 名稱或主機名。 如果未提供 --login,則為必要項。
此命令支援具有執行動作許可權的實體 連接字串。 使用來避免透過 「az login」 的工作階段登入。 如果提供實體 連接字串 和名稱,則 連接字串 優先。 如果未提供 --hub-name,則為必要專案。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot edge deployment list
列出 IoT 中樞 中的IoT Edge部署。
az iot edge deployment list [--auth-type {key, login}]
[--hub-name]
[--login]
[--resource-group]
[--top]
選擇性參數
指出作業是否應該自動衍生原則密鑰,或使用目前的 Azure AD 工作階段。 如果驗證類型是登入,而且會提供資源主機名,除非需要,否則將會略過資源查閱。您可以使用 來設定預設值 az configure --defaults iothub-data-auth-type=<auth-type-value>
。
IoT 中樞 名稱或主機名。 如果未提供 --login,則為必要項。
此命令支援具有執行動作許可權的實體 連接字串。 使用來避免透過 「az login」 的工作階段登入。 如果提供實體 連接字串 和名稱,則 連接字串 優先。 如果未提供 --hub-name,則為必要專案。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
要傳回的部署數目上限。 默認會傳回所有部署。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot edge deployment show
取得IoT Edge部署的詳細數據。
az iot edge deployment show --deployment-id
[--auth-type {key, login}]
[--hub-name]
[--login]
[--resource-group]
必要參數
目標部署名稱。 允許小寫和下列特殊字元:[-+%_*!']。
選擇性參數
指出作業是否應該自動衍生原則密鑰,或使用目前的 Azure AD 工作階段。 如果驗證類型是登入,而且會提供資源主機名,除非需要,否則將會略過資源查閱。您可以使用 來設定預設值 az configure --defaults iothub-data-auth-type=<auth-type-value>
。
IoT 中樞 名稱或主機名。 如果未提供 --login,則為必要項。
此命令支援具有執行動作許可權的實體 連接字串。 使用來避免透過 「az login」 的工作階段登入。 如果同時提供實體 連接字串 和名稱,則 連接字串 會優先使用。 如果未提供 --hub-name,則為必要專案。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot edge deployment show-metric
評估IoT Edge部署中定義的目標系統計量。
az iot edge deployment show-metric --deployment-id
--metric-id
[--auth-type {key, login}]
[--hub-name]
[--login]
[--metric-type {system, user}]
[--resource-group]
範例
評估 『appliedCount』 系統計量
az iot edge deployment show-metric -m appliedCount -d {deployment_name} -n {iothub_name} --mt system
評估 『myCustomMetric』 用戶計量
az iot edge deployment show-metric -m myCustomMetric -d {deployment_name} -n {iothub_name}
必要參數
目標部署名稱。 允許小寫和下列特殊字元:[-+%_*!']。
評估的目標計量。
選擇性參數
指出作業是否應該自動衍生原則密鑰,或使用目前的 Azure AD 工作階段。 如果驗證類型是登入,而且會提供資源主機名,除非需要,否則將會略過資源查閱。您可以使用 來設定預設值 az configure --defaults iothub-data-auth-type=<auth-type-value>
。
IoT 中樞 名稱或主機名。 如果未提供 --login,則為必要項。
此命令支援具有執行動作許可權的實體 連接字串。 使用來避免透過 「az login」 的工作階段登入。 如果提供實體 連接字串 和名稱,則 連接字串 優先。 如果未提供 --hub-name,則為必要專案。
指出應該使用哪一個計量集合來查閱計量。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot edge deployment update
更新IoT Edge部署的指定屬性。
使用 --set 後面接著屬性指派來更新部署。
注意:IoT Edge 部署內容是不可變的。 可更新的部署屬性為 'labels'、'metrics'、'priority' 和 'targetCondition'。
az iot edge deployment update --deployment-id
[--add]
[--auth-type {key, login}]
[--etag]
[--force-string]
[--hub-name]
[--login]
[--remove]
[--resource-group]
[--set]
範例
改變現有邊緣部署的標籤和目標條件
az iot edge deployment update -d {deployment_name} -n {iothub_name} --set labels='{"purpose":"dev", "owners":"IoTEngineering"}' targetCondition='tags.building=9'
必要參數
目標部署名稱。 允許小寫和下列特殊字元:[-+%_*!']。
選擇性參數
藉由指定路徑和索引鍵值組,將物件加入物件清單。 範例:--add property.listProperty <key=value, string or JSON string>
。
指出作業是否應該自動衍生原則密鑰,或使用目前的 Azure AD 工作階段。 如果驗證類型是登入,而且會提供資源主機名,除非需要,否則將會略過資源查閱。您可以使用 來設定預設值 az configure --defaults iothub-data-auth-type=<auth-type-value>
。
對應至資源最後狀態的 Etag 或實體標記。 如果未提供任何 etag,則會使用 『*』 值。
使用 'set' 或 'add' 時,請保留字串常值,而不是嘗試轉換成 JSON。
IoT 中樞 名稱或主機名。 如果未提供 --login,則為必要項。
此命令支援具有執行動作許可權的實體 連接字串。 使用來避免透過 「az login」 的工作階段登入。 如果提供實體 連接字串 和名稱,則 連接字串 優先。 如果未提供 --hub-name,則為必要專案。
從清單中移除屬性或專案。 範例: --remove property.list <indexToRemove>
或 --remove propertyToRemove
。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
指定要設定的屬性路徑和值,以更新物件。 範例:--set property1.property2=<value>
。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。