在 AWS 上部署和管理 IoT 工作负载 官方博客
在AWS上部署和管理IoT工作负载
关键要点
本文将帮助您理解如何在AWS上实现IoT解决方案,包括设备制造、设备管理、数据采集等重要组件。选择合适的配置和迁移策略,可以让您的IoT项目更加高效和安全。
引言
在实施物联网IoT工作负载时,企业面对多种平台选择。您可以从头开始构建解决方案,包括自制设备硬件,或购买预配置的硬件,然后连接到完全基于软件的IoT平台。
本文旨在帮助您理解设计IoT解决方案所需的技能和知识,并帮助您决定哪些组件需要自建,哪些可以购买。如果您在考虑将IoT工作负载迁移到AWS,请首先查看无缝迁移到AWS IoT Core博客,了解AWS提供的理由、激励措施和支持,这些都能简化您的迁移过程。
常见的AWS IoT架构组件
设备制造
在开发和制造设备硬件时,有几个因素需要考虑。根据您的需求,必须选择能够满足当前和未来解决方案需求的硬件。您需要在电源管理、连接性、安全性和操作系统等方面做出决策。
如果您不在内部自行制造硬件,则需要选择一个原始设备制造商ODM。ODM拥有生产线、工具和流程,能够生产大量设备。它们能够根据您提供的规格进行生产,通常包括印刷电路板PCB原理图、材料清单、固件和配置需求。
设备硬件限制的考虑因素包括:
功耗:设备的使用方式对其供电有很大影响。可穿戴设备需要小型电池,而电视机可以使用交流电源。对于需要电池的设备,您需要确定电池是可充电、可更换还是预期能够持续使用设备的整个生命周期。操作系统和固件:操作系统或固件的选择将取决于设备类型以及预期执行的任务。小型、低功耗的设备可能需要实时操作系统,例如FreeRTOS,而较大且功耗更高的设备可能会使用完整的操作系统,如Linux。连接性:IoT解决方案有多种连接性和协议选项,如以太网、WiFi、蜂窝网络、LoRaWAN和蓝牙低能耗BLE。设备的位置、可用性、功耗、安全性和用例将决定哪种连接选项最适合您的解决方案。为了帮助满足此组件的需求,AWS提供了AWS合作伙伴设备目录,列出了已完成AWS设备资格计划的AWS合作伙伴制造的设备。该列表中的设备可以帮助您更快推向市场,并确保您的设备与AWS IoT和AWS最佳实践兼容。此外,如果您已经制造了自己的设备,可以使用AWS IoT Core设备顾问来验证其是否能够可靠且安全地与AWS IoT Core连接。
设备配置
在您的IoT解决方案中,设备的配置方式将根据设备的能力和制造过程而异。这里的主要关注点是如何创建设备及其凭证。
安全性应始终是您、您的客户和设备制造商的首要任务。当使用X509证书时,制造过程必须确定设备何时接收其唯一证书和私有密钥对,以及如何在您的IoT解决方案中注册。
有关设备配置和证书管理的考虑因素包括:
制造商选择:完整的证书链信任始于您在内部开发硬件或选择OEM合作伙伴。如果选择后者,需检查其流程,以确保其在整个供应链中维护证书的完整性。证书颁发机构CA:为了在设备制造中提供灵活性,AWS有多个选项可用,包括使用自己的CA、第三方CA或Amazon根证书颁发机构CA。硬件安全模块:嵌入IoT设备中的安全元件是设备安全的基础。这使您能够加密和防篡改存储证书、秘密、固件和应用程序得以验证。为此,AWS有一系列由AWS IoT ExpressLink提供支持的连接模块,其中包含实施AWS强制安全要求的软件。外部资源:在您的IoT解决方案中,可能需要创建资源以启用自定义配置过程。这些资源需要设计成在设备装配规模增长时能够扩展。例如,可以借助一个AWS Lambda函数作为预配置钩子。设备级逻辑:设备可能需要设备级逻辑,以安全、可靠地完成配置。在AWS的帮助下,AWS IoT SDK已被构建以启用这种设备级逻辑。有关如何安全地在AWS IoT Core上配置和注册设备的更多信息,请查看AWS IoT Core中使用X509证书进行设备制造和配置的白皮书以及AWS IoT Core设备配置文档。
设备管理
在具备成熟的配置流程后,设备从首次连接起就能保持安全和最新,但可能需要更新,如固件或证书的轮换,以保持完全合规并提供最佳用户体验。解决方案需要能够应对更新过程中的干扰、连接解除、回滚过程,并具备自动扩展的能力。
飞机节点加速器您设备管理策略的考虑因素包括:
组织设备:快速识别和互动设备的能力可以让您在设备违反合规时进行故障排查和潜在隔离。管理设备队列时,需要有解决方案能够组织、索引及按规模对设备进行分类。在AWS中,您可以使用AWS IoT设备管理的Fleet Hub。监控设备:监控设备队列的状态对帮助识别任何故障或不合规设备非常重要。确保您有监控解决方案来收集观察及安全数据,如设备指标、日志或配置。AWS IoT设备防御工具提供审计功能及持续智能监控来确保您设备队列的安全。响应事件:定义最低限度的日志、指标及警报,运营团队可以防范重大业务中断。为此,您需要可扩展的警报解决方案,能够与您的监控解决方案集成。在AWS中,您可以使用Amazon CloudWatch。启用OTA更新:设备应设计为能够接收并应用更新。您的IoT解决方案应设计为发送更新并监控设备的更新进度。在AWS中,您可以使用AWS IoT设备管理作业。为帮助满足这一组件的需求,AWS IoT设备管理、AWS IoT设备防御器和AWS IoT Core提供一整套能力,来处理设备的组织、监控、警报和OTA更新。
设备数据采集
并非所有IoT解决方案只专注于数据采集,但对于那些确实如此的方案而言,这是影响整个架构的主要组成部分。此组件的要求会影响解决方案的规模、成本、安全性及性能,因此您应设计IoT解决方案的架构以满足当前及潜在的未来数据采集需求。
数据采集策略的考虑因素包括:
数据大小:假设您的设备没有硬件限制,为了最优效率,尽量保持消息大小一致,考虑将较小的消息批处理。请记住,批处理可以在消息传输中及传输后发生,例如通过IoT规则批处理消息。数据频率与结构:考虑您的设备多频繁地发送消息,以及您的解决方案是否设计为能够扩展到此频率。此外,数据的结构将决定您的IoT工作负载是基于消息还是流。MQTT主题设计:如果您使用此协议,您应努力找到一种平衡,既能强制执行最低权限通信,又能支持将来设备的部署。好的主题模式将实施陕西的命名结构,以便灵活的消息过滤和消息路由。数据存储:分析消息的流动和使用情况,以识别合适的存储解决方案。这些存储解决方案将有多个考虑因素,例如特定用例、总体消息结构、规模当前和未来增长和成本。路由:一旦数据被接收,您需要一个简单的基于规则的解决方案来路由消息到存储或其他服务。这些规则可以用于进一步的消息批处理、处理甚至警报。边缘网关:一个常见的架构模式是在数据传输到IoT解决方案之前设有一个网关或代理,用于接收、处理和/或批处理数据。可以将其实现为更靠近设备的本地终端,或靠近IoT解决方案的云端网关。为了帮助满足数据采集的需求,AWS IoT Core使您能够连接数十亿个IoT设备并路由数万亿条消息到其他AWS服务,如Amazon SQS、Amazon Kinesis和Amazon SNS,而无需管理任何基础设施。AWS还提供AWS IoT Greengrass,这是一个开源的边缘运行环境,提供边缘网关的能力。有关使用AWS IoT Core进行数据采集模式的更多信息,请参考AWS IoT博客7个IoT数据采集和可视化模式 如何决定什么最适合您的用例。
实时视频和数据流
除了上一节讨论的内容,如果您的IoT工作负载包含视频或其他高流量数据流,您还需要考虑更多因素。处理数据流的IoT工作负载通常涉及高频率和未经结构化的原始数据,适用于视频处理和分析等应用。
关于基于流的工作负载的注意事项包括:
生产:数据流是如何生成的将直接影响如何在您的IoT解决方案中接收、处理和存储。设备的流媒体协议、网络可用性、可访问性和成本限制等因素将影响流的生成方式。消费:数据流的消费和处理可能会影响您的IoT解决方案所需的规模和整体成本。高频率的数据,例如视频流,将需要一个高可用性、易于管理且可以满足吞吐量要求的强大架构。考虑这些流在您整体IoT解决方案中的直接商业价值,以确定最具成本效益和可扩展的消费和处理方式。为支持此类架构,AWS提供AWS IoT Greengrass、Amazon Kinesis,以及AWS Kinesis视频流。AWS IoT Greengrass是一个开源的边缘运行时,可轻松消费和处理数据流,并通过AWS提供的组件将其传输到AWS。Amazon Kinesis是一项经济高效的托管服务,可以处理和分析来自设备直接生成、AWS IoT Greengrass 流管理器组件或AWS IoT规则生成的流数据。AWS Kinesis视频流是一个托管AWS服务,可用于安全地查看、处理和分析直接由设备或AWS IoT Greengrass Kinesis视频流的边缘连接器生成的视频流,无论源协议是什么。
设备命令与控制
命令与控制是发送消息到设备请求其执行某个操作的过程,并可选择确认成功或失败。这可以通过直接向设备发送命令消息,或通过更改和转发设备的状态从IoT解决方案实现。通过评估和优化IoT解决方案的数据采集与命令与控制之间的消息需求,可以确保在性能和成本上实现最佳结果。
关于设备命令与控制策略的考虑因素:
命令消息:使用直接设备消息和您选择的消息协议,将命令直接传输到设备。您需要在设备级别实现逻辑,以接受并执行命令,同时报告设备的执行状态。请注意,此模式将要求您的IoT解决方案确保命令消息已送达,或在设备处于离线或断开连接时产生可操作的失败结果。设备状态:设备的保留状态将由IoT解决方案进行处理,可用于设置设备命令和更新其执行状态。这种保留状态可以是一个简单的文档,当IoT解决方案做出更改时发送到设备;而当设备进行更改时,再将其返回。这种模式将允许您的IoT解决方案与设备进行交互,不论其是否连接。为帮助满足这一组件的需求,AWS IoT Core提供AWS IoT设备影子服务、MQTT5请求/响应模式,以及AWS IoT设备管理提供的AWS IoT作业功能。有关实施设备命令与控制模式的更多信息,请参阅AWS WellArchitected框架白皮书中的设备命令部分。
云架构
当IoT解决方案存在于云中时,您可以从单一地区的服务或小型设备队列开始,测试您的需求。这对于概念验证或演示是可以的,但当您将解决方案投入生产时,需要确保其是根据基于云的最佳实践构建的。
AWS WellArchitected框架可以帮助您设计、构建或审查解决方案,以确保其在使用AWS时是安全、高效、稳健的。有关AWS IoT的基于云的最佳实践的更多信息,请查看IoT Lens AWS WellArchitected Framework。
结论
在本文中,我们将典型的IoT解决方案分解为其基本技术组件,并识别出每个组件的要求和注意事项。虽然构建IoT解决方案无疑是复杂的,但AWS IoT旨在简化和优化这一过程。此外,请考虑使用由AWS合作伙伴构建的AWS IoT解决方案以缩短上市时间。

关于作者
[KaiMatthias
使用 AWS Cloud WAN 服务插入简化全球安全检查 网络与内容传递
简化全球安全检查:AWS Cloud WAN 服务插入关键要点在这篇文章中,我们讨论了AWS Cloud WAN 服务插入的新功能,能够通过中心政策文件无缝插入AWS及第三方网络和安全服务。通过此功能...
如何使用 ADMT 将本地域迁移到 AWS 管理的 Microsoft AD 安全博客
将本地域迁移到 AWS 托管的 Microsoft AD使用 ADMT关键要点学习如何利用 Active Directory 迁移工具ADMT和密码导出服务PES将本地 Active Director...