亚马逊AWS IoT平台分析

亚马逊AWS IoT

一.AWS IoT简介

1.1  AWS IoT平台的优点

(1)普遍而深刻数据库

AWS 拥有从边缘到云端的普遍而深刻的 IoT 服务。设备软件、Amazon FreeRTOS AWS IoT Greengrass 提供本地数据收集和分析能力。在云中,AWS IoT 是惟一一家将数据管理和丰富分析集成在易于使用的服务中的供应商,这些服务专为繁杂的 IoT 数据而设计。                                                                      安全

(2)多层安全性网络

AWS IoT 提供适用于全部安全层的服务。AWS IoT 包括预防性安全机制,如设备数据的加密和访问控制。AWS IoT 还提供持续监控和审核安全配置的服务。您能够收到警报,以便缓解潜在的安全问题,例如将安全修复程序推送到设备。                                                                     架构

(3)卓越的AI集成并发

AWS AI IoT 结合在一块儿,使设备更为智能化。您能够在云端建立模型,而后将它们部署到运行速度达到其余产品 2 倍的设备。AWS IoT 将数据发回至云端,以持续改进模型。与其余产品相比,AWS IoT 还支持更多的机器学习框架。    框架

(4)大规模获得验证机器学习

AWS IoT 构建于可扩展、安全且通过验证的云基础设施之上,可扩展到数十亿种不一样的设备和数万亿条消息。AWS IoT 还与 AWS LambdaAmazon S3 Amazon SageMaker 等服务集成,从而让您能够构建完整的解决方案,例如使用 AWS IoT 管理摄像机并使用 Amazon Kinesis 进行机器学习的应用程序。函数

 

1.2  AWS IoT 解决方案

(1)工业解决方案学习

     AWS IoT 客户正在构建工业 IoT 应用程序,以预测质量和维护,并远程监控操做加密

(2)家庭解决方案

AWS IoT 客户正在为家居自动化、家居安全和监控以及家庭网络构建互联家居应用程序。

(3)商业解决方案

AWS IoT 客户构建用于交通监控、公共安全和健康监控的商业应用程序。

 

1.3  AWS IoT平台定位

1)AWS IoT是一款托管的云平台,使互联设备能够轻松安全地与云应用程序及其余设备交互。

2)AWS IoT可支持数十亿台设备和数万亿条消息,而且能够对这些消息进行处理并将其安全可靠地路由至 AWS 终端节点和其余设备。应用程序能够随时跟踪全部设备并与其通讯,即便这些设备未处于链接状态也不例外。

3)使用AWS Lambda、Amazon Kinesis、Amazon S三、Amazon Machine Learning、Amazon DynamoDB、Amazon CloudWatch、AWS CloudTrail 和内置 Kibana 集成的 Amazon Elasticsearch Service 等AWS服务来构建IoT应用程序,以便收集、处理和分析互连设备生成的数据并对其执行操做,且无需管理任何基础设施。

 

二.AWS IoT 架构

2.1 整体架构图

 

 

集成了AWS的功能模块:

 

 

 

  • Amazon DynamoDB—托管NoSQL数据库
  • Amazon Kinesis—大规模流式数据实时处理
  • AWS Lambda—EC2云虚拟机运行代码响应事件
  • Amazon Simple Storage ServiceS3可扩展云存储
  • Amazon Simple Notification—推送通知服务
  • Amazon Simple Queue Service—消息队列服务

 

2.2 设备网关

 

 

  • AWS IoT 设备网关支持设备安全高效地与 AWS IoT 进行通讯。设备网关可使用发布/订阅模式交换消息,从而支持一对一和一对多的通讯。凭借此一对多的通讯模式,AWS IoT 将支持互连设备向多名给定主题的订阅者广播数据。
  • 设备网关支持 MQTTWebSocket HTTP 1.1 协议,也支持私有协议。
  • 设备网关可自动扩展,以支持 10 亿多台设备,而无需预配置基础设施。

2.3 认证受权

 

 

  • AWS IoT 在全部链接点处提供相互身份验证和加密。AWS IoT 支持 AWS 身份验证方法(称为"SigV4")以及基于身份验证的 X.509 证书。使用 HTTP 的链接可使用任一方法,使用 MQTT 的链接可使用基于证书的身份验证,使用 WebSockets 的链接可使用 SigV4
  • 使用 AWS IoT 生成的证书以及由首选证书颁发机构 (CA) 签署的证书,将所选的角色和/或策略映射到每一个证书,以便授予设备或应用程序访问权限,或撤消访问权限。
  • 经过控制台或使用 API 建立、部署并管理设备的证书和策略。这些设备证书能够预配置、激活和与使用 AWS IAM 配置的相关策略关联。
  • AWS IoT 还支持用户移动应用使用 Amazon Cognito 进行链接,Amazon Cognito 将负责执行必要的操做来为应用用户建立惟一标识符并获取临时的、权限受限的 AWS 凭证。

2.4 注册表

  • 注册表将建立设备标识并跟踪元数据,如设备的属性和功能。
  • 注册表向格式一致的每台设备分配惟一的标识,而无论设备的类型和链接方式为什么。此外,它还支持描述设备功能的元数据,例如传感器是否报告温度,以及数据是华氏度仍是摄氏度。
  • 注册表存储有关设备的元数据,无需支付额外费用;而且须要每隔 7 天至少访问或更新注册表条目一次,注册表中的元数据就不会过时。

JSON格式存储的设备注册表信息

 

 

2.5 设备影子

2.5.1 设备影子介绍

 

 

  • 设备影子保留每台设备的最后报告状态和指望的将来状态,即使设备处于离线状态。
  • 经过 API 或使用规则引擎,获取设备的最后报告状态或设置指望的将来状态。
  • 应用程序能够设置设备的指望将来状态,而无需说明设备的当前状态。AWS IoT 将比较指望将来状态和最后报告状态之间的差别,并命令设备"弥补差别"
  • 设备 SDK 可以轻松地同步其状态及其影子,并响应经过影子设置的指望的将来状态。
  • 设备影子免费存储设备状态多达一年。若是至少每一年更新一次状态,则设备影子将永久保留状态;不然状态将过时。

2.5.2 设备影子的流程

 

 

2.5.3 设备影子的格式

 

2.6 规则引擎

2.6.1 规则引擎介绍

 

 

  • 规则引擎验证发布到 AWS IoT 的入站消息,并根据定义的业务规则转换这些消息并将它们传输到另外一台设备或云服务。规则能够应用至一台或多台设备中的数据,而且它能够并行执行一个或多 个操做。
  • 规则引擎还能够将消息路由到 AWS 终端节点,包括 AWS LambdaAmazon KinesisAmazon S3Amazon Machine LearningAmazon DynamoDBAmazon CloudWatch 和内置 Kibana 集成的 Amazon Elasticsearch Service。外部终端节点可使用 AWS LambdaAmazon Kinesis Amazon Simple Notification Service (SNS) 进行链接。
  • 使用相似 SQL 的语句编写规则。例如:若是温度读数超出特定阈值,则它能够触发规则以便将数据传输到 AWS Lambda;若是此温度超出其余 5 台设备的平均值 15%,则应采起措施。
  • 规则引擎将提供数十个可用于转换数据的可用功能,而且能够经过 AWS Lambda 建立无限个功能。例如,若是正在处理各类不一样的数值,则能够取传入数字的平均值。规则还会触发在 AWS Lambda 中执行 JavaNode.js Python 代码,从而提供最高灵活度以及处理设备数据的能力。

 

 

2.6.2 规则引擎的做用

 

 

规则引擎验证发布至AWS IoT的消息请求,基于业务规则转换消息请求并发布至其它服务,例如:

1富集化或过滤从设备收集的数据

2将设备数据写入一个亚马逊DynamoDBm数据库

3保存文件至亚马逊S3

4发送一个推送通知到全部亚马逊SNS用户

5向亚马逊SQS队列发布数据

6调用Lambda函数抽取数据

7使用亚马逊Kinesis处理大量的设备消息数据

8发送数据至亚马逊Elasticsearch服务

9捕获一条CloudWatch测量数据

10更新一条CloudWatch告警

11把一条MQTT消息数据发送至亚马逊机器学习服务,基于亚马逊机器学习模型进行预测

2.6.2 实时流式数据处理

 

 

N:1 入站的传感器流式数据(数据降噪)

规则引擎过滤、转换、汇总传感器数据后,发送至亚马逊Kinesis处理实时流式数据

Kinesis流式数据共享至其它业务系统

将流式数据的实时处理结果导入至数据库、应用或其它亚马逊服务

2.6.3 推送服务

 

 

推送通知

支持苹果APNS推送通知服务、谷歌GCM云消息服务、亚马逊ADM设备消息服务,微软WNS推送服务

亚马逊SNS推送通知服务->HTTP协议终端(短信、邮件)

经过亚马逊SNS推送通知服务,调用第三方HTTP协议终端,支持订阅和重试

 

2.7 设备管理

 

 

  • 支持全球或部分地区的固件升级
  • 规则引擎在DynamoDBm数据库跟踪升级状态和进度
  • 注册表存储设备的固件版本

S3管理固件分发版本

S3中组织和保障和固件二进制文件

消息代理使用话题模式通知设备分组

通知设备分组固件更新信息,包括S3中的固件二进制文件URL地址

相关文章
相关标签/搜索