az iot ops
注释
此参考是 Azure CLI(版本 2.62.0 或更高版本)的 azure-iot-ops 扩展的一部分。 该扩展将在首次运行 az iot ops 命令时自动安装。 了解更多关于扩展 的相关信息。
管理 Azure IoT 操作。
Azure IoT 操作是一组高度一致的、但松散耦合的第一方 Kubernetes 服务,使你能够将本地资产中的数据聚合到工业级 MQTT 代理,添加边缘计算,并使用云中的各种服务设置双向数据流。
默认情况下,IoT 操作 CLI 命令将定期检查是否有新的扩展版本可用。
可以使用 .. 禁用 az config set iotops.check_latest=false
此行为。
命令
az iot ops check
此命令处于预览阶段,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
评估已部署 IoT Operations 服务的群集端就绪性和运行时运行状况。
默认情况下,该命令显示所有服务的高级别用户友好 摘要 视图。
使用“--svc”选项指定对单个服务的检查,并通过参数配置详细程度 --detail-level
。
注意:资源类型(--resources)和名称(--resource-name)筛选只能与“--svc”参数一起使用。
{支持的服务 API}
- deviceregistry.microsoft.com/[v1]
- mqttbroker.iotoperations.azure.com/[v1]
- connectivity.iotoperations.azure.com/[v1]
有关群集要求的详细信息,请查看 https://aka.ms/iot-ops-cluster-requirements。
az iot ops check [--as-object {false, true}]
[--context]
[--detail-level {0, 1, 2}]
[--ops-service --svc {akri, broker, dataflow, deviceregistry, opcua}]
[--post {false, true}]
[--pre {false, true}]
[--resource-name --rn]
[--resources {asset, assetendpointprofile, broker, brokerauthentication, brokerauthorization, brokerlistener, dataflow, dataflowendpoint, dataflowprofile}]
示例
基本用法。 使用摘要输出检查总体 IoT 操作运行状况。
az iot ops check
检查包含详细输出的“broker”服务运行状况和配置。
az iot ops check --svc broker --detail-level 1
仅评估为 CI 优化的输出的“数据流”服务。
az iot ops check --svc dataflow --as-object
使用详细输出检查“deviceregistry”运行状况,但将结果限制为“资产”资源。
az iot ops check --svc deviceregistry --detail-level 2 --resources asset
使用资源名称将结果限制为带有“my-asset-”名称前缀的“资产”资源
az iot ops check --svc deviceregistry --resources asset --resource-name 'my-asset-*'
可选参数
输出检查 CI 友好数据结构中的内容和验证。
用于 k8s 群集通信的 Kubeconfig 上下文名称。 如果未current_context提供上下文。
控制检查输出中显示的详细信息级别。 选择 0 作为摘要视图(最小输出)、1 作为详细视图(更全面的信息),或 2 作为详细视图(所有可用信息)。
将评估的 IoT 操作服务部署。
运行部署后检查。
运行先决条件检查以确定是否满足服务部署的最低要求。
仅运行检查特定资源名称。 名称不区分大小写。 支持 Glob 模式“”和“?”。注意:只允许字母数字字符、连字符、“?”和“”。
仅对特定资源类型运行检查。 使用空格分隔的值。
全局参数
提高日志记录详细程度以显示所有调试日志。
显示此帮助消息并退出。
仅显示错误,禁止显示警告。
输出格式。
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops clone
此命令处于预览阶段,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
克隆实例。
克隆分析实例,然后通过 ARM 模板以基础结构即代码方式重现该实例。
克隆的输出可以直接应用于另一个连接的群集(称为复制),并/或保存在本地以在另一次使用,并可能进行修改。
克隆定义是通用 ARM 模板,可以通过现有工具进行部署。 有关详细信息,请参阅 https://aka.ms/aio-clone。
克隆与以下实例版本范围兼容: 1.0.34>=,<1.2.0
az iot ops clone --name
--resource-group
[--base-uri]
[--force {false, true}]
[--mode {linked, nested}]
[--no-progress {false, true}]
[--param]
[--self-hosted-issuer {false, true}]
[--summary {detailed, simple}]
[--to-cluster-id]
[--to-dir]
[--yes {false, true}]
示例
将实例克隆到所需的已连接群集。
az iot ops clone -n myinstance -g myresourcegroup --to-cluster-id $CLUSTER_RESOURCE_ID
使用自定义复制将实例克隆到所需的连接群集。
az iot ops clone -n myinstance -g myresourcegroup --to-cluster-id $CLUSTER_RESOURCE_ID --param ___location=eastus
将实例克隆到所需的连接群集,但拆分并串行应用与资产相关的子部署。
az iot ops clone -n myinstance -g myresourcegroup --to-cluster-id $CLUSTER_RESOURCE_ID --mode linked
将实例克隆到本地目录。
az iot ops clone -n myinstance -g myresourcegroup --to-dir .
将实例克隆到本地目录,但拆分并链接到与资产相关的子部署。
az iot ops clone -n myinstance -g myresourcegroup --to-dir /my/content --mode linked
隐藏进度显示并跳过提示。
az iot ops clone -n myinstance -g myresourcegroup --to-dir . --no-progress -y
必需参数
要克隆的模型实例。
要克隆的模型实例所在的资源组。
可选参数
用于模板链接的基本 URI。 如果未提供相对路径策略,则使用。 当 --mode 设置为“linked”时相关。 示例:https://raw.githubusercontent.com/myorg/myproject/main/myclones/
。
强制执行操作。
使用模式“嵌套”时,子部署将在根部署中自包含。 使用模式“linked”时,资产相关的子部署将拆分并存储为由根部署链接的单独文件。
禁用工作的视觉表示形式。
将克隆复制到连接的群集时的参数替代。 如果使用模型实例中省略的默认值。 格式是空格分隔的键=值对,其中键表示克隆定义参数。 可以设置以下键:instanceName、clusterName、clusterNamespace、customLocationName、opsExtensionName、schemaRegistryId、resourceSlug、___location、applyRoleAssignments。 可以使用一次或多次。
使用自承载 oidc 颁发者进行联合身份验证。 仅当用户分配的托管标识与模型实例关联时适用。
部署摘要选项。
克隆将应用到的连接群集的资源 ID。
实例克隆定义的本地目录将存储在该目录中。
在没有提示的情况下确认 [y]es。 适用于 CI 和自动化方案。
全局参数
提高日志记录详细程度以显示所有调试日志。
显示此帮助消息并退出。
仅显示错误,禁止显示警告。
输出格式。
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops create
创建 IoT 操作实例。
运行此命令之前,需要执行 init。
该命令的结果将 IoT 操作实例与一组配置为一致函数的默认资源进行 net。
若要启用边缘到云资源冻结,请使用 az iot ops rsync enable
创建命令后实例。
az iot ops create --cluster
--name
--resource-group
--sr-resource-id
[--add-insecure-listener {false, true}]
[--bp --broker-backend-part]
[--br --broker-backend-rf]
[--broker-backend-workers --bw]
[--broker-config-file]
[--broker-frontend-replicas --fr]
[--broker-frontend-workers --fw]
[--broker-mem-profile --mp {High, Low, Medium, Tiny}]
[--cluster-namespace]
[--custom-___location]
[--description]
[--df-profile-instances]
[--enable-rsync {false, true}]
[--feature]
[--kubernetes-distro {K3s, K8s, MicroK8s}]
[--___location]
[--no-progress {false, true}]
[--ops-config]
[--runtime-socket]
[--tags]
[--trust-settings]
[--yes {false, true}]
示例
使用最小输入创建目标实例。
az iot ops create --cluster mycluster -g myresourcegroup --name myinstance --sr-resource-id $SCHEMA_REGISTRY_RESOURCE_ID
以下示例将自定义添加到默认中转站实例资源以及实例说明和标记。
az iot ops create --cluster mycluster -g myresourcegroup --name myinstance --sr-resource-id $SCHEMA_REGISTRY_RESOURCE_ID --broker-mem-profile High --broker-backend-workers 4 --description 'Contoso Factory' --tags tier=testX1
此示例演示如何部署为服务类型负载均衡器端口 1883 配置的附加不安全(无身份验证或 authz)中转站侦听器。 可用于测试和/或演示。 请勿在生产中使用不安全选项。
az iot ops create --cluster mycluster -g myresourcegroup --name myinstance --sr-resource-id $SCHEMA_REGISTRY_RESOURCE_ID --add-insecure-listener
此窗体演示如何为实例部署启用资源同步。 若要在目标资源组上启用资源同步角色分配写入,必须执行。
az iot ops create --cluster mycluster -g myresourcegroup --name myinstance --sr-resource-id $SCHEMA_REGISTRY_RESOURCE_ID --enable-rsync
此示例突出显示用户提供的证书管理器配置的信任设置。请注意,群集必须已使用“--user-trust”进行初始化,并且必须存在用户证书管理器部署。
az iot ops create --cluster mycluster -g myresourcegroup --name myinstance --sr-resource-id $SCHEMA_REGISTRY_RESOURCE_ID --trust-settings configMapName=example-bundle configMapKey=trust-bundle.pem issuerKind=ClusterIssuer issuerName=trust-manager-selfsigned-issuer
若要配置组件功能(如预览设置),请使用 --feature 选项。
az iot ops create --cluster mycluster -g myresourcegroup --name myinstance --sr-resource-id $SCHEMA_REGISTRY_RESOURCE_ID --feature connectors.settings.preview=Enabled
必需参数
IoT 操作部署的目标群集名称。
IoT 操作实例名称。
资源组的名称。 可以使用 az configure --defaults group=<name>
配置默认组。
要用于 IoT 操作的架构注册表资源 ID。
可选参数
启用 mqtt 中转站部署时,将包含服务类型 LoadBalancer 的侦听器,该侦听器绑定到端口 1883 且没有身份验证或身份验证Z。 仅适用于非生产工作负荷。
Mqtt 中转站后端分区。 最小值:1,最大值:16。
Mqtt 中转站后端冗余因素。 最小值:1,最大值:5。
Mqtt 中转站后端辅助角色。 最小值:1,最大值:16。
包含自定义中转站配置属性的 json 文件的路径。 文件配置内容用于各个中转站配置参数。 适用于高级方案。 预期格式在 https://aka.ms/aziotops-broker-config.
Mqtt 中转站前端副本。 最小值:1,最大值:16。
Mqtt 中转站前端辅助角色。 最小值:1,最大值:16。
Mqtt Broker 内存配置文件。
群集命名空间 IoT 操作基础结构将部署到该基础结构。 必须为小写。
对应于 IoT 操作部署的自定义位置名称。 默认值采用“___location-{hash(5)}”格式。
IoT 操作实例的说明。
与默认数据流配置文件关联的实例计数。
选项“--enable-rsync”已弃用,将在将来的版本中删除。 请改用“az iot ops rsync enable”。
资源同步规则将包含在 IoT 操作部署中。
实例功能配置。可以配置组件和/或模式的设置。 组件模式语法是 {component}.mode={mode}
已知模式值所在的位置: Stable
, Preview
以及 Disabled
。 组件设置语法是 {component}.settings.{setting}={value}
已知设置值 Enabled
或 Disabled
。 此选项可以一次或多次使用。
用于 Akri 配置的 Kubernetes 发行版。 所选发行版表示未提供 --runtime-socket 值时的默认容器运行时套接字路径。
将用于预配资源抵押的区域。 如果未提供,将使用连接的群集位置。
禁用工作的视觉表示形式。
IotOperations arc 扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
容器运行时套接字的默认节点路径。 如果未提供(默认值),则套接字路径由 --kubernetes-distro 决定。
空格分隔标记:key[=value] [key[=value] ...]。使用“”清除现有标记。
用户提供的信任捆绑包的设置。 用于组件 TLS。 格式是空格分隔的键=值对。 以下密钥是必需的:issuerName
、、issuerKind
configMapName
configMapKey
。 如果未使用,则配置系统提供的自签名信任捆绑包。
在没有提示的情况下确认 [y]es。 适用于 CI 和自动化方案。
全局参数
提高日志记录详细程度以显示所有调试日志。
显示此帮助消息并退出。
仅显示错误,禁止显示警告。
输出格式。
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops delete
从群集中删除 IoT 操作。
必须提供实例或群集的名称。
该操作使用 Azure Resource Graph 来确定相关资源。 资源图最终保持一致不能保证在执行时处于同步状态。
az iot ops delete --resource-group
[--cluster]
[--force {false, true}]
[--include-deps {false, true}]
[--name]
[--no-progress {false, true}]
[--yes {false, true}]
示例
完成删除的最小输入。
az iot ops delete -n myinstance -g myresourcegroup
跳过确认提示并继续删除过程。 适用于 CI 方案。
az iot ops delete -n myinstance -g myresourcegroup -y
强制删除,而不考虑警告。 可能会导致错误。
az iot ops delete -n myinstance -g myresourcegroup --force
使用群集名称而不是实例进行查找。
az iot ops delete --cluster mycluster -g myresourcegroup
init 的反向应用。
az iot ops delete -n myinstance -g myresourcegroup --include-deps
必需参数
资源组的名称。 可以使用 az configure --defaults group=<name>
配置默认组。
可选参数
用于删除 IoT 操作的目标群集名称。
强制执行操作。
指示命令应删除 IoT 操作依赖项。 此选项旨在反向应用 init。
IoT 操作实例名称。
禁用工作的视觉表示形式。
在没有提示的情况下确认 [y]es。 适用于 CI 和自动化方案。
全局参数
提高日志记录详细程度以显示所有调试日志。
显示此帮助消息并退出。
仅显示错误,禁止显示警告。
输出格式。
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops init
为 IoT 操作部署启动已启用 Arc 的群集。
部署 IoT 操作需要已启用 Arc 的群集。 有关详细信息 https://aka.ms/aziotops-arcconnect,请参阅以下资源。
init 操作将在安装和配置 IoT 操作部署所需的边缘服务基础层时执行工作。
安装基础层后, az iot ops create
应使用命令来部署实例。
注意:--*-config 选项允许替代默认配置设置。
容器存储的默认配置设置为:edgeStorageConfiguration.create=true feature.diskStorageClass=default,local-path
如果使用 --enable-fault-tolerance,则以下配置增量适用于容器存储:feature.diskStorageClass=acstor-arccontainerstorage-storage-pool acstorConfiguration.create=true acstorConfiguration.properties.diskMountPoint=/mnt
机密存储的默认配置设置为:rotationPollIntervalInSeconds=120 validatingAdmissionPolicies.applyPolicies=false。
az iot ops init --cluster
--resource-group
[--acs-config]
[--check-cluster {false, true}]
[--context]
[--enable-fault-tolerance {false, true}]
[--ensure-latest {false, true}]
[--no-progress {false, true}]
[--ssc-config]
[--user-trust --ut {false, true}]
示例
使用最小输入。 此窗体将部署 IoT 操作基础层。
az iot ops init --cluster mycluster -g myresourcegroup
类似于前面的示例,但启用了 Arc 容器存储容错(至少需要 3 个节点)。
az iot ops init --cluster mycluster -g myresourcegroup --enable-fault-tolerance
此示例突出显示了为自定义证书管理器配置启用用户信任设置。这将跳过系统证书管理器和信任管理器的部署。
az iot ops init --cluster mycluster -g myresourcegroup --user-trust
为 Arc 容器存储提供自定义部署时配置。
az iot ops init --cluster mycluster -g myresourcegroup --enable-fault-tolerance --acs-config acstorConfiguration.properties.diskMountPoint=/mnt
为 Arc 机密存储提供自定义部署时配置。
az iot ops init --cluster mycluster -g myresourcegroup --ssc-config rotationPollIntervalInSeconds=60
在继续 init 之前,请检查群集是否符合必要的先决条件配置。 此选项需要有效的 kubeconfig。
az iot ops init --cluster mycluster -g myresourcegroup --check-cluster
必需参数
IoT 操作部署的目标群集名称。
资源组的名称。 可以使用 az configure --defaults group=<name>
配置默认组。
可选参数
ContainerStorage arc 扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
在启动之前强制检查最低群集要求。
用于 k8s 群集通信的 Kubeconfig 上下文名称。 如果未current_context提供上下文。
为 Azure Arc 容器存储启用容错。 至少需要 3 个群集节点。
确保正在使用最新的 IoT Ops CLI,如果升级可用,则会引发错误。
禁用工作的视觉表示形式。
SecretStore arc 扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
跳过系统证书管理器和信任管理器的部署,以支持用户提供的配置。
全局参数
提高日志记录详细程度以显示所有调试日志。
显示此帮助消息并退出。
仅显示错误,禁止显示警告。
输出格式。
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops list
列出 IoT 操作实例。
使用具有所需 JMESPath 语法的 --query 查询结果。
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/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops show
显示 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/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops update
更新 IoT 操作实例。
目前,可以更新实例标记、说明和功能。
az iot ops update --name
--resource-group
[--description]
[--feature]
[--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"
更新实例,为连接器启用预览配置。
az iot ops update --name myinstance -g myresourcegroup --feature connectors.settings.preview=Enabled
必需参数
IoT 操作实例名称。
资源组的名称。 可以使用 az configure --defaults group=<name>
配置默认组。
可选参数
IoT 操作实例的说明。
实例功能配置。可以配置组件和/或模式的设置。 组件模式语法是 {component}.mode={mode}
已知模式值所在的位置: Stable
, Preview
以及 Disabled
。 组件设置语法是 {component}.settings.{setting}={value}
已知设置值 Enabled
或 Disabled
。 此选项可以一次或多次使用。
空格分隔标记:key[=value] [key[=value] ...]。使用“”清除现有标记。
全局参数
提高日志记录详细程度以显示所有调试日志。
显示此帮助消息并退出。
仅显示错误,禁止显示警告。
输出格式。
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
az iot ops upgrade
升级 IoT 操作实例。
默认情况下,如果没有选项,该命令将评估构成 IoT 操作的已部署群集端服务的版本,并将其与将使用 az iot ops init
和 az iot ops create
执行的内置部署进行比较。
az iot ops upgrade --name
--resource-group
[--acs-config]
[--no-progress {false, true}]
[--ops-config]
[--osm-config]
[--plat-config]
[--ssc-config]
[--yes {false, true}]
示例
使用最少的输入升级实例。
az iot ops upgrade --name myinstance -g myresourcegroup
跳过实例升级的确认提示。 适用于 CI 方案。
az iot ops upgrade --name myinstance -g myresourcegroup -y
设置应用的扩展配置设置应在升级期间。 若要删除设置,请提供没有值的键。
az iot ops upgrade --name myinstance -g myresourcegroup --ops-config key1=value1 deletekey
必需参数
IoT 操作实例名称。
资源组的名称。 可以使用 az configure --defaults group=<name>
配置默认组。
可选参数
ContainerStorage arc 扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
禁用工作的视觉表示形式。
IotOperations arc 扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
OpenServiceMesh arc 扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
平台弧线扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
SecretStore arc 扩展自定义配置。格式是空格分隔的键=值对或仅键。 此选项可以一次或多次使用。
在没有提示的情况下确认 [y]es。 适用于 CI 和自动化方案。
全局参数
提高日志记录详细程度以显示所有调试日志。
显示此帮助消息并退出。
仅显示错误,禁止显示警告。
输出格式。
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID
配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。