AWS Greengrass (2) 实现架构

1、Greengrass 组件 

首先,需要明确一点,greengrass 是一套软件,不是硬件。 需要部署到一个稍微有点计算和处理能力的设备上,比如是一个网关设备。

一般来说,greengrass 的协同工作的架构如下:

greengrass 协调工作的两个组件:Greengrass Core 和 AWS IOT SDK 。云端的部分由AWS维护的,这里不多介绍。

Greengrass Core (GGC)需要安装在一个 稍微大一点的设备上,因为需要有一定的计算能力。

AWS IOT SDK 需要安装到事物端的设备上,很小很小的,或者你要控制的设备上,这些设备 通过 SDK 就可以和 greengrass core 进行通信。

 

2、Greengrass Core (GGC)

      greengrass core 其实是提供一个 lamada 运行环境 runtime , 负责 lamada 函数的执行,事件消息的收发、调度。影子设备的管理,安全性,以及和云端的交互。

3、GGC 和 IOT SDK 对设备要求

  • 可用于 AWS IoT Greengrass Core 软件的磁盘空间不少于 128 MB。如果您使用 OTA 更新代理,则不能少于 400 MB.

  • 分配给 AWS IoT Greengrass 核心软件的最少 128 MB 内存。启用流管理器后,最小 RAM 为 198 MB。

使用此 AWS 开发工具包可构建与任何 AWS 服务(包括 Amazon S3、Amazon DynamoDB、AWS IoT、AWS IoT Greengrass 等)交互的应用程序。在 AWS IoT Greengrass 的上下文中,您可以使用已部署的 Lambda 函数中的 AWS 开发工具包对任何 AWS 服务进行直接调用。

4、greengrass 组的概念

     一个 greengrass 组 由一个安装 greengrass core的设备 , 和 一些装有 IOT SDK 的设备 组成。只有在组里,才可以正常工作。

5、本地设备和云端是如何通信呢?

当我们把数据送到云端,还有用到云端的很多服务和功能,那么 本地设备和云端是怎么通信呢?

greengrass 与云端通信有两种方式,第一种,AWS 建立了一个 IOT Platform 的接口,这个接口是长期存在的, 只要你的 本地设备的 Internet 还在,你就可以源源不断的上云上传输数据, 当你的数据传到云上之后,就可以使用 AWS IOT 平台上的各种服务了。第二种方式,本地执行的lamda函数,也可以直接和云端的其他 AWS 服务进行交互。

 

6、AWS greengrass 的技术特性

  • 本地 lambda

lambda 是一个特殊的程序,基于事件驱动的程序。 云端编程,本地部署。程序的逻辑是你自己写的,你可以发布一个命令,报警,可以控制一些设备等等。

AWS  greengrass 可运行 很多语言类型的程序,

这里说一下,lambda 可以使你的设备更加的智能化,随着设备运行的时间越来越长,云端积累的数据也越来越多,在云端可以进行大数据分析,机器学习,不断的优化模型,形成一个决策树,可以更好的预测,也就更加智能。比如决策树可以及时的告诉你,你的设备需要清理灰尘了,再不清理就要坏掉了。随着云端数据的积累,不断优化模型,根据优化的模型,可以随时调整本地的lambda函数(这个过程可以自动从云端空降到设备),可以更好的调整 设备的 behavior 。设备更加智能化。

 

  • 影子 shadow 

只要是合乎逻辑的东西,都可以定义为一个 shadow ,

可以是一个 事物(设备、汽车等),也可以定义一个 lambda 函数的 shadow ,  就是一个事物的投影,状态的描述,所以叫做影子。影子可以代表设备的状态、Lambda 函数的状态等等。

------ 实际上是一个 JSON 文档。

 

利用影子,我们可以快速的改变设备的状态,可以同步到云,可双向,可单向。

 

  • 消息收发 

使用MQTT 协议来做的。

  • 安全性

第1 ,云端和本地,还是本地与本地的通信,都是需要安全的认证。

第2,可将设备上的证书,关联到云端的 sigv4 凭证(token),这个 token 是非常关键的,只要你提供了一个有效的 token ,你本地的lambda 才可以调用的服务,才可以和云端进行交互

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值