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

为 MQTT 配置连接器(预览版)

这是 MQTT 连接器的预览版,可让你在 Azure IoT 操作中将外部 MQTT 终结点建模为资产。 MQTT 连接器可以在显示时检测新的主题路径,可以查看表示检测到的主题的自定义资源。

Azure IoT Operations 中的 资产 是用于表示物理资产或设备的逻辑实体。 Azure IoT Operations 资产可以具有描述其行为和特征的自定义属性、数据点、流和事件。 资产与一个或多个设备相关联。 Azure IoT Operations 将资产定义存储在 Azure 设备注册表中。

Azure IoT作中的 设备 是一个逻辑实体,用于定义与物理资产或设备的连接。 如果没有设备,数据无法从物理设备或资产流向 MQTT 中转站。 配置设备和资产时,将建立与物理资产或设备的连接,而数据点值、事件和流将到达 Azure IoT 操作实例。 设备具有一个或多个入站终结点。 Azure IoT作将设备定义存储在 Azure 设备注册表中。

MQTT(预览版)的连接器支持以下功能:

  • 允许将来自 MQTT 设备的主题表示为 Azure 设备注册表(ADR)中的资产。
  • 建立与 MQTT 中转站的通信,以建立北行和南行连接。
  • 检测出现在给定主题路径下的新主题,并与 Akri 通信。 Akri 创建 检测到的资产 自定义资源,以便进行 OT 审批并导入 ADR。
  • 检测在指定 MQTT 通配符匹配路径下出现的新主题,并与 Akri 进行通信。 Akri 创建 检测到的资产 自定义资源,以便进行 OT 审批并导入 ADR。
  • 对于已批准或导入的资产,连接器将数据从原始路径复制到用户分配的统一命名空间路径。
  • 遵循 MQTTS 做法,确保与 Azure IoT Operations MQTT 中转站的安全通信。

本文介绍如何使用 MQTT 的连接器来执行如下任务:

  • 定义将 MQTT 源连接到 Azure IoT 操作实例的设备。
  • 添加资产,并定义数据点,以启用从 MQTT 源到 MQTT 中转站的数据流。

先决条件

启用了资源同步规则的 Azure IoT 操作的已部署实例。 若要启用资源同步规则,请在 Azure IoT作实例上运行以下命令。 此命令还会设置自定义位置所需的权限:

az iot ops enable-rsync -n <my instance> -g <my resource group>

要登录到操作体验 Web UI,则需要至少具有包含 Kubernetes - Azure Arc 实例的资源组参与者权限的 Microsoft Entra ID 帐户。 无法使用 Microsoft 帐户 (MSA) 登录。 有关详细信息,请参阅 排查对操作 Web UI 界面的访问问题

您的 IT 管理员必须在 Azure 门户中为 Azure IoT 运营实例配置用于 MQTT 模板的连接器。

需要具备适当的凭据才能访问 MQTT 源。 如果 MQTT 源需要身份验证,则需要创建包含 MQTT 源用户名和密码的 Kubernetes 机密。

为 MQTT 部署连接器

部署 Azure IoT 运营时,安装包包含各种连接器。 在可以在操作体验 Web UI 中使用连接器(例如 ONVIF、媒体和 HTTP/REST)之前,管理员必须将连接器模板实例添加到您的 Azure IoT 操作实例中。

所有连接器都可以将捕获的数据发布到 MQTT 中转站。

若要将连接器模板实例添加到 Azure IoT 操作实例,请执行以下操作:

  1. 在 Azure 门户中,转到 Azure IoT作实例,选择 连接器模板,然后选择 “添加连接器模板实例

    显示如何添加连接器模板实例的 Azure 门户的屏幕截图。

  2. “添加 Akri 连接器模板 向导”的第一页上,选择要添加的连接器模板的类型和版本,例如 ONVIF媒体HTTP/RESTSSEMQTT。 然后选择 “元数据”。

    显示如何选择连接器模板实例类型的 Azure 门户的屏幕截图。

  3. “元数据 ”页上,接受默认值,然后选择 “设备入站终结点类型”。

  4. “设备入站终结点类型 ”页上,接受默认值,然后选择“ 诊断配置”。

  5. “诊断配置 ”页上,接受默认值,然后选择“ 运行时配置”。

  6. “运行时配置 ”页上,接受默认值,然后选择“ 审阅”。

  7. 在“ 审阅 ”页上,查看连接器模板实例的详细信息,然后选择“ 创建 ”以创建连接器模板实例。

OT 用户现在可以使用操作体验 Web UI 来创建具有连接器终结点的设备。


创建设备

若要配置 MQTT 的连接器,请先创建一个设备,用于定义与目标 MQTT 主题的订阅连接。 设备包括 MQTT 主题的地址以及访问它所需的任何凭据:

  1. 在操作体验 Web UI 中,在左侧导航窗格中选择设备。 然后选择“ 新建”。

  2. 输入设备的名称,例如 mqtt-connector。 若要为 MQTT 的连接器添加入站终结点,请在 Microsoft.Mqtt 磁贴上选择“新建”。

  3. “基本 ”页上添加用于 MQTT 的连接器的入站终结点的 URL 和任何身份验证凭据:

    显示如何为 MQTT 终结点添加连接器的屏幕截图。

    “高级 ”页上添加主题详细信息:

    显示如何将订阅添加到 MQTT 终结点的连接器的屏幕截图。

    资产级别指定连接器在其中查找资产名称的主题树中的级别。

    主题筛选器指定如何筛选要订阅的主题。 该设置支持单级通配符。

    主题映射前缀将传入主题映射到统一的命名空间路径。

    选择 “应用 ”以保存终结点。

  4. “设备详细信息 ”页上,选择“ 下一步 ”以继续。

  5. “添加自定义属性 ”页上,可以添加要与设备关联的任何其他属性。 例如,可以添加一个属性来指示设备的制造商。 然后选择 “下一步 ”继续

  6. “摘要 ”页上,查看设备的详细信息,然后选择“ 创建 ”以创建资产。

  7. 创建设备后,可以在 “设备” 列表中查看它:

    显示设备列表的屏幕截图。

将设备配置为使用用户名和密码

上述示例使用了 Anonymous 身份验证模式。 此模式不需要用户名或密码。

若要使用 Username password 身份验证模式,请执行以下作:

按照 “管理 Azure IoT作部署的机密 ”中的步骤,在 Azure Key Vault 中添加用户名和密码的机密,将其投影到 Kubernetes 群集中,并从设备配置中引用它们。

为设备配置一个用于使用的证书信任列表

若要管理 MQTT 连接器的受信任证书列表,请参阅 管理用于外部通信的证书

发现和创建资产

向与创建设备时指定的主题筛选器匹配的主题发送消息时,MQTT 的连接器会检测新主题并创建 检测到的资产 自定义资源。 例如,如果将主题筛选器指定为 A/B/+主题,并向主题 A/B/asset1发送消息,MQTT 的连接器将检测新主题,并创建可在作体验 Web UI 中查看的 检测到的资产

显示检测到的资产列表的屏幕截图。

若要从检测到的资产创建资产,请执行以下步骤:

  1. 在作体验中,从列表中选择检测到的资产,然后选择 “导入并创建资产”。

  2. “资产详细信息 ”页上,已从设备中选择入站终结点。 使用已发现资产的名称作为资产的名称、添加说明以及要与资产关联的任何自定义属性。 然后选择“下一步”继续。

    重要

    所创建资产的名称必须与发现的资产的名称匹配。

  3. “数据集 ”页上,有一个数据集是使用主题筛选器和资产名称从检测到的资产自动创建的:

    显示从检测到的资产创建的数据集的屏幕截图。

    小窍门

    如果需要从其他主题捕获消息,可以添加更多数据集。

    选择“下一步”继续操作。

  4. 在审阅页上,查看资产的详细信息,然后选择“ 创建 ”以创建资产。 几分钟后,资产将列在 “资产 ”页上:

    显示资产列表的屏幕截图。

在此示例中,导入的资产具有具有以下设置的数据集定义:

设置 价值
数据集名称 A/B/asset1
数据源 A/B/asset1
目标主题 X/Y/A/B/asset1

现在,连接器会将发布到该主题 A/B/asset1 的任何消息复制到统一命名空间主题 X/Y/A/B/asset1