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

IoT 工作负载概述

Microsoft Azure Well-Architected 框架的这一部分旨在解决在 Azure 上构建 IoT 工作负载时所面临的挑战。 本文介绍 IoT 工作负载中的 IoT 设计领域、体系结构模式和体系结构层。

卓越体系结构的五大支柱 是 IoT 工作负载设计方法的基础。 这些支柱充当本文所述的设计领域后续设计决策的指南针。 本系列中的其余文章深入探讨如何在可靠性、安全性、成本优化、卓越运营和性能效率支柱中使用 IoT 特定的设计原则来评估设计领域。

提示

若要通过可靠性、安全性、成本优化、卓越运营和性能效率等视角来评估 IoT 工作负载,请参阅 Azure Well-Architected 回顾

什么是 IoT 工作负载?

术语 工作负荷 是指支持常见业务目标或执行常见业务流程的应用程序资源的集合。 这些目标或进程使用多个服务,例如 API 和数据存储。 这些服务协同工作以提供特定的端到端功能。

物联网 (IoT) 是跨边缘和云环境的托管和平台服务的集合,用于连接、监视和控制物理资产。

因此, IoT 工作负载 描述了设计、构建和操作 IoT 解决方案的做法,以帮助根据你的要求和约束应对体系结构挑战。

IoT 工作负载解决了 IoT 系统的三个组件:

  • 持续或间歇性地连接到云的事物或物理对象、工业设备、设备和传感器。
  • 见解,由人类或 AI 分析的事物收集的信息,并转化为可操作的知识。
  • 操作,即人员或系统对见解的响应,这些见解与业务成果、系统和工具相连。

IoT 体系结构模式

大多数 IoT 系统使用 连接的产品连接的运营 体系结构模式。 每个模式在 IoT 设计领域都有特定的要求和约束。

  • 互联产品 体系结构侧重于 热路径。 最终用户使用实时应用程序管理产品并与之交互。 此模式适用于智能设备制造商,适用于各种位置和设置中的消费者和企业。 示例包括智能咖啡机、智能电视和智能生产机器。 在这些 IoT 解决方案中,产品构建者为产品用户提供连接服务。

  • 连接操作 体系结构侧重于边缘设备、警报和云处理的 暖路径或冷路径 。 这些解决方案分析来自多个源的数据,收集操作见解,生成机器学习模型,并启动进一步的设备和云操作。 连接操作模式适用于连接预先存在的计算机和设备的企业和智能服务提供商。 示例包括智能工厂和智能建筑。 在这些 IoT 解决方案中,服务生成器提供提供见解的智能服务,并支持连接环境的有效性和效率。

若要详细了解 IoT 工作负载的基本解决方案体系结构,请参阅 Azure IoT 参考体系结构特定于行业的 Azure IoT 参考体系结构

IoT 工作负载中的 Well-Architected 框架支柱

Azure Well-Architected 框架由卓越体系结构的五大支柱组成,可用于提高 IoT 工作负载的质量。 以下文章重点介绍了特定于 IoT 的设计原则如何影响 IoT 设计领域的决策:

  • 可靠性 可确保应用程序满足可用性承诺。 复原可确保工作负载可用,并且可以从任何规模的故障中恢复。 IoT 工作负载中的可靠性 讨论了 IoT 设计领域异质性、可伸缩性、连接性和混合性如何影响 IoT 可靠性。

  • 安全性 提供保密性、完整性和可用性保证,防止故意攻击和滥用数据和系统。 IoT 工作负载中的安全性 介绍了异质性和混合性如何影响 IoT 安全性。

  • 成本优化 平衡业务目标和预算理由,以创建经济高效的工作负载,同时避免资本密集型解决方案。 IoT 工作负载中的成本优化 着眼于在 IoT 设计领域减少开支和提高运营效率的方法。

  • 卓越运营 涵盖在生产环境中生成和运行应用程序的流程。 IoT 工作负载中的卓越运营 讨论了异质性、可伸缩性、连接性和混合性如何影响 IoT 操作。

  • 性能效率 是工作负载高效缩放以满足需求的能力。 IoT 工作负载中的性能效率 描述了异质性、可伸缩性、连接性和混合性如何影响 IoT 性能。

IoT 设计领域

促进良好 IoT 解决方案设计的关键 IoT 设计领域包括:

  • 异 质 性
  • 安全性
  • 可伸缩性
  • 灵活性
  • 适用性
  • 连接
  • 混合

设计领域是相互关联的,在一个区域内做出的决策可能会影响整个设计的决策。 若要评估设计领域,请在卓越体系结构的五大支柱中使用特定于 IoT 的设计原则。 这些原则有助于阐明注意事项,以确保 IoT 工作负载满足跨体系结构层的要求。

以下部分介绍 IoT 设计领域,以及它们如何应用于 IoT 连接的产品和连接的运营体系结构模式。

异 质 性

IoT 解决方案必须适应各种设备、硬件、软件、方案、环境、处理模式和标准。 请务必在设计时确定每个体系结构层的必要异质性级别。

在互联产品体系结构中,异质性描述了需要支持的机器和设备品种。 异质性还描述了可在其中部署智能产品的各种环境,例如网络和用户类型。

在连接的运营体系结构中,异质性侧重于对不同操作技术的支持, (OT) 协议和连接。

安全性

IoT 解决方案必须考虑跨所有层的安全和隐私措施。 安全措施包括:

  • 设备和用户标识。
  • 身份验证和授权。
  • 静态数据和传输中的数据的数据保护。
  • 数据证明策略。

在连接的产品体系结构中,在异类和广泛分布式环境中对产品使用的有限控制会影响安全性。 根据Microsoft Threat Modeling Tool STRIDE 模型,设备面临的最高风险是篡改,对服务的威胁来自被劫持设备的拒绝服务。

在连接操作体系结构中,部署环境的安全要求非常重要。 安全性侧重于特定的 OT 环境要求和部署模型(例如 ISA95 和 Purdue),并与基于云的 IoT 平台集成。 根据 STRIDE,连接操作的最高安全风险是欺骗、篡改、信息泄露和特权提升。

可伸缩性

IoT 解决方案必须能够支持 超可伸缩性,数百万个连接的设备和事件以高频率引入大量数据。 IoT 解决方案必须启用概念证明和试点项目,这些项目从一些设备和事件开始,然后横向扩展到超大规模维度。 考虑每个体系结构层的可伸缩性对于 IoT 解决方案的成功至关重要。

在连接的产品体系结构中,缩放描述设备数。 在大多数情况下,每个设备都有一组有限的数据和交互,由设备生成器控制,可伸缩性仅来自部署的设备数。

在连接操作体系结构中,可伸缩性取决于要处理的消息和事件数。 通常,计算机和设备的数量有限,但 OT 计算机和设备发送大量消息和事件。

灵活性

IoT 解决方案基于 可组合性原则构建,该原则允许将各种第一方或第三方组件组合为构建基块。 架构良好的 IoT 解决方案具有扩展点,可实现与现有设备、系统和应用程序的集成。 具有中转通信的大规模事件驱动体系结构是主干的一部分,服务和处理模块的松散耦合组成。

在连接的产品体系结构中,不断变化的最终用户要求定义了灵活性。 解决方案应允许你在云中轻松更改设备行为和最终用户服务,并提供新服务。

在连接操作体系结构中,对不同类型的设备的支持定义了灵活性。 解决方案应该能够轻松连接旧协议和专有协议。

适用性

IoT 解决方案必须考虑易于维护和修复组件、设备和其他系统元素。 早期检测潜在问题至关重要。 理想情况下,架构良好的 IoT 解决方案应在发生严重问题之前自动更正问题。 维护和维修操作应尽可能减少停机时间或中断。

在连接的产品体系结构中,设备的广泛分布会影响可维护性。 在最终用户上下文和控制中监视、管理和更新设备的能力是有限的,而无需直接访问该环境。

在连接操作体系结构中,可维护性取决于 OT 环境的给定上下文、控件和过程,其中可能包括已提供或正在使用的系统和协议。

连接

IoT 解决方案必须能够处理长时间的脱机、低带宽或间歇性连接。 若要支持连接,可以创建指标来跟踪不定期通信的设备。

连接产品在不受控制的使用者环境中运行,因此连接未知且难以维持。 连接的产品体系结构必须能够支持意外延长的脱机和低带宽连接。

在连接操作体系结构中,OT 环境的部署模型会影响连接性。 通常,连接程度(包括间歇性连接)是已知的,并在 OT 方案中进行管理。

混合性

IoT 解决方案必须解决混合复杂性问题,跨本地、边缘和多云环境在不同的硬件和平台上运行。 管理不同的 IoT 工作负载体系结构、确保不折不扣的安全性并实现开发人员敏捷性至关重要。

在连接的产品体系结构中,设备的广泛分布定义了混合性。 IoT 解决方案生成器控制硬件和运行时平台,混合侧重于部署环境的多样性。

在连接的操作体系结构中,混合性描述了数据分发和处理逻辑。 缩放和延迟要求决定了在何处处理数据以及反馈的速度。

IoT 体系结构层

IoT 体系结构由一组基础层组成。 特定技术支持不同的层,IoT 工作负载突出显示了用于设计和创建每个层的选项。

  • 核心层 标识特定于 IoT 的解决方案。
  • 常见层 并非特定于 IoT 工作负载。
  • 交叉层 支持设计、生成和运行解决方案的所有层。

IoT 工作负载满足不同的特定于层的要求和实现。 框架侧重于 核心层,并确定 IoT 工作负载对 常见层的具体影响。

显示 IoT 体系结构中层和跨领域活动的关系图。

以下部分介绍 IoT 体系结构层和支持它们的 Microsoft 技术。

核心层和服务

IoT 核心层和服务标识解决方案是否为 IoT 解决方案。 IoT 工作负载 的核心层 包括:

  • 设备和网关
  • 设备管理和建模
  • 引入和通信

IoT 工作负载主要侧重于这些层。 为了实现这些层,Microsoft 提供了 IoT 技术和服务,例如:

提示

Azure IoT Central 是一个托管应用程序平台,可用于快速评估 IoT 方案并评估业务机会。 使用 IoT Central 评估 IoT 方案后,可以使用 Azure IoT 平台的强大功能构建企业就绪解决方案。

设备和网关层

此层表示部署在边缘或本地的物理或虚拟设备和网关硬件。 此层中的元素包括操作系统和设备或网关固件。 操作系统管理设备和网关上的进程。 固件是编程到设备和网关上的软件和指令。 此层负责:

  • 对其他外围设备和传感器进行检测和操作。
  • 处理和传输 IoT 数据。
  • 与 IoT 云平台通信。
  • 基本级别设备安全性、加密和信任根。
  • 设备级软件和处理管理。

常见用例包括从设备读取传感器值、处理数据并将其传输到云以及启用本地通信。

相关的 Microsoft 技术包括:

引入和通信层

此层聚合并代理设备和网关层与 IoT 云解决方案之间的通信。 此层可实现:

  • 支持与设备和网关进行双向通信。
  • 聚合和组合来自不同设备和网关的通信。
  • 将通信路由到特定设备、网关或服务。
  • 在不同协议之间进行桥接和转换。 例如,将云或边缘服务调入一条 MQTT 消息,该消息将转到设备或网关。

相关的 Microsoft 技术包括:

设备管理和建模层

此层维护设备和网关标识、其状态及其功能的列表。 此层还支持创建设备类型模型和设备之间的关系。

相关的 Microsoft 技术包括:

常见层和服务

IoT 以外的工作负载(例如数据 & AI 和新式应用程序)也使用通用层。 顶级 Azure Well-Architected 框架解决了这些常见层的泛型元素,而其他工作负载框架则解决了其他要求。 以下部分介绍 IoT 相关对要求的影响,并包含指向其他指南的链接。

传输层

此层表示设备、网关和服务连接和通信的方式、它们使用的协议,以及它们在本地和云中移动或路由事件的方式。

相关的 Microsoft 技术包括:

事件处理和分析层

此层处理来自引入层和通信层的 IoT 事件并对其进行处理。

  • 热路径 流处理和分析近乎实时地进行,以识别即时见解和操作。 例如,当温度上升时,流处理会生成警报。
  • 暖路径 处理和分析可识别短期见解和操作。 例如,分析预测温度上升的趋势。
  • 冷路径 处理和分析为热路径或暖路径创建智能数据模型。

相关的 Microsoft 技术包括:

存储层

此层将 IoT 设备事件和状态数据保留一段时间。 存储类型取决于数据所需的用途。

  • 流式存储,例如消息队列、分离 IoT 服务和通信可用性。
  • 基于时序的存储 支持热路径分析。
  • 长期存储 支持机器学习和 AI 模型创建。

相关的 Microsoft 技术包括:

交互和报告层

此层允许最终用户与 IoT 平台交互,并基于角色查看设备状态、分析和事件处理。

相关的 Microsoft 技术包括:

集成层

此层支持使用计算机到计算机或服务到服务通信 API 与 IoT 解决方案外部的系统交互。

相关的 Microsoft 技术包括:

跨领域活动

跨领域活动(如 DevOps)可帮助你设计、生成、部署和监视 IoT 解决方案。 DevOps 允许以前孤立的角色(如开发、运营、质量工程和安全性)进行协调和协作,以生成更好、更可靠、更敏捷的产品。

DevOps 在软件开发中是众所周知的,但可以应用于任何产品或流程开发和操作。 采用 DevOps 文化、做法和工具的团队可以更好地响应客户需求,增强对其构建的应用程序和产品的信心,并更快地实现业务目标。

下图显示了 DevOps 持续规划、开发、交付和操作周期:

显示 DevOps 如何持续交付价值的示意图。

  • 开发和部署活动包括 IoT 解决方案及其组件的设计、生成、测试和部署。 该活动涵盖所有层,包括硬件、固件、服务和报表。

  • 管理和操作活动可识别所有层中 IoT 系统的当前运行状况。

正确执行 DevOps 和其他跨领域活动可以决定你成功创建和运行架构良好的 IoT 解决方案。 跨领域活动有助于满足设计时设置的要求,并随时间变化的需求进行调整。 请务必明确评估你在这些活动中的专业知识,并采取措施确保执行达到所需的质量级别。

相关的 Microsoft 技术包括:

后续步骤