aws iot 最佳实践与应用场景 · 2017. 6. 27. · lambda amazon sns sqs amazon s3 dynamodb...

55
AWS中国(北京)区域由光环新网运营 AWS IoT 最佳实践与应用场景 AWS IoT Webinar 2 邹勇,AWS IoT平台业务拓展 陈雪杰,AWS解决方案架构师 2017613

Upload: others

Post on 08-Sep-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT 最佳实践与应用场景AWS IoT Webinar 2

邹勇,AWS IoT平台业务拓展陈雪杰,AWS解决方案架构师

2017年6月13日

Page 2: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

第一部分:AWS IoT 最佳实践

1. 采集与分析

2. 云端控制

3. 移动端控制

Page 3: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

设备SDK多种客户端连结库,进行身份

验证和交换信息

设备网关通过MQTT和HTTP与设备通信

认证身份验证和鉴权

规则引擎依据规则将数据传递给

后端AWS 服务

AWS 服务- - - - -

第三方服务

设备影子保存设备的状态

应用

AWS IoT API

注册设备管理

AWS IoT服务:工作原理

Page 4: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT

数据存储和分析

管理人员

传感器

执行器

示例: 物联网农场

自动化控制

Page 5: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

最佳实践1: 采集和分析

Page 6: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

管理人员执行器

自动化控制

AWS IoT

数据存储和分析

传感器

物联网农场

Page 7: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT 采集和分析

1. 连接设备

2. 发送数据

3. 收集和存储数据

4. 使用数据做分析

Page 8: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

设备影子保存设备的状态

应用

AWS IoT API

注册设备管理

AWS IoT采集和分析

设备SDK多种客户端连结库,进行身份

验证和交换信息

设备网关通过MQTT和HTTP与设备通信

认证身份验证和鉴权

规则引擎依据规则将数据传递给

后端AWS 服务

AWS 服务- - - - -

第三方服务

Page 9: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

1)连接设备

1. 提供证书

2. 附上策略

3. 通过MQTT连接通信

Page 10: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

2) 发送数据

PUBLISH macdonald/sensors/123 (qos: 0)

{

"timestamp": "2016-01-29T10:00:00",

"temperature": 55

"humidity": 39,

"ph": 6.7

}

Page 11: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

3) 收集数据

AWS IoT

数据存储和分析传感器?

Page 12: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

单个消费者(不要这样做!!)

AWS IoTinstance database

PUBLISH sensors/123

PUBLISH sensors/456

SUBSCRIBE sensors/+

PUBLISH sensors/789

Page 13: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

不要这样做: 扩展性

AWS IoTinstance

SUBSCRIBE #

Page 14: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

不要这样做: 可用性

AWS IoTinstance

Page 15: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT

不要这样做: 可维护性

Page 16: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

把数据存在设备影子 (不要这样做!!)

传感器

设备影子

Page 17: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

1. AWS 服务(直接集成)

Rules Engine

操作

AWS IoT规则引擎

AWS

LambdaAmazon

SNS

Amazon

SQS

Amazon

S3

Amazon

Kinesis

Amazon

DynamoDB Amazon RDS

Amazon

Redshift

Amazon Glacier

Amazon

EC2

3. 外部终端节点(通过 Lambda 和 SNS)

Rules Engine 将 AWS IoT 连接到外部终端节点和 AWS 服务。

2. AWS 的其余部分(通过 Amazon Kinesis、AWS Lambda、Amazon S3

及其他服务)

Page 18: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

简单且熟悉的语法

- 使用SQL语句来定义筛选条件

- 可选 WHERE 子句

函数改进了信号/噪音

- 字符串操作(正则表达式支持)

- 数学运算

- 基于上下文的函数

- UUID、Timestamp、rand 等

AWS IoT规则引擎基本知识

SELECT * FROM ‘things/thing-2/color’

WHERE color = ‘red’

SELECT DATA FROM TOPIC WHERE FILTER

Page 19: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT规则引擎

复杂计算

数十种 functions() 可用

多个/同时操作

有时一种情况需要您采取多种操作

Page 20: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

规则引擎示例{

"rule": {"sql": "SELECT * AS message FROM 'sensors/#'","description": "Store all sensor data into dynamodb and firehose","actions": [{

"dynamoDB": {"tableName": "sensor_data","roleArn": "arn:aws:iam::123456789012:role/aws_iot_dynamoDB","hashKeyField": "sensor_id","hashKeyValue": "${topic(2)}","rangeKeyField": "timestamp“"rangeKeyValue": "${timestamp()}",

}}, {

"firehose": {"roleArn": "arn:aws:iam::123456789012:role/aws_iot_firehose","deliveryStreamName": "my_firehose_stream"

}}]

}}

Page 21: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT规则引擎的操作

Rules Engine 对发布到 AWS IoT

的入站消息,根据业务规则转换这些消息并传输到适当的终端节点。

外部终端节点可以通过 Lambda

和 Simple Notification Service

(SNS) 进行访问。

调用 Lambda 函数

在 S3 存储桶中放置对象

向DynamoDB 表插入、更新和读取

发布到 SNS 主题或终端节点

发布到 Amazon Kinesis 流

操作

Amazon Kinesis Firehose

重新发布到 AWS IoT

Page 22: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT Rules Engine 和 Amazon SNS

推送通知

Apple APNS 终端节点、Google GCM 终端节点、Amazon ADM 终端节点、Windows WNS

Amazon SNS -> HTTP 终端节点(或 SMS 或电子邮件)

通过支持订阅和重试功能的 SNS 调用基于 HTTP 的第三方终端节点

SNS

2

Page 23: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

解决数据放哪里的问题

想要持久大量的分析查询?

使用Amazon Kinesis Firehose 把数据导入Amazon

Redshift

需要快速的查询?

写到DynamoDB, 必要时加上索引

需要重度的分析查询?

使用 Kinesis Firehose & S3, 后期通过Amazon EMR分析

Page 24: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

Takeaways

• 避免单个MQTT 消费者架构

• 使用规则引擎将数据传输到AWS的其他服务

• 并行地将数据导入多个存储服务

• 避免在设备影子上做分析

Page 25: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

最佳实践 2: 云端控制

Page 26: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

管理人员

AWS IoT

数据存储和分析

传感器

物联网农场

执行器

自动化控制

Page 27: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

自动洒水服务

Amazon

Kinesis

Amazon Machine

Learning

Amazon

Redshift

Rules

EngineDevice

Gateway

传感器

洒水器

Amazon Kinesis–

enabled app

Page 28: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

控制洒水器

Amazon

Kinesis

Amazon Machine

Learning

Amazon

Redshift

Rules

Engine

传感器

Device

Gateway

洒水器

Amazon Kinesis–

enabled app

Page 29: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

直接发布控制指令到设备 (不要这样做!!)

设备网关Control

logic

PUBLISHmacdonald/sprinkler-456{ "water": "on" }

设备

Page 30: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

设备影子-简单有效

设备 控制

当前状态

预期状态

MQTTHTTP/REST

WebSockets

Page 31: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT 设备影子工作原理

Shadow

Device SDK

1.设备发布当前状态

2.持久化JSON 数据存储

3.应用程序请求设备的当前状态

4.应用程序请求更改设备状态5. 设备影子同步更新的状态

6.设备发布当前状态7.设备影子确认状态更改

AWS IoT

Page 32: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

设备影子和版本

洒水器

控制逻辑

on (version=1)

off (version=2)

Device

Gateway

off (version=2)

on (version=1)

(old message ignored by device)

Page 33: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

Takeaways

• 设计时要考虑到连接间断问题

• 通过设备影子给设备发送命令

• 通过设备影子查询设备状态

• 通过版本控制并发性

Page 34: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

最佳实践3: 移动端控制

Page 35: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

数据存储和分析

传感器

重新回来讨论洒水器: 移动控制

自动化控制

管理人员

AWS IoT

执行器

Page 36: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT API

注册设备管理

AWS IoT移动控制

设备SDK多种客户端连结库,进行身份

验证和交换信息

设备网关通过MQTT和HTTP与设备通信

认证身份验证和鉴权

规则引擎依据规则将数据传递给

后端AWS 服务

AWS 服务- - - - -

第三方服务

设备影子保存设备的状态

应用

Page 37: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

IoT结合Cognito

应用程序

AMAZON

COGNITO授权API

配置设备和用户权限

终端用户(farmer)

设备影子保存设备的状态

Page 38: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

IoT结合Cognito 的策略示例

Cognito identity pool policy:{

"Effect": "Allow","Action": "iot:*","Resource": "*"

}

Specific policy for Old Macdonald Cognito user:{

"Effect": "Allow","Action": "iot:UpdateThingShadow","Resource": "arn:aws:iot:…:thing/macdonald-sprinkler123"

}

AWS IoT

Amazon

Cognito

Page 39: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

管理更加细力度的权限

• 但是一个“farm owner” 需要很多设备影子的权限• "arn:aws:iot:…:thing/sprinkler123abc"

• "arn:aws:iot:…:thing/sprinkler456def"

• …

• 如果每个都在policy列出来太繁琐

Page 40: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

最佳实践: 给Thing名字添加前缀

• 给thing名字增加逻辑前缀

• sensor123abc -> macdonald-sensor123abc

• 策略中使用通配符

• "arn:aws:iot:…:thing/sensor123abc"

• "arn:aws:iot:…:thing/sensor123abc"

• "arn:aws:iot:…:thing/sensor456def"

• …

• "arn:aws:iot:…:thing/macdonald-*"

Page 41: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

Takeaways

• 使用Cognito确保移动应用的安全问题

• IoT 策略缩小支持细力度控制

• Thing的命名可以简化策略管理

• 权限的设定在实践过程中比较复杂,需要慢慢的摸索

Page 42: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

第二部分:应用场景

1. 即时注册

2. 物联网数据分析与可视化

Page 43: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

应用场景1:即时注册

Page 44: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

如何方便快速地接入物联网?

“2016年的每一天中都有5.5M“物”接入物联网” –

Gartner, Inc.

Page 45: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

总体架构

命令与控制

手机终端

安利“物”

AWS

IoT

Device

Shadow

Historian

Topic

IoT

Topic

AWS

LambdaAmazon

DynamoDB

Historian

Rule

IoT

Rule

Amazon

Kinesis

Firehose

Amazon

EMR

Amazon

S3

Amazon

DynamoDB

JITR

Amazon

Cognito

Amazon API

Gateway

AWS

Lambda

采集与分析

固件更新

手机与物配对

即时注册

Page 46: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

即时注册

安利“物”

Device

Registry

$aws/events/certific

ates/registered/caC

ertificateID

IoT

actionAWS

Lambda

Amazon

DynamoDB

Custom/{SHA256}IoT

actionAWS

Lambda

Amazon

DynamoDB

Robust IoT

policy

2

3 4 5

67

1

6

9

9

AWS

IoT

8

Basic IoT

policy

IoT

shadow

Custom/accepted

X

Page 47: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

应用场景2: 物联网数据分析与可视化

Page 48: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

1. AWS 服务(直接集成)

规则引擎

行动

AWS IoT 规则引擎

AWS

LambdaAmazon

SNS

Amazon

SQS

Amazon

S3

Amazon

Kinesis

Amazon

DynamoDB Amazon RDS

Amazon Redshift

Amazon Glacier

Amazon EC2

3. 外部终端节点(通过Lambda和SNS)

Rules Engine将AWS IoT连接到外部终端节点以及AWS

其它服务

2. 其它服务(通过Amazon Kinesis, AWS

Lambda, Amazon S3和其它服务)

Page 49: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

AWS IoT & Amazon Kinesis

• 物联网数据收集与转发:IoT Rules Engine

• 数据获取与分析:Amazon Kinesis, AWS Lambda

• 可视化:Amazon Elasticsearch & Kibana, Custom

Visualizations

Page 50: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

第一步: 设备数据 -> AWS IoT

Str

eam

Shard

Shard

Shard

Amazon

Kinesis

IoT

rule

IoT

action

AWS IoTMeterManager

Thing

Sends data to the

Stream

Amazon ES

Amazon API

Gateway

AWS

Lambda

Page 51: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

第二步: AWS IoT -> Amazon Kinesis

Str

eam

Shard

Shard

Shard

Amazon

Kinesis

IoT

rule

IoT

action

AWS IoTMeterManager

Thing

Sends data to the

Stream

Amazon ES

Amazon API

Gateway

AWS

Lambda

Page 52: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

第三步: Amazon Kinesis -> Amazon Elasticsearch (via

AWS Lambda)

Str

eam

Shard

Shard

Shard

Amazon

Kinesis

IoT

rule

IoT

action

AWS IoTMeterManager

Thing

Sends data to the

Stream

Amazon ES

Amazon API

Gateway

AWS

Lambda

Page 53: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

Part IV: 通过Kibana实现可视化

Str

eam

Shard

Shard

Shard

Amazon

Kinesis

IoT

rule

IoT

action

AWS IoTMeterManager

Thing

Sends data to the

Stream

Amazon ES

Amazon API

Gateway

AWS

Lambda

Page 54: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

Part V: Custom Visualization with Amazon API

Gateway and AWS Lambda

Str

eam

Shard

Shard

Shard

Amazon

Kinesis

IoT

rule

IoT

action

AWS IoTMeterManager

Thing

Sends data to the

Stream

Amazon ES

Amazon API

Gateway

AWS

Lambda

Page 55: AWS IoT 最佳实践与应用场景 · 2017. 6. 27. · Lambda Amazon SNS SQS Amazon S3 DynamoDB Kinesis Amazon RDS Amazon Redshift Amazon Glacier EC2 3. 外部终端节点 (通过Lambda

AWS中国(北京)区域由光环新网运营

总结

• AWS IoT最佳实践• 采集与分析

• 云端控制

• 移动端控制

• AWS IoT应用场景• 即时注册

• 物联网数据分析与可视化 谢谢!