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

快速入门:配置群集

在本快速入门中,你将在 Azure IoT 操作群集中配置以下资源:

  • 资产终结点 - 定义与模拟面包店烤箱的模拟 OPC PLC 服务器的连接。
  • 资产 - 表示烤箱并定义烤箱公开的数据点。
  • 数据流 - 用于处理模拟烤箱的消息。

资产是表示设备、计算机、系统或流程的物理设备或逻辑实体。 例如,物理资产可以是泵、电机、储罐或生产线。 定义的逻辑资产可以具有属性、流遥测或生成事件。

OPC UA 服务器是与资产通信的软件应用程序。 OPC UA 标记是 OPC UA 服务器公开的数据点。 OPC UA 标记可以提供有关资产状态、性能、质量或条件的实时或历史数据。

本快速入门将使用 Bicep 文件来配置 Azure IoT 操作实例。

先决条件

在 Kubernetes 群集中部署 Azure IoT 操作实例。 快速入门:使用 K3 在 GitHub Codespaces 中运行 Azure IoT 操作提供了简单的说明,以部署可用于快速入门的 Azure IoT 操作实例。

可以在 Bash 或 PowerShell 环境中运行本快速入门中的控制台命令,除非另有说明。

我们将解决什么问题?

OPC UA 服务器公开的数据可能具有复杂的结构,并且难以理解。 Azure IoT 操作提供了一种将 OPC UA 资产建模为标记、事件和属性的方法。 通过此建模,可以更轻松地了解数据并在下游流程(例如,MQTT 代理和数据流)中使用它。 数据流可操作数据并将其路由到云服务,例如 Azure 事件中心。 在本快速入门中,数据流将更改有效负载中某些字段的名称,并将资产 ID 添加到消息中。

部署 OPC PLC 模拟器

本快速入门使用 OPC PLC 模拟器生成示例数据。 若要部署 OPC PLC 模拟器,请运行以下命令:

kubectl apply -f https://raw.githubusercontent.com/Azure-Samples/explore-iot-operations/main/samples/quickstarts/opc-plc-deployment.yaml

注意

此配置使用自签名应用程序实例证书。 请勿在生产环境中使用此配置。 要了解详细信息,请参阅为 OPC UA 连接器配置 OPC UA 证书基础结构


设置环境变量

如果使用的是 Codespaces 环境,则已设置所需的环境变量,可以跳过此步骤。 否则,请在 shell 中设置以下环境变量:

# Your subscription ID
SUBSCRIPTION_ID=<subscription-id>

# The name of the resource group where your Kubernetes cluster is deployed
RESOURCE_GROUP=<resource-group-name>

# The name of your Kubernetes cluster
CLUSTER_NAME=<kubernetes-cluster-name>

配置群集

运行以下命令以下载并运行配置 Azure IoT 操作实例的 Bicep 文件。 Bicep 文件:

  • 添加连接到 OPC PLC 模拟器的资产终结点。
  • 添加表示烤箱并定义烤箱公开的数据点的资产。
  • 添加用于处理模拟烤箱的消息的数据流。
  • 创建用于接收数据的 Azure 事件中心实例。
wget https://raw.githubusercontent.com/Azure-Samples/explore-iot-operations/main/samples/quickstarts/quickstart.bicep -O quickstart.bicep

AIO_EXTENSION_NAME=$(az k8s-extension list -g $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --cluster-type connectedClusters --query "[?extensionType == 'microsoft.iotoperations'].id" -o tsv | awk -F'/' '{print $NF}')
AIO_INSTANCE_NAME=$(az iot ops list -g $RESOURCE_GROUP --query "[0].name" -o tsv)
CUSTOM_LOCATION_NAME=$(az iot ops list -g $RESOURCE_GROUP --query "[0].extendedLocation.name" -o tsv | awk -F'/' '{print $NF}')

az deployment group create --subscription $SUBSCRIPTION_ID --resource-group $RESOURCE_GROUP --template-file quickstart.bicep --parameters clusterName=$CLUSTER_NAME customLocationName=$CUSTOM_LOCATION_NAME aioExtensionName=$AIO_EXTENSION_NAME aioInstanceName=$AIO_INSTANCE_NAME

查看配置

配置了以下资源的 Bicep 文件:

  • 连接到 OPC PLC 模拟器的资产终结点。
  • 表示烤箱并定义烤箱公开的数据点的资产。
  • 用于处理模拟烤箱的消息的两个数据流。
  • 包含数据流目标中心的 Azure 事件中心命名空间。

要查看资产终结点、资产和数据流,请导航到浏览器中的操作体验 UI,并使用 Microsoft Entra ID 凭据登录。 由于你正在使用新部署,因此还没有站点。 可以通过选择“查看未分配的实例”来查找在上一个快速入门中创建的群集。 在操作体验中,实例表示在其中部署了 Azure IoT 操作的群集。

显示操作体验中未分配实例节点的屏幕截图。

资产终结点定义与 OPC PLC 模拟器的连接:

显示操作体验中资产终结点列表的屏幕截图。

烤箱资产定义烤箱公开的数据点:

显示操作体验中资产列表的屏幕截图。

数据流定义如何处理来自模拟烤箱的消息并将其路由到云中的事件中心:

显示操作体验中数据流列表的屏幕截图。

以下屏幕截图显示了如何配置温度转换数据流:

显示操作体验中温度转换计算的屏幕截图。

验证数据是否流向事件中心

要验证数据是否流向云,可以在 Azure 门户中查看事件中心实例。 可能需要等待几分钟才能启动数据流并让消息流向事件中心。

之前应用的 Bicep 配置创建了一个事件中心命名空间和被数据流用作目标的中心。 要查看该命名空间和中心,请导航到包含 IoT 操作实例的 Azure 门户中的资源组,然后选择事件中心命名空间。

如果消息流向实例,可以在实例“概述”页上看到传入消息的计数:

屏幕截图显示了包含传入消息的事件中心实例概述页。

如果消息正在流动,则可以使用“数据资源管理器”查看消息:

事件中心实例**数据资源管理器**页的屏幕截图。

提示

要查看消息,可能需要为自己分配事件中心命名空间的 Azure 事件中心数据接收方角色。

我们如何解决问题?

本快速入门使用 Bicep 文件配置了 Azure IoT 操作实例以及资产终结点、资产和数据流。 该配置处理并路由来自模拟烤箱的数据。 配置中的数据流将消息路由到 Azure 事件中心实例。

清理资源

如果继续学习下一个快速入门,请保留所有资源。

如果要移除 Azure IoT 操作部署但保留群集,请使用 az iot ops delete 命令:

az iot ops delete --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP

如果要删除为此快速入门创建的所有资源,请删除部署 Azure IoT 操作的 Kubernetes 群集,然后移除包含该群集的 Azure 资源组。

如果使用了 Codespaces 来完成这些快速入门,请从 GitHub 中删除你的 Codespace。

下一步

若要了解如何生成 Microsoft Fabric 仪表板,以便从烤箱数据获取见解,请参阅教程:从已处理的数据中获取见解