培训
认证
Microsoft Certified: Identity and Access Administrator Associate - Certifications
演示 Microsoft Entra ID 的功能,以将标识解决方案现代化、实现混合解决方案和实现标识治理。
你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
MQTT 客户端可以通过 Azure 事件网格相互通信以及与 Azure 服务通信,以支持物联网 (IoT) 解决方案。 借助 Azure 事件网格的 MQTT 代理功能,可以实现以下方案。 可以在此存储库中找到演示这些方案的代码示例。
MQTT 代理非常适合实现汽车和运输等方案。 请参阅参考体系结构,了解如何构建安全且可缩放的解决方案,以便使用 Azure 的消息传送和数据分析服务将数百万辆汽车连接到云。
下面是 Azure 事件网格 MQTT 代理功能中涉及的关键概念列表。
MQTT 是一种发布-订阅消息传输协议,专为受限环境而设计。 由于其高效性、可扩展性和可靠性,它是 IoT 方案的首选通信标准。 MQTT 代理允许客户端通过 MQTT v3.1.1、基于 WebSocket 的 MQTT v3.1.1、MQTT v5 和基于 WebSocket 的 MQTT v5 协议发布和订阅消息。 以下列表显示了 MQTT 代理的一些功能亮点:
MQTT v5 功能:
MQTT 代理将来会添加更多 MQTT v5 功能,以便与 MQTT 规范更相符。 以下项目详细介绍了 MQTT 代理和 MQTT v5 规范支持的功能之间的当前差异:不支持Will 消息、保留标志、消息排序和 QoS 2。
MQTT v3.1.1 功能:
MQTT 代理将来会添加更多 MQTT v3.1.1 功能,以便与 MQTT 规范更相符。 以下项目详细介绍了 MQTT 代理和 MQTT v3.1.1 规范支持的功能之间的当前差异:不支持、保留标志、消息排序和 QoS 2。
发布-订阅消息传递模型为客户端提供可缩放的异步通信。 它使客户端能够将大量连接和消息的处理工作负担分散到服务。 通过发布-订阅消息传递模型,客户端可以使用一对多、多对一和一对一消息传递模式有效地进行通信。
事件网格命名空间是支持 MQTT 代理功能的资源以及支持拉取传递功能的资源的管理容器。 MQTT 客户端可以连接到 MQTT 代理并发布/订阅消息,而 MQTT 代理会对客户端进行身份验证、授权发布/订阅请求,并将消息转发到相关的客户端。 详细了解命名空间的概念。
客户端是指发布和订阅 MQTT 消息的 IoT 设备或应用程序。
IoT 设备是连接到 Internet 以传输遥测数据和接收命令的物理对象。 这些设备可以是传感器、装置、机器或其他配备嵌入式传感器和软件的对象。 传感器和软件使它们能够彼此或者与周围环境通信和交互。 IoT 设备的价值在于它们能够提供实时数据和见解,使企业和个人能够做出明智的决策并提高效率和生产力。
IoT 应用程序是设计用于与 IoT 设备交互及处理其中的数据的软件。 它们通常包含数据收集、处理、存储、可视化和分析等组件。 这些应用程序使用户能够监视和控制连接的设备、自动执行任务并从 IoT 设备生成的数据中获得见解。
事件网格有一个客户端注册表,用于存储有关有权连接到事件网格的客户端的信息。 在某个客户端可以连接到事件网格之前,客户端注册表中必须有该客户端的条目。 当客户端连接到 MQTT 代理时,它需要根据存储在标识注册表中的凭据向 MQTT 代理进行身份验证。 MQTT 代理支持以下客户端身份验证机制:
考虑到 IoT 环境的巨大规模和受限设备的独特安全挑战,访问控制对于 IoT 方案至关重要。 事件网格通过灵活访问控制模型提供基于角色的访问控制 (RBAC),使你能够管理客户端发布或订阅主题的授权。
鉴于 IoT 环境的巨大规模,为每个客户端分配对每个主题的权限极其繁琐。 事件网格的灵活访问控制通过将客户端和主题分组到客户端组和主题空间中来应对这种规模挑战。 创建客户端组和主题空间后,可以配置权限绑定,以授予客户端组发布或订阅主题空间的访问权限。
主题空间还允许控制客户端组中每个客户端发布或订阅其自己的主题的授权,从而提供精细访问控制。 这种精细访问控制是通过在主题模板中使用变量来实现的。 详细了解访问控制。
事件网格允许将 MQTT 消息路由到 Azure 服务或 Webhook 以进一步处理。 相应地,你可以通过将 IoT 数据用于数据分析、存储和可视化及其他用例来生成端到端解决方案。 通过路由配置,可以将所有 MQTT 消息从客户端发送到事件网格命名空间主题或事件网格自定义主题。 消息进入主题后,可以将事件订阅配置为使用主题中的消息。 例如,借助此功能,可以使用事件网格将来自 IoT 设备的遥测数据路由到事件中心,然后路由到 Azure 流分析,以从设备遥测数据中获取见解。 详细了解路由。
事件网格与 Azure IoT 操作集成,以将边缘的 MQTT 代理功能与云中 Azure 事件网格的 MQTT 代理功能连接起来。 Azure IoT 操作提供用于边缘计算的新型分布式 MQTT 代理,可在已启用 Arc 的 Kubernetes 群集上运行。 它可以通过利用系统分配托管标识实现的 Microsoft Entra ID 身份验证连接到事件网格 MQTT 代理,从而简化凭据管理。 MQTT 代理为 IoT 设备和应用程序提供高可用性、可伸缩性和安全性。 它现在已作为 Azure IoT 操作的一部分以公共预览版提供。 详细了解如何将 Azure IoT 操作 MQTT 代理连接到 Azure 事件网格的 MQTT 代理。
客户端生命周期事件允许应用响应客户端连接状态或客户端资源操作的相关事件。 它使你能够跟踪客户端的连接状态、对客户端连接断开做出缓解操作,并跟踪客户端在自动故障转移期间附加到的命名空间。 详细了解 MQTT 客户端生命周期事件。
自定义域名支持允许用户将自己的域名分配给事件网格命名空间的 MQTT 和 HTTP 终结点,从而增强安全性并简化客户端配置。 该功能可帮助企业满足其安全性和合规性要求,并且无需修改已链接到域的客户端。 为多个命名空间分配自定义域名还有助于提高可用性、管理容量和处理跨区域客户端移动。 详细了解自定义域名。
使用以下文章详细了解 MQTT 代理及其主要概念。
培训
认证
Microsoft Certified: Identity and Access Administrator Associate - Certifications
演示 Microsoft Entra ID 的功能,以将标识解决方案现代化、实现混合解决方案和实现标识治理。