你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 物联网(IoT)是Microsoft托管的云服务、边缘组件和 SDK 的集合,可用于大规模连接、监视和控制 IoT 设备。 简言之,IoT 解决方案由与云服务通信的 IoT 设备组成。
在设计 IoT 解决方案时,一个关键的决定因素是使用基于云的解决方案还是基于边缘的解决方案:
- 在基于云的解决方案中,IoT 设备直接连接到处理和分析其消息的云。 可以直接从云监视和控制设备。
- 在基于边缘的解决方案中,IoT 设备连接到边缘环境,在将消息转发到云以供存储和分析之前处理其消息。 通常通过边缘运行时环境从云监视和控制设备。 还可以直接从边缘监视和控制设备。
以下部分提供了典型基于云的和基于边缘的 IoT 解决方案中的组件的高级视图。 本文重点介绍组件的主要组:设备、IoT 云服务、边缘运行时环境、其他云服务和解决方案范围问题。 本节中的其他文章提供了有关其中每个组件的更多详细信息。
基于云的解决方案
基于云的解决方案是一组集成的 IoT 设备、组件和服务,可满足业务需求,并将设备直接连接到云。 基于云的解决方案的一个示例是一批交付卡车,用于将传感器数据发送到云进行分析和可视化:
可以使用 IoT 中心、设备预配服务和 Azure 数字孪生等服务构建基于云的解决方案。
基于边缘的解决方案
基于边缘的解决方案是一组集成的 IoT 设备、组件和服务,满足业务需求,并将设备连接到附近的边缘服务。 基于边缘的解决方案的一个示例是工业 IoT 设备连接到本地服务的工厂,原因之一是:
- 设备使用本地网络协议(如 OPC UA)进行通信。
- 安全问题意味着你不得将设备直接连接到公共 Internet。
基于边缘的解决方案仍然可以将数据从设备转发到云,以便进一步处理,例如分析和可视化:
可以使用 Azure IoT 操作或 Azure IoT Edge 构建基于边缘的解决方案。 Azure IoT 操作是一项新产品,遵循 Microsoft 的自适应云方法来集成云和边缘组件。
设备和连接
基于云的和基于边缘 的解决方案都具有从 中获取业务见解的数据的设备。 以下部分介绍 IoT 解决方案中的设备,以及如何连接到云。
IoT 设备类别
对 IoT 设备进行分类很有帮助,如下所示:
设备类别 1:直接连接到云的设备。 此类别包括使用标准协议(如 HTTP、MQTT 或 AMQP)连接到云服务(如 IoT 中心 )的设备。 这些设备与基于边缘的解决方案(如 Azure IoT作)无关。
设备类别 2:通过基于边缘的代理或网关连接到云的设备。 此类别中的示例包括:
- 通过 Azure IoT作中的 MQTT 代理间接连接到云。
- 通过 IoT Edge 网关间接连接到 IoT 中心。
设备类别 3:这些设备通过连接器连接到基于边缘的运行时,使设备能够使用特定协议。 例如,OPC UA 服务器及其附加设备通过 OPC UA 连接器进行连接。 这些设备在基于云的解决方案(如 Azure IoT 中心)中不相关。
下图显示了设备类别与基于云的解决方案中的云服务之间的关系:
下图显示了基于边缘的解决方案中的设备类别与边缘运行时之间的关系:
为简单起见,前面的关系图仅显示流向云或边缘运行时的数据流。 许多解决方案支持云或边缘运行时向设备发送命令的命令和控制方案。 例如,云服务可能会将命令发送到符合 ONVIF 的相机进行放大。
IoT 设备
类别 1 和 2 中的 IoT 设备通常由具有收集数据的传感器的线路板组成。 类别 1 IoT 设备直接连接到 Internet,类别 2 设备依赖于本地网关连接到云。 以下项是类别 1 和 2 IoT 设备的示例:
- 远程油泵上的压力传感器。
- 空调设备中的温度和湿度传感器。
- 电梯中的加速计。
- 房间中的感测器。
类别 3 设备是环境中要监视和控制的物理设备。 这些设备可能:
- 具有由实现标准协议(如 ONVIF)的制造商提供的内置固件。
- 是具有附加资产的服务器,用于实现 OPC UA 等工业协议。
下面是类别 3 设备的示例:
- 机器人手臂和传送带。
- 工业 CNC 机器、车床、锯子和钻头。
- 医疗诊断成像机。
- 安保视频摄像机。
- 可编程逻辑控制器。
不同的制造商提供多种设备用于构建解决方案。 若要制作微处理器设备的原型,可以使用 Raspberry Pi 等设备。 Raspberry Pi 允许连接多种不同类型的传感器。 若要原型制作微控制器设备,请使用 ESPRESSIF ESP32 等设备,或将 STMicroelectronics B-L475E-IOT01A Discovery 工具包连接到 IoT 中心。 这些板通常具有内置传感器,例如温度传感器和加速计传感器。
Microsoft 提供开源设备 SDK 用于构建在设备上运行的应用。
要详细了解 IoT 解决方案中的设备,请参阅 IoT 设备开发。
设备连接
通常,IoT 设备将数据从其附加的传感器发送到解决方案中的云服务。 但是,也可以实现其他类型的通信,例如,将命令发送到设备的云服务。 下面是设备到云和云到设备的通信的示例:
- 流动冷藏货车每隔 5 分钟向 IoT 中心发送温度数据。
- 云服务将命令发送到设备以更改发送传感器数据以帮助诊断问题的频率。
IoT 设备 SDK 和 IoT 中心支持常用的通信协议,例如用于设备到云和云到设备通信的 HTTP、MQTT 和 AMQP。 在某些方案中,可能需要网关才能将 IoT 设备连接到云服务。
相比于其他客户端(例如浏览器和移动应用),IoT 设备有不同的特征。 具体而言,IoT 设备具有以下特征:
- 通常是无人操作的嵌入式系统。
- 可以部署到物理访问昂贵的远程位置。
- 可能只能通过解决方案后端来访问。
- 能力和处理资源可能都有限。
- 网络连接可能不稳定、缓慢或成本高昂。
- 可能需要使用专有、自定义或行业特定的应用程序协议。
设备 SDK 可帮助解决以安全可靠的方式将设备连接到云服务的难题。
若要了解有关设备连接和网关的详细信息,请参阅 IoT 设备连接和基础结构。
基于边缘的解决方案中的连接性
在基于边缘的解决方案中,IoT 设备连接到处理消息的边缘环境,然后将消息转发到云进行存储和分析。 设备可能使用网络通信协议和标准,例如:
在前面显示的基于边缘的解决方案关系图中, 南行连接器 表示设备用来连接到边缘环境的协议和标准。
若要了解有关处理从设备发送的消息的详细信息,请参阅 IoT 解决方案中的消息处理。
设备比较
下表总结了设备和连接的当前选项:
当前产品/服务(正式版) | 基于云的解决方案 | 基于边缘的解决方案 |
---|---|---|
连接的对象类型 | 类别 1 和 2 IoT 设备 | 类别 2 和 3 IoT 设备 |
设备连接协议 | HTTP、AMQP、MQTT v3.1.1 | Azure IoT Edge 启用 HTTP、AMQP、MQTT v3.1.1 和 MQTT v5。 Azure IoT作为类别 2 设备启用 MQTT v3.1.1 和 MQTT v5,连接器为类别 3 设备启用其他协议,例如 OPC UA、ONVIF、SQL 和 REST。 可以使用自定义连接器。 |
设备实现 | Microsoft Azure IoT 设备 SDK 和 嵌入式设备 SDK | 类别 2 设备可以使用任何 MQTT 库连接到 MQTT 代理。 类别 3 设备通常附带标准固件。 |
设备管理 | IoT DPS、设备更新、IoT Central | 在 Azure IoT 操作中,使用 Azure 设备注册表。 使用 Akri 通过本机协议启用自动设备发现。 在 IoT Edge 中,使用 IoT DPS 进行大规模设备管理。 |
服务和应用程序
在基于云的解决方案中,特定于 IoT 的云服务提供用于连接、监视和控制设备的基础结构。 在基于边缘的解决方案中,边缘运行时环境托管服务以连接、监视和控制设备。 其他云服务为解决方案提供通用服务(例如存储、分析和可视化)。
IoT 云服务
在基于云的 IoT 解决方案中,IoT 云服务通常为:
- 从设备大规模接收传感器数据,并确定如何处理和存储该数据。
- 从云向特定设备发送命令。
- 预配设备并控制哪些设备可以连接到基础结构。
- 控制设备状态并监视设备活动。
- 管理设备上安装的固件。
例如,在油泵站的远程监视解决方案中,服务使用来自泵的传感器数据来识别异常行为。 当云服务识别到异常时,可以自动将一条命令发送到设备,以采取纠正措施。 此过程在设备和云之间实现了自动反馈循环,从而显著提高了解决方案效率。
若要详细了解有关管理和控制设备的关键概念,请参阅 IoT 设备管理和控制。
边缘运行时
在基于边缘的 IoT 解决方案中,托管在边缘运行时环境中的本地服务通常会:
- 通过南行连接器管理与设备的连接
- 从设备大规模接收数据,并确定路由消息的位置以供进一步处理。
- 将命令从云转发到特定设备。
- 执行一些本地消息处理。 在 Azure IoT 操作中,此处理发生在北行连接器中
其他云服务
基于云的解决方案和基于边缘的解决方案都可以使用其他云服务为解决方案提供更多功能。 例如,您可以使用:
- Azure 存储服务来存储收集的数据。
- Azure 流分析实时处理传感器数据。
- Azure Functions 来响应设备事件。
- Azure 逻辑应用来自动执行业务流程。
- Azure 机器学习来为解决方案添加机器学习和 AI 模型。
- Microsoft Fabric 来存储和分析传感器数据。
- Microsoft Power BI 来可视化传感器数据。
若要了解更多信息,请参阅以下文章:
IoT 服务比较
下表总结了当前的服务和边缘应用程序选项:
当前产品/服务(正式版) | 基于云的解决方案 | 基于边缘的解决方案 |
---|---|---|
服务 | IoT 中心、IoT DPS、IoT 中心设备更新、Azure 数字孪生 |
Azure IoT 操作,具有 Azure 设备注册表。 还可以使用 IoT Edge。 |
边缘应用程序选项 | 无 | 借助 Azure IoT作,可以使用 DAPR (分布式应用程序运行时应用)。 通过 IoT Edge,可以使用 IoT Edge 模块。 |
部署比较
下表汇总了当前的部署选项:
当前产品/服务(正式版) | 基于云的解决方案 | 基于边缘的解决方案 |
---|---|---|
拓扑 | 设备直接连接到云消息传送服务,例如 IoT 中心。 使用 Azure 资源管理器(ARM)或 IoT 中心服务 SDK 在云中管理。 |
Azure IoT作 提供了将设备连接到本地 Kubernetes 群集的方法。 设备通过标准网络协议或中间设备直接连接到 Azure IoT Operations MQTT 代理。 使用已启用 Azure Arc 的服务在云中托管。 还可以使用 IoT Edge。 IoT Edge 是一种以设备为中心的运行时,可用于在边缘部署、运行和监视容器化 Linux 工作负载,使分析更接近设备,以便更快地进行见解和脱机决策。 IoT Edge 是 IoT 中心的一项功能。 |
基础结构 | IoT 中心等云服务,以及包含 CPU/MPU 的标准计算设备,或包含 MCU 的受限和嵌入式设备。 | 在 Kubernetes 群集上运行的 Azure IoT作,以及连接到群集的设备。 还可以使用 IoT Edge,它在网关设备(如 Raspberry Pi 或工业电脑)以及连接到网关设备的设备上运行。 连接到 Azure IoT作或 IoT Edge 的设备可以包括包含 CPU/MPU 的标准计算设备,或者包含 MCU 的约束和嵌入式设备。 |
解决方案范围的问题
任何 IoT 解决方案必须解决以下解决方案范围的问题:
- 包括部署和监视的解决方案管理。
- 安全性,包括物理安全性、身份验证、授权和加密。
- 解决方案中所有组件的可伸缩性、高可用性和灾难恢复。
解决方案管理
自适应云方法将孤立的团队、分布式站点和不同的系统统一到单个作、安全、应用程序和数据模型中。 通过此方法,你可以使用相同的云和 AI 技术来管理和监视基于边缘、基于云以及混合 IoT 解决方案。
基于 IoT 中心、IoT Central 和 IoT Edge 的解决方案为自适应云方法提供有限的支持。 尽管 IoT 中心、IoT Central 和 IoT Edge 实例本身都是 Azure 资源,但它们不会以本机方式公开功能,例如设备管理和数据转换,因为资源可以作为标准 Azure 资源进行管理。
相比之下,基于 Azure IoT 操作的解决方案为解决方案中的所有组件提供统一的管理体验。 Azure IoT 操作使用已启用 Azure Arc 的服务来管理和监视基于边缘的解决方案,就像它是基于云的解决方案一样。 例如,边缘上运行的设备和数据转换以 Azure 中的云资源的形式公开。 通过此方法,你可以使用标准 Azure 技术来管理和监视整个基于边缘的解决方案。
安全性比较
下表汇总了当前的安全选项:
当前产品/服务(正式版) | 基于云的解决方案 | 基于边缘的解决方案 |
---|---|---|
身份验证 | 共享访问签名 (SAS),X.509 |
Azure IoT作 使用 用户分配和系统分配的托管标识、服务帐户令牌(SAT)、SAS 和 X.509 进行群集上的身份验证。 IoT Edge 使用 基于证书的身份验证。 |
授权 | 在当前服务产品/服务(如 IoT 中心)中是专有的 |
Azure IoT作 使用 Microsoft Entra ID 标识进行基于角色的访问控制(RBAC)。 IoT Edge 使用专有授权方案,该方案与 IoT 中心通信,但在本地处理授权。 |
后续步骤
进一步探索 Azure IoT 的推荐后续步骤包括:
若要详细了解 Azure IoT 体系结构,请参阅: