az iot ops
注意
此參考是 Azure CLI 的 azure-iot-ops 擴充功能的一部分(2.53.0 版或更高版本)。 擴充功能會在您第一次執行 az iot ops 命令時自動安裝。 深入了解擴充功能。
此命令群組處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
管理 Azure IoT 作業。
Azure IoT 作業是一組高度對齊但鬆散結合的第一方 Kubernetes 服務,可讓您將數據從內部部署資產匯總成產業級 MQTT 訊息代理程式、新增邊緣計算,以及設定雲端中各種服務的雙向數據流。
根據預設,IoT Operations CLI 命令會定期檢查是否有新的擴充功能版本可用。
您可以使用 停用 az config set iotops.check_latest=false
此行為。
命令
az iot ops check
命令群組 'iot ops' 處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
評估已部署IoT Operations服務的叢集端運行時間健康情況。
命令預設會顯示所選服務的易記 摘要 檢視。
您可以透過 --detail-level
要求更多詳細數據。
{支持的服務 API}
- akri.sh/[v0]
- deviceregistry.microsoft.com/[v1beta1]
- mqttbroker.iotoperations.azure.com/[v1beta1]
- opcuabroker.iotoperations.azure.com/[v1beta1]
如需叢集需求的詳細資訊,請參閱 https://aka.ms/iot-ops-cluster-requirements。
az iot ops check [--as-object {false, true}]
[--context]
[--detail-level {0, 1, 2}]
[--ops-service {akri, broker, deviceregistry, opcua}]
[--post {false, true}]
[--pre {false, true}]
[--resource-name]
[--resources {asset, assetendpointprofile, assettype, broker, brokerlistener, configuration, instance}]
範例
基本用法。 使用摘要輸出檢查 『broker』 健康情況。
az iot ops check
評估 『broker』,例如先前的範例,不過輸出已針對 CI 優化。
az iot ops check --as-object
檢查具有詳細輸出的 『opcua』 健康情況和組態。
az iot ops check --svc opcua --detail-level 1
檢查 「deviceregistry」健康情況,但會將結果限制為「資產」資源。
az iot ops check --svc deviceregistry --detail-level 1 --resources asset
使用資源名稱將結果限製為具有 'my-asset-' 名稱前置詞的 'asset' 資源
az iot ops check --svc deviceregistry --resources asset --resource-name 'my-asset-*'
選擇性參數
輸出會檢查 CI 易記數據結構中的內容和驗證。
用於 k8s 叢集通訊的 Kubeconfig 內容名稱。 如果未提供任何內容,則會使用current_context。
控制檢查輸出中顯示的詳細數據層級。 選擇 0 作為摘要檢視(最小輸出)、1 以取得詳細檢視(更完整的資訊),或 2 作為詳細資訊檢視(所有可用資訊)。
將會評估的IoT Operations服務部署。
執行部署后檢查。
執行必要條件檢查,以判斷是否已滿足服務部署的最低需求。
只執行特定資源名稱的檢查。 名稱不區分大小寫。 支援 Glob 模式 '' 和 '?'。注意:只允許英數位元、連字元、'?' 和 '' 。
只對特定資源類型執行檢查。 使用空格分隔值。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot ops delete
命令群組 'iot ops' 處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
從叢集刪除IoT作業。
此作業會使用 Azure Resource Graph 來判斷相互關聯的資源。 資源圖形最終一致並不保證執行時同步處理的狀態。
az iot ops delete --cluster
--resource-group
[--force {false, true}]
[--no-progress {false, true}]
[--yes {false, true}]
範例
完整刪除的最低輸入。
az iot ops delete --cluster mycluster -g myresourcegroup
略過確認提示並繼續刪除程式。 適用於 CI 案例。
az iot ops delete --cluster mycluster -g myresourcegroup -y
不論警告為何,強制刪除。 可能會導致錯誤。
az iot ops delete --cluster mycluster -g myresourcegroup --force
必要參數
IoT 作業刪除的目標叢集名稱。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
選擇性參數
強制執行作業。
停用工作的視覺表示。
在沒有提示的情況下確認 [y]es。 適用於 CI 和自動化案例。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot ops init
命令群組 'iot ops' 處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
啟動程式、設定IoT作業並將其部署至已啟用Arc的目標叢集。
如需其他資源,包括如何啟用Arc的叢集,請參閱 https://learn.microsoft.com/en-us/azure/iot-operations/deploy-iot-ops/howto-prepare-cluster
IoT 作業相依於 金鑰保存庫 CSI 驅動程式秘密同步處理的服務主體(SP)。
根據預設,init 會透過 Microsoft Graph 建立和設定適當的應用程式註冊,然後將它套用至叢集。
您可以藉由預先建立應用程式註冊來縮短這項工作,然後提供 --sp-app-id、-sp-object-id 和 --sp-secret 的值。 藉由提供SP欄位,將不會透過 Microsoft Graph 作業執行任何其他工作。
當登入的主體具有限制的 Entra Id 許可權時,預先建立應用程式註冊會很有用。 例如,在 CI/自動化案例中,或組織區隔用戶責任。
az iot ops init --cluster
--resource-group
[--add-insecure-listener {false, true}]
[--bfr]
[--bfw]
[--broker]
[--broker-authn]
[--broker-backend-part]
[--broker-backend-rf]
[--broker-backend-workers]
[--broker-config-file]
[--broker-listener]
[--broker-mem-profile {High, Low, Medium, Tiny}]
[--broker-service-type {ClusterIp, LoadBalancer, NodePort}]
[--ca-dir]
[--ca-file]
[--ca-key-file]
[--ca-valid-days]
[--cluster-namespace]
[--context]
[--csi-config]
[--csi-ver]
[--custom-location]
[--desc]
[--df-profile-instances]
[--disable-rotation {false, true}]
[--disable-rsync-rules {false, true}]
[--ensure-latest {false, true}]
[--kubernetes-distro {k3s, k8s, microk8s}]
[--kv-id]
[--kv-spc-secret-name]
[--location]
[--name]
[--no-block {false, true}]
[--no-deploy {false, true}]
[--no-progress {false, true}]
[--no-tls {false, true}]
[--rotation-int]
[--runtime-socket]
[--show-template {false, true}]
[--simulate-plc {false, true}]
[--sp-app-id]
[--sp-object-id]
[--sp-secret]
[--sp-secret-valid-days]
範例
完整設定的最低輸入。 這包括 金鑰保存庫 組態、CSI 驅動程式部署、IoT 作業的 TLS 設定和部署。
az iot ops init --cluster mycluster -g myresourcegroup --kv-id /subscriptions/2cb3a427-1abc-48d0-9d03-dd240819742a/resourceGroups/myresourcegroup/providers/Microsoft.KeyVault/vaults/mykeyvault
與先前範例相同的設定,除了使用現有的應用程式識別碼和旗標來包含仿真的 PLC 伺服器作為部署的一部分。 包含應用程式識別碼可防止 init 建立應用程式註冊。
az iot ops init --cluster mycluster -g myresourcegroup --kv-id $KEYVAULT_ID --sp-app-id a14e216b-6802-4e9c-a6ac-844f9ffd230d --simulate-plc
若要略過部署並只專注於 金鑰保存庫 CSI 驅動程式和 TLS 設定工作流程,請簡單傳入 --no-deploy。 當想要從入口網站等不同工具進行部署時,這非常有用。
az iot ops init --cluster mycluster -g myresourcegroup --kv-id $KEYVAULT_ID --sp-app-id a14e216b-6802-4e9c-a6ac-844f9ffd230d --no-deploy
若要只在已預先準備的叢集上部署IoT作業,只需省略 --kv-id並包含 --no-tls。
az iot ops init --cluster mycluster -g myresourcegroup --no-tls
使用 --no-block 在部署進行時執行其他工作,而等候部署完成,再開始其他工作。
az iot ops init --cluster mycluster -g myresourcegroup --kv-id $KEYVAULT_ID --sp-app-id a14e216b-6802-4e9c-a6ac-844f9ffd230d --no-block
此範例示範提供 --sp-app-id、--sp-object-id 和 --sp-secret 的值。 這些值應該反映將用於 金鑰保存庫 CSI 驅動程式秘密同步處理所需的服務主體。 如需其他詳細數據,請檢閱命令摘要。
az iot ops init --cluster mycluster -g myresourcegroup --kv-id $KEYVAULT_ID --sp-app-id a14e216b-6802-4e9c-a6ac-844f9ffd230d --sp-object-id 224a7a3f-c63d-4923-8950-c4a85f0d2f29 --sp-secret $SP_SECRET
若要自定義 金鑰保存庫 CSI 驅動程式的運行時間組態,可以使用 --csi-config。 例如,設定telegraf容器相依性的資源限制。
az iot ops init --cluster mycluster -g myresourcegroup --kv-id $KEYVAULT_ID --sp-app-id a14e216b-6802-4e9c-a6ac-844f9ffd230d --csi-config telegraf.resources.limits.memory=500Mi telegraf.resources.limits.cpu=100m
必要參數
IoT 作業部署的目標叢集名稱。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
選擇性參數
啟用時,mqtt 訊息代理程式部署將會包含系結至埠 1883 且不含 authN 或 authZ 的接聽程式。僅適用於非生產工作負載。
Mqtt 訊息代理程式前端復本。
Mqtt 訊息代理程式前端背景工作角色。
mqtt 訊息代理程式名稱。
mqtt Broker authN 名稱。
Mqtt 訊息代理程式後端分割區。
Mqtt 訊息代理程式後端備援因素。
Mqtt 訊息代理程式後端背景工作角色。
具有自訂訊息代理程式組態屬性的 json 檔案路徑。 適用於進階案例。 預期的格式描述於 https://aka.ms/aziotops-broker-config。
mqtt Broker 接聽程式名稱。
Mqtt Broker 記憶體配置檔。
Mqtt Broker 服務類型。
產生的測試 CA 和私鑰會放在本機目錄。 如果未提供任何目錄,則不會將檔案寫入磁碟。 當未提供 --ca-file 和 --ca-key-file 時適用。
PEM 格式所需 CA 檔案的路徑。
PEM 格式的 CA 私鑰檔案路徑。 !必填! 提供 --ca-file 時。
以 init 產生的 x509 CA 天數控制持續時間的選項。 如果未提供 --ca-file 和 --ca-key-file,則適用。
叢集命名空間 IoT 作業基礎結構將會部署至 。 必須是小寫。
用於 k8s 叢集通訊的 Kubeconfig 內容名稱。 如果未提供任何內容,則會使用current_context。
CSI 驅動程式擴充功能自定義組態。 格式是空格分隔的索引鍵=值組。 --csi-config 可以使用一或多次。
CSI 驅動程式擴充功能版本。
對應至IoT作業部署的自訂位置名稱。 默認值的格式為 『{cluster_name}-{token}-ops-init-cl』。
IoT 作業實例的描述。
與預設數據流配置檔相關聯的實例計數。
停用秘密輪替的旗標。
IoT 作業部署中不會包含資源同步處理規則。
請確定正在使用最新的 IoT Ops CLI,並在有可用的升級時引發錯誤。
用於 Akri 設定的 Kubernetes 散發版本。 選取的散發版本表示未提供 --runtime-socket 值時的預設容器運行時間套接字路徑。
金鑰保存庫 ARM 資源識別碼。提供此資源識別碼可讓用戶端設定所有必要的資源和叢集端設定,以啟用適用於IoT作業的 金鑰保存庫 CSI 驅動程式。
要作為預設 SPC 秘密的 金鑰保存庫 秘密名稱。 如果密碼不存在,則會使用密碼編譯安全佔位元元值來建立。
將用於布建 RPSaaS 抵押品的 ARM 位置。 如果未提供,則會使用聯機的叢集位置。
IoT 作業實例名稱。 默認值的格式為 『{cluster_name}-ops-instance』。
在IoT作業部署啟動之後立即傳回。
將會略過IoT作業部署工作流程。
停用工作的視覺表示。
將會略過 TLS 設定工作流程。
輪替輪詢間隔。
容器運行時間套接字的預設節點路徑。 如果未提供 (預設值),套接字路徑是由 --kubernetes-distro 所決定。
設定時會輸出用於部署的範本。
設定時會設定 OPC-UA 訊息代理程式安裝程式,以啟動 PLC 伺服器。
服務主體應用程式識別碼。如果提供 ,將會用於 CSI 驅動程式設定。 否則將會建立應用程式註冊。 如果登入的主體沒有查詢圖形的許可權,則為必要 項。
服務主體 (sp) 對象識別碼。如果提供 ,將會用於 CSI 驅動程式設定。 否則,如果應用程式識別碼不存在,則會從應用程式標識碼查詢對象標識碼 - 建立sp。 如果登入的主體沒有查詢圖形的許可權,則為必要 項。 使用 az ad sp show --id <app Id> --query id -o tsv
來產生適當的物件識別碼。或者,使用入口網站,您可以流覽至 Entra Id 租使用者中的企業應用程式。
對應至所提供服務主體應用程式標識碼的秘密。如果提供 ,將會用於 CSI 驅動程式設定。 否則將會建立新的秘密。 如果登入的主體沒有查詢圖形的許可權,則為必要 項。
控制 init 所產生服務主體秘密天數的持續時間選項。 如果未提供 --sp-secret,則適用。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot ops list
命令群組 'iot ops' 處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
列出IoT作業實例。
使用 --query 搭配所需的 JMESPath 語法來查詢結果。
az iot ops list [--resource-group]
範例
列出訂用帳戶中的所有實例。
az iot ops list
列出特定資源群組的所有實例。
az iot ops list -g myresourcegroup
列出訂用帳戶中具有特定標籤的實例。
az iot ops list -g myresourcegroup --query "[?tags.env == 'prod']"
選擇性參數
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot ops show
命令群組 'iot ops' 處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
顯示IoT作業實例。
選擇性地,命令可以輸出關聯資源的樹狀結構,代表對備份叢集的IoT作業部署。
az iot ops show --name
--resource-group
[--tree {false, true}]
範例
顯示實例的基本用法。
az iot ops show --name myinstance -g myresourcegroup
輸出代表IoT作業部署之相關聯資源的樹狀結構。
az iot ops show --name myinstance -g myresourcegroup --tree
必要參數
IoT 作業實例名稱。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
選擇性參數
使用 將IoT作業部署可視化,以針對備份叢集。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot ops update
命令群組 'iot ops' 處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
更新IoT作業實例。
目前可以更新實例標記和描述。
az iot ops update --name
--resource-group
[--desc]
[--tags]
範例
更新實例標記。 這相當於取代。
az iot ops update --name myinstance -g myresourcegroup --tags a=b c=d
拿掉實例標籤。
az iot ops update --name myinstance -g myresourcegroup --tags ""
更新實例描述。
az iot ops update --name myinstance -g myresourcegroup --desc "Fabrikam Widget Factory B42"
必要參數
IoT 作業實例名稱。
資源群組的名稱。 您可以使用 az configure --defaults group=<name>
來設定預設群組。
選擇性參數
IoT 作業實例的描述。
實例標籤。 索引鍵/值組中的屬性包,格式如下:a=b c=d。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。
az iot ops verify-host
命令群組 'iot ops' 處於預覽狀態,且正在開發中。 參考和支援層級: https://aka.ms/CLI_refstatus
針對IoT作業部署相容性執行一組叢集主機驗證。
要直接在目標叢集主機上執行。 命令可能會提示套用一組特殊許可權動作,例如安裝相依性。 在此情況下,CLI 必須以較高的許可權執行。 例如 sudo AZURE_EXTENSION_DIR=~/.azure/cliextensions az iot ops verify-host
。
az iot ops verify-host [--no-progress {false, true}]
選擇性參數
停用工作的視覺表示。
全域參數
增加記錄詳細資訊,以顯示所有偵錯記錄。
顯示此說明訊息並結束。
只顯示錯誤,隱藏警告。
輸出格式。
JMESPath 查詢字串。 如需詳細資訊和範例,請參閱 http://jmespath.org/。
訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID
設定預設訂用帳戶。
增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。