你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

az iot ops

注意

此参考是 Azure CLI(版本 2.46.0 或更高版本)的 azure-iot-ops 扩展的一部分。 该扩展将在首次运行 az iot ops 命令时自动安装。 详细了解扩展。

此命令组处于预览状态,正在开发中。 参考和支持级别: https://aka.ms/CLI_refstatus

管理 Azure IoT 操作。

Azure IoT 操作是一组高度一致的、但松散耦合的第一方 Kubernetes 服务,使你能够将本地资产中的数据聚合到工业级 MQTT 代理,添加边缘计算,并使用云中的各种服务设置双向数据流。

默认情况下,IoT 操作 CLI 命令将定期检查,以查看是否有新的扩展版本可用。 可以使用 .. 禁用 az config set iotops.check_latest=false此行为。

命令

名称 说明 类型 状态
az iot ops asset

管理资产。

扩展 预览
az iot ops asset create

创建资源。

扩展 预览
az iot ops asset data-point

管理资产中的数据点。

扩展 预览
az iot ops asset data-point add

向资产添加数据点。

扩展 预览
az iot ops asset data-point export

导出资产中的数据点。

扩展 预览
az iot ops asset data-point import

导入资产中的数据点。

扩展 预览
az iot ops asset data-point list

列出资产中的数据点。

扩展 预览
az iot ops asset data-point remove

删除资产中的数据点。

扩展 预览
az iot ops asset delete

删除资产。

扩展 预览
az iot ops asset endpoint

管理资产终结点配置文件。

扩展 预览
az iot ops asset endpoint certificate

管理资产终结点中拥有的证书。

扩展 预览
az iot ops asset endpoint certificate add

将拥有的证书添加到资产终结点。

扩展 预览
az iot ops asset endpoint certificate list

列出资产终结点中拥有的证书。

扩展 预览
az iot ops asset endpoint certificate remove

删除资产终结点中拥有的证书。

扩展 预览
az iot ops asset endpoint create

创建资产终结点。

扩展 预览
az iot ops asset endpoint delete

删除资产终结点。

扩展 预览
az iot ops asset endpoint query

查询资源图中的资产终结点。

扩展 预览
az iot ops asset endpoint show

显示资产终结点。

扩展 预览
az iot ops asset endpoint update

更新资产终结点。

扩展 预览
az iot ops asset event

管理资产中的事件。

扩展 预览
az iot ops asset event add

将事件添加到资产。

扩展 预览
az iot ops asset event export

导出资产中的事件。

扩展 预览
az iot ops asset event import

导入资产中的事件。

扩展 预览
az iot ops asset event list

列出资产中的事件。

扩展 预览
az iot ops asset event remove

删除资产中的事件。

扩展 预览
az iot ops asset query

查询资源图中的资产。

扩展 预览
az iot ops asset show

显示资产。

扩展 预览
az iot ops asset update

更新资产。

扩展 预览
az iot ops check

评估已部署 IoT 操作服务的群集端运行时运行状况。

扩展 预览
az iot ops init

启动、配置 IoT 操作并将其部署到已启用目标 arc 的群集。

扩展 预览
az iot ops mq

特定于 MQ 的工具。

扩展 预览
az iot ops mq get-password-hash

生成应用 PBKDF2-HMAC-SHA512 的通行短语的 PBKDF2 哈希。 从 os.urandom 使用 128 位盐。

扩展 预览
az iot ops mq stats

显示运行统计信息的 dmqtt。

扩展 预览
az iot ops support

IoT 操作支持命令空间。

扩展 预览
az iot ops support create-bundle

创建用于故障排除和诊断的标准支持捆绑包 zip 存档。

扩展 预览
az iot ops verify-host

针对 IoT 操作部署兼容性运行一组群集主机验证。

扩展 预览

az iot ops check

预览

命令组“iot ops”处于预览状态,正在开发中。 参考和支持级别: https://aka.ms/CLI_refstatus

评估已部署 IoT 操作服务的群集端运行时运行状况。

默认情况下,该命令显示所选服务的友好 摘要 视图。 可以通过 . 请求 --detail-level更多详细信息。

{支持的服务 API}

  • akri.sh/[v0]
  • dataprocessor.iotoperations.azure.com/[v1]
  • deviceregistry.microsoft.com/[v1beta1]
  • layerednetworkmgmt.iotoperations.azure.com/[v1beta1]
  • mq.iotoperations.azure.com/[v1beta1]
  • opcuabroker.iotoperations.azure.com/[v1beta1]。
az iot ops check [--as-object {false, true}]
                 [--context]
                 [--detail-level {0, 1, 2}]
                 [--ops-service {akri, dataprocessor, deviceregistry, lnm, mq, opcua}]
                 [--post {false, true}]
                 [--pre {false, true}]
                 [--resource-name]
                 [--resources {asset, assetendpointprofile, assettype, broker, brokerlistener, configuration, datalakeconnector, dataset, diagnosticservice, instance, kafkaconnector, lnm, mqttbridgeconnector, pipeline}]

示例

基本用法。 检查包含摘要输出的“mq”运行状况。

az iot ops check

评估“mq”,如前面的示例,但输出针对 CI 进行了优化。

az iot ops check --as-object

检查具有详细输出的“数据处理器”运行状况和配置。

az iot ops check --svc dataprocessor --detail-level 1

与前面的示例相同,只不过将结果限制为“管道”资源。

az iot ops check --svc dataprocessor --detail-level 1 --resources pipeline

使用资源名称将结果限制为“pipeline”资源与名称“pipeline”完全匹配。

az iot ops check --svc dataprocessor  --resources pipeline --resource-name pipeline

使用资源名称将结果限制为以“pipeline-name”开头的资源名称。

az iot ops check --svc dataprocessor --detail-level 1 --resource-name pipeline-name*

使用“?”glob 模式将结果限制为包含“pipeline”且以单个字符结尾的资源名称。

az iot ops check --svc dataprocessor --detail-level 1 --resource-name pipeline?

可选参数

--as-object

输出检查 CI 友好数据结构中的内容和验证。

接受的值: false, true
--context

用于 k8s 群集通信的 Kubeconfig 上下文名称。 如果未current_context提供上下文。

--detail-level

控制检查输出中显示的详细信息级别。 选择 0 作为摘要视图(最小输出)、1 作为详细视图(更全面的信息),或 2 作为详细视图(所有可用信息)。

接受的值: 0, 1, 2
默认值: 0
--ops-service --svc

将评估的 IoT 操作服务部署。

接受的值: akri, dataprocessor, deviceregistry, lnm, mq, opcua
默认值: mq
--post

运行部署后检查。

接受的值: false, true
--pre

运行先决条件检查以确定是否满足服务部署的最低要求。

接受的值: false, true
--resource-name --rn

仅针对特定资源名称运行检查。 此名称不区分大小写。 支持 Glob 模式“”和“?”。注意:只允许字母数字字符、连字符、“?”和“”。

--resources

仅在特定资源类型上运行检查。 使用空格分隔的值。

接受的值: asset, assetendpointprofile, assettype, broker, brokerlistener, configuration, datalakeconnector, dataset, diagnosticservice, instance, kafkaconnector, lnm, mqttbridgeconnector, pipeline
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --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

az iot ops init --cluster
                --resource-group
                [--ca-dir]
                [--ca-file]
                [--ca-key-file]
                [--ca-valid-days]
                [--cluster-namespace]
                [--context]
                [--csi-driver-ver]
                [--custom-location]
                [--disable-rotation {false, true}]
                [--disable-rsync-rules {false, true}]
                [--dp-instance]
                [--ensure-latest {false, true}]
                [--kubernetes-distro {k3s, k8s, microk8s}]
                [--kv-id]
                [--kv-spc-secret-name]
                [--location]
                [--mq-authn]
                [--mq-backend-part]
                [--mq-backend-rf]
                [--mq-backend-workers]
                [--mq-broker]
                [--mq-frontend-replicas]
                [--mq-frontend-server]
                [--mq-frontend-workers]
                [--mq-insecure {false, true}]
                [--mq-instance]
                [--mq-listener]
                [--mq-mem-profile {high, low, medium, tiny}]
                [--mq-mode {auto, distributed}]
                [--mq-service-type {clusterIp, loadBalancer, nodePort}]
                [--no-block {false, true}]
                [--no-deploy {false, true}]
                [--no-progress {false, true}]
                [--no-tls {false, true}]
                [--opcua-discovery-url]
                [--rotation-int]
                [--runtime-socket]
                [--show-template {false, true}]
                [--simulate-plc {false, true}]
                [--sp-app-id]
                [--sp-object-id]
                [--sp-secret]
                [--sp-secret-valid-days]
                [--target]

示例

完成设置的最小输入。 这包括密钥库配置、CSI 驱动程序部署、TLS 配置和 IoT 操作部署。

az iot ops init --cluster mycluster -g myresourcegroup --kv-id /subscriptions/2cb3a427-1abc-48d0-9d03-dd240819742a/resourceGroups/myresourcegroup/providers/Microsoft.KeyVault/vaults/mykeyvault

与前面的示例相同的设置,除了使用现有应用 ID 和标志来包括模拟 PLC 服务器作为部署的一部分。 包括应用 ID 将阻止“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

若要避免调用 MS Graph,例如对于登录到 az cli 服务主体权限受限或应重新使用现有服务主体的 CI 方案,请提供所有“--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

必需参数

--cluster

IoT 操作部署的目标群集名称。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

可选参数

--ca-dir

将放置生成的测试 CA 和私钥的本地目录。 如果未提供任何目录,则不会将文件写入磁盘。 如果未提供 --ca-file 和 --ca-key-file,则适用。

--ca-file

PEM 格式的所需 CA 文件的路径。

--ca-key-file

PEM 格式的 CA 私钥文件的路径。 !必填! 提供 --ca-file 时。

--ca-valid-days

用于控制 init 生成的 x509 CA 的持续时间(以天为单位)的选项。 如果未提供 --ca-file 和 --ca-key-file,则适用。

默认值: 365
--cluster-namespace

群集命名空间 IoT 操作基础结构将部署到该基础结构。 必须为小写。

默认值: azure-iot-operations
--context

用于 k8s 群集通信的 Kubeconfig 上下文名称。 如果未current_context提供上下文。

--csi-driver-ver

CSI 驱动程序版本。

默认值: 1.5.2
--custom-location

对应于 IoT 操作部署的自定义位置名称。 默认值为“{cluster_name}-ops-init-cl”。

--disable-rotation

用于禁用机密轮换的标志。

接受的值: false, true
--disable-rsync-rules

资源同步规则不会包含在部署中。

接受的值: false, true
--dp-instance

数据处理者实例名称。 默认值为“{cluster_name}-ops-init-processor”。

--ensure-latest

确保安装了最新的 IoT Ops CLI,如果升级可用,则会引发错误。

接受的值: false, true
--kubernetes-distro

用于 Akri 配置的 Kubernetes 发行版。 所选发行版表示未提供 --runtime-socket 值时的默认容器运行时套接字路径。

接受的值: k3s, k8s, microk8s
默认值: k8s
--kv-id

密钥库 ARM 资源 ID。提供此资源 ID 将使客户端能够设置所有必要的资源和群集端配置,以便为 IoT 操作启用 密钥库 CSI 驱动程序。

--kv-spc-secret-name

要用作默认 SPC 机密的密钥库机密名称。 如果该机密不存在,则会使用加密安全占位符值创建该机密。

默认值: azure-iot-operations
--location

将用于预配的 RPSaaS 抵押品的 ARM 位置。 如果未提供,将使用连接的群集位置。

--mq-authn

mq authN 名称。 默认值为“authn”。

--mq-backend-part

MQ 后端分区。

默认值: 2
--mq-backend-rf

MQ 后端冗余因素。

默认值: 2
--mq-backend-workers

MQ 后端辅助角色。

默认值: 2
--mq-broker

mq 中转站名称。 默认值为“broker”。

--mq-frontend-replicas

MQ 前端副本 (replica)。

默认值: 2
--mq-frontend-server

mq 前端服务器名称。 默认值为“mq-dmqtt-frontend”。

--mq-frontend-workers

MQ 前端辅助角色。

默认值: 2
--mq-insecure

启用 mq 部署后,将包含绑定到端口 1883 且没有 authN 或 authZ 的侦听器。 broker encryptInternalTraffic 设置将设置为 false。 仅适用于非生产工作负荷。

接受的值: false, true
--mq-instance

mq 实例名称。 默认值为“init-{hash}-mq-instance”。

--mq-listener

mq 侦听器名称。 默认值为“listener”。

--mq-mem-profile

MQ 内存配置文件。

接受的值: high, low, medium, tiny
默认值: medium
--mq-mode

MQ 操作模式。

接受的值: auto, distributed
默认值: distributed
--mq-service-type

MQ 服务类型。

接受的值: clusterIp, loadBalancer, nodePort
默认值: clusterIp
--no-block

IoT 操作部署启动后立即返回。

接受的值: false, true
--no-deploy

将跳过 IoT 操作部署工作流。

接受的值: false, true
--no-progress

禁用初始化进度栏。

接受的值: false, true
--no-tls

将跳过 TLS 配置工作流。

接受的值: false, true
--opcua-discovery-url

为 Akri 发现处理程序配置 OPC-UA 服务器终结点。 如果未提供并且设置了 --simulate-plc,则此值变为“opc.tcp://opcplc-000000”。{cluster_namespace}:50000'。

--rotation-int

轮询间隔。

默认值: 1h
--runtime-socket

容器运行时套接字的默认节点路径。 如果未提供(默认值),则套接字路径由 --kubernetes-distro 决定。

--show-template

设置时,将输出用于部署的模板。

接受的值: false, true
--simulate-plc

设置时标记,将 OPC-UA 代理安装程序配置为启动 PLC 服务器。

接受的值: false, true
--sp-app-id

服务主体应用 ID。如果提供,将用于 CSI 驱动程序设置。 否则,将创建应用注册。 如果登录的主体没有查询关系图的权限,则为必需

--sp-object-id

服务主体 (sp) 对象 ID。如果提供,将用于 CSI 驱动程序设置。 否则,将从应用 ID 查询对象 ID - 创建 sp(如果不存在)。 如果登录的主体没有查询关系图的权限,则为必需 。 用于 az ad sp show --id <app Id> --query id -o tsv 生成适当的对象 ID。或者,使用门户,可以导航到 Entra Id 租户中的企业应用程序。

--sp-secret

与所提供的服务主体应用 ID 对应的机密。如果提供,将用于 CSI 驱动程序设置。 否则将创建一个新机密。 如果登录的主体没有查询关系图的权限,则为必需

--sp-secret-valid-days

用于控制 init 生成的服务主体机密的持续时间(以天为单位)的选项。 如果未提供 --sp-secret,则适用。

默认值: 365
--target

操作业务流程协调程序的目标名称。 默认值为“{cluster_name}-ops-init-target”。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --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}]

可选参数

--no-progress

禁用工作的视觉表示形式。

接受的值: false, true
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。