本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon IoT Greengrass 的工作原理
这些区域有:Amazon IoT Greengrass客户端软件,也称为Amazon IoT Greengrass核心软件在基于 Linux 的发行版上运行,例如 Ubuntu 或覆盆子派操作系统,适用于具有 ARM 或 x86 架构的设备。与Amazon IoT Greengrass中,您可以对设备进行编程,以便对其生成的数据进行本地操作,基于机器学习模型运行预测,以及过滤和聚合设备数据。Amazon IoT Greengrass启用本地执行Amazon Lambda函数、Docker 容器、本机操作系统进程或您选择的自定义运行时。
Amazon IoT Greengrass提供了称为组件的预构建软件模块,可让您轻松扩展边缘设备功能。Amazon IoT Greengrass组件使您能够连接到Amazon服务和第三方应用程序。在您开发 IoT 应用程序后,Amazon IoT Greengrass使您能够在现场设备队列上远程部署、配置和管理这些应用程序。
下面的示例演示了操作方法Amazon IoT Greengrass设备与Amazon IoT Greengrass云服务和其他Amazon中的服务Amazon Web Services 云.

的主要概念Amazon IoT Greengrass
以下是理解和使用Amazon IoT Greengrass:
- Greengrass 核心设备
-
运行Amazon IoT GreengrassCore 软件。Greengrass 的核心设备是AmazonIoT 事物。您可以将多个核心设备添加到Amazon IoT事物组来创建和管理 Greengrass 核心设备组。有关更多信息,请参阅 设置Amazon IoT Greengrass核心设备。
- Greengrass 客户端设备
-
通过 MQTT 连接到 Greengrass 核心设备并与其进行通信的设备。Greengrass 客户端设备是Amazon IoT事物。核心设备可以处理、过滤和聚合连接到该设备的客户端设备中的数据。您可以将核心设备配置为在客户端设备之间中继 MQTT 消息,Amazon IoT Core云服务和 Greengrass 组件。有关更多信息,请参阅 与本地 IoT 设备进行交互。
客户端设备可以运行FreeRTOS或使用Amazon IoT Device SDK或者Greengrass 发现 API以获取有关核心设备可以连接的信息。
- Greengrass 组件
-
部署到 Greengrass 核心设备并在其上运行的软件模块。开发和部署的所有软件都是Amazon IoT Greengrass被建模为一个组件。Amazon IoT Greengrass提供了预构建的公共组件,它们提供了可在应用程序中使用的特性和功能。您还可以在本地设备或云中开发自己的自定义组件。在开发自定义组件后,您可以使用Amazon IoT Greengrass云服务将其部署到单个或多个核心设备。您可以创建自定义组件并将该组件部署到核心设备。执行此操作时,核心设备将下载以下资源来运行组件:
-
Recipe:通过定义组件详细信息、配置和参数来描述软件模块的 JSON 或 YAML 文件。
-
Artifact:定义将在设备上运行的软件的源代码、二进制文件或脚本。您可以从头开始创建工件,也可以使用 Lambda 函数、Docker 容器或自定义运行时创建组件。
-
依赖关系:组件之间的关系,使您能够强制执行从属组件的自动更新或重新启动。例如,您可以有一个依赖于加密组件的安全邮件处理组件。这可确保对加密组件的任何更新自动更新并重新启动消息处理组件。
有关更多信息,请参阅 ManageAmazon IoT Greengrass组件。
-
- 部署
-
将组件发送并将所需组件配置应用到目标目标设备(可以是单个 Greengrass 核心设备或一组 Greengrass 核心设备)的过程。部署会自动将任何更新的组件配置应用到目标,并包括定义为依赖关系的任何其他组件。您还可以克隆现有部署以创建使用相同组件但部署到不同目标的新部署。部署是连续的,这意味着对部署的组件或组件配置所做的任何更新都会自动发送到所有目标目标。有关更多信息,请参阅 部署Amazon IoT Greengrass组件到设备。
- Amazon IoT Greengrass Core 软件
-
所有的集合Amazon IoT Greengrass安装在核心设备上的软件。Amazon IoT GreengrassCore 软件包含以下各项:
-
核:这个必需的组件提供了Amazon IoT GreengrassCore 软件。该核心管理其他组件的部署、编排和生命周期管理。它还有利于Amazon IoT Greengrass组件在单个设备上本地。有关更多信息,请参阅 Greengrass 核心。
-
可选组件:这些可配置组件由Amazon IoT Greengrass并在边缘设备上启用其他功能。根据您的要求,您可以选择要部署到设备的可选组件,例如数据流、本地机器学习推理或本地命令行界面。有关更多信息,请参阅 Amazon-提供的组件。
您可以升级Amazon IoT Greengrass通过将组件的新版本部署到您的设备来核心软件。
-
Amazon IoT Greengrass 的功能
Amazon IoT Greengrass Version 2包含以下元素:
-
软件分发
-
Greengrass 核组件,这是Amazon IoT GreengrassCore 软件。此组件管理 Greengrass 组件的部署、编排和生命周期管理。
-
提供的其他可选组件Amazon,该软件集成了服务、协议和软件。
-
这些区域有:Amazon IoT Device SDK,其中包含用于客户端设备的进程间通信 (IPC) SDK 和 Greengrass 发现 SDK。
-
流管理器 SDK。
-
-
云服务
-
Amazon IoT Greengrass V2 API
-
Amazon IoT Greengrass V2 控制台
-
Amazon IoT Greengrass Core 软件
您可以使用Amazon IoT Greengrass在边缘设备上运行的核心软件可执行以下操作:
-
在本地设备上处理数据流,并自动导出到Amazon云。有关更多信息,请参阅 在上管理数据流Amazon IoT Greengrass核心实例。
-
Support MQTT 消息传送Amazon IoT和组件. 有关更多信息,请参阅 发布/订阅Amazon IoT CoreMQTT 消息。
-
与通过 MQTT 连接和通信的本地设备进行交互。有关更多信息,请参阅 与本地 IoT 设备进行交互。
-
Support 组件之间的本地发布和订阅消息。有关更多信息,请参阅 发布/订阅本地消息。
-
部署和调用组件和 Lambda 函数。有关更多信息,请参阅 部署Amazon IoT Greengrass组件到设备。
-
管理组件生命周期,例如支持安装和运行脚本。有关更多信息,请参阅 Amazon IoT Greengrass组件配方参考。
-
执行安全、无线 (OTA) 软件更新Amazon IoT Greengrass核心软件和定制组件。有关更多信息,请参阅 更新Amazon IoT Greengrass核心软件 (OTA) 和 部署Amazon IoT Greengrass组件到设备。
-
提供本地密钥的安全、加密的存储以及组件的受控访问。有关更多信息,请参阅 Secret Manager。
-
设备和Amazon云设备身份验证和授权。有关更多信息,请参阅 Amazon IoT Greengrass 的设备身份验证和授权。
您可 Greengrass 通过Amazon IoT Greengrass用于创建连续软件部署的 API。有关更多信息,请参阅 部署Amazon IoT Greengrass组件到设备。
有关支持的平台、要求和下载的更多信息,请参阅设置Amazon IoT Greengrass核心设备.
下载此软件即表示您同意Greengrass 核心软件许可协议