本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon IoT Greengrass 的工作原理
这些区域有:Amazon IoT Greengrass客户机软件,也称为Amazon IoT Greengrass核心软件可在基于 Windows 和 Linux 的发行版(例如 Ubuntu 或 Raspberry Pi OS)上运行,适用于具有 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 e e e e Greengrass 核心设备是AmazonIoT 事物。您可以将多个核心e 设备添加到Amazon IoT事物组,用于创建和管理 Greengrass 核心设备组。有关更多信息,请参阅 设置Amazon IoT Greengrass核心设备。
- Greengrass 客户端设备
-
一种通过 MQTT 连接到 Greengrass 核心设备并与之通信的设备。Greengrass 客户端设备是Amazon IoTthing 核心设备可以处理、筛选和聚合来自与其连接的客户端设备的数据。您可以将核心设备配置为在客户端设备之间中继 MQTT 消息,Amazon IoT Core云服务和 Greengrass 组件。有关更多信息,请参阅 与本地 IoT 设备互动。
客户端设备可以运行FreeRTOS或者使用Amazon IoT Device SDK要么Greengrass 发现 AP以获取有关它们可以连接的核心设备的信息。
- Greengrass
-
部署到Greengrass 核心设备并在其中运行的软件模块。所有使用开发和部署的软件Amazon IoT Greengrass被建模为一个组件。Amazon IoT Greengrass提供了预构建的公共组件,这些组件提供了可在应用程序中使用的特性和功能。您还可以在本地设备或云端开发自己的自定义组件。在开发了自定义组件后,您可以使用Amazon IoT Greengrass云服务将其部署到单个或多个核心设备。您可以创建自定义组件并将该组件部署到核心设备。当您这样做时,核心设备会下载以下资源来运行组件:
-
Recipe:通过定义组件详细信息、配置和参数来描述软件模块的 JSON 或 YAML 文件。
-
Artifact:定义将在设备上运行的软件的源代码、二进制文件或脚本。您可以从头开始创建项目,也可以使用 Lambda 函数、Docker 容器或自定义运行时创建组件。
-
依赖关系:组件之间的关系,使您能够强制自动更新或重新启动从属组件。例如,您可以使用依赖于加密组件的安全消息处理组件。这样可以确保对加密组件的任何更新都会自动更新并重新启动消息处理组件。
有关更多信息,请参阅 Amazon-提供的组件 和 开发Amazon IoT Greengrass组件。
-
- 部署
-
发送组件并将所需组件配置应用到目标目标设备(可以是单个 Greengrass 核心设备或一组 Greengrass 核心设备)的过程。部署会自动将任何更新的组件配置应用到目标,并包括定义为依赖关系的任何其他组件。您还可以克隆现有部署以创建使用相同组件但部署到不同目标的新部署。部署是连续的,这意味着您对部署的组件或组件配置所做的任何更新都会自动发送到所有目标目标。有关更多信息,请参阅 将Amazon IoT Greengrass组件部署到设备。
- Amazon IoT GreengrassCore 软件
-
全部的集合Amazon IoT Greengrass您在核心设备上安装的软件。Amazon IoT GreengrassCore e e e e e e e
-
Nucleus:这个必需的组件提供了Amazon IoT GreengrassCore e e e e 核心管理其他组件的部署、编排和生命周期管理。它还促进了两者之间的沟通Amazon IoT Greengrass单个设备上的本地组件。有关更多信息,请参阅 绿草核。
-
可选组件:这些可配置组件由Amazon IoT Greengrass并在边缘设备上启用其他功能。根据您的要求,您可以选择要部署到设备上的可选组件,例如数据流、本地机器学习推理或本地命令行界面。有关更多信息,请参阅 Amazon-提供的组件。
你可以升级Amazon IoT Greengrass通过在设备上部署新版本的组件来实现核心软件。
-
Amazon IoT Greengrass 的功能
Amazon IoT Greengrass Version 2包含以下元素:
-
软件分发
-
这些区域有:Greengrass 核组件,这是最小安装的Amazon IoT GreengrassCore e e e e 此组件管理 Greengrass 组件的部署、编排和生命周期管理。
-
其他可选Amazon-提供的组件与服务、协议和软件集成。
-
Greengrass 开发工具,您可以使用它来创建、测试、构建、发布和部署自定义 Greengrass 组件。
-
这些区域有:Amazon IoT Device SDK,其中包含进程间通信 (IPC) 库用于自定义 Greengrass 组件和Greengrass Di用于客户端设备。
-
流管理器 SDK,你可以用它来管理数据流在核心e 设备上。
-
-
云服务
-
Amazon IoT Greengrass V2 API
-
Amazon IoT Greengrass V2 控制台
-
Amazon IoT Greengrass Core 软件
您可以使用Amazon IoT Greengrass在边缘设备上运行的核心软件可执行以下操作:
-
在本地设备上处理数据流,并自动导出到Amazon云计算。有关更多信息,请参阅 管理 Greengrass 核心设备上的数据流。
-
Support 之间的 MQTT 消息传递Amazon IoT和组件。有关更多信息,请参阅 发布/订阅Amazon IoT CoreMQTT 消息。
-
与通过 MQTT 进行连接和通信的本地设备进行交互。有关更多信息,请参阅 与本地 IoT 设备互动。
-
Support 组件之间的本地发布和订阅消息。有关更多信息,请参阅 发布/订阅本地消息。
-
部署和调用组件和 Lambda 函数。有关更多信息,请参阅 将Amazon IoT Greengrass组件部署到设备。
-
管理组件生命周期,例如支持安装和运行脚本。有关更多信息,请参阅 Amazon IoT Greengrass组件配方参考。
-
执行安全的 over-the-air (OTA) 软件更新Amazon IoT Greengrass核心软件和定制组件。有关更多信息,请参阅 更新Amazon IoT Greengrass核心软件 (OTA) 和 将Amazon IoT Greengrass组件部署到设备。
-
提供本地密钥的安全、加密的存储以及组件进行的受控访问。有关更多信息,请参阅 秘密经理。
-
确保设备和之间的安全连接Amazon云具有设备身份验证和授权。有关更多信息,请参阅 Amazon IoT Greengrass 的设备身份验证和授权。
您可以通过以下方式配置和管理 Greengrass 核心设备Amazon IoT Greengrass用于创建持续软件部署的 API。有关更多信息,请参阅 将Amazon IoT Greengrass组件部署到设备。
某些功能仅在某些平台上受支持。有关更多信息,请参阅 不同操作系统的 Greengrass 功能兼容性。
有关支持的平台、要求和下载的更多信息,请参阅设置Amazon IoT Greengrass核心设备.
一旦下载此软件,即表示您同意Greengrass 核心软件许可协议