什么是 Amazon IoT Greengrass? - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

您正在查看Amazon IoT Greengrass Version 1.Amazon IoT Greengrass Version 2是最新的主要版本Amazon IoT Greengrass. 有关使用Amazon IoT Greengrass V2,请参阅Amazon IoT Greengrass Version 2开发人员指南.

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

什么是 Amazon IoT Greengrass?

Amazon IoT Greengrass 是将云功能扩展到本地设备的软件。这使得设备可以更靠近信息源来收集和分析数据,自主响应本地事件,同时在本地网络上彼此安全地通信。本地设备还可以安全地与 Amazon IoT Core 并将 IoT 数据导出到 Amazon Web Services 云 .Amazon IoT Greengrass开发人员可以使用Amazon Lambda函数和预构建连接器以创建部署到设备以进行本地执行的无服务器应用程序。

下图演示了 Amazon IoT Greengrass 的基本架构。

Amazon IoT Greengrass 使客户能够构建 IoT 设备和应用程序逻辑。具体来说,Amazon IoT Greengrass 对设备上运行的应用程序逻辑提供基于云的管理。在本地部署的 Lambda 函数和连接器通过本地事件以及来自云或其他来源的消息触发。

在 Amazon IoT Greengrass 中,设备可在本地网络上安全地通信并互相交换消息而不必连接到云。Amazon IoT Greengrass 提供了一个本地发布/订阅消息管理器,该管理器可在丢失连接的情况下智能地缓冲消息,使云的入站和出站消息得到保留。

Amazon IoT Greengrass 保护用户数据:

  • 通过安全的设备身份验证和授权。

  • 通过本地网络中的安全连接。

  • 在本地设备与云之间。

设备安全凭证在撤销之前一直在组中有效,即使到云的连接中断,设备可以继续在本地安全地进行通信。

Amazon IoT Greengrass提供了 Lambda 函数的安全、无线更新。

Amazon IoT Greengrass 包含以下内容:

  • 软件分发

    • Amazon IoT Greengrass Core 软件

    • Amazon IoT Greengrass 核心开发工具包

  • 云服务

    • Amazon IoT Greengrass API

  • 功能

    • Lambda 运行时

    • 影子实施

    • 消息管理器

    • 组管理

    • 发现服务

    • 无线更新代理

    • 流管理器

    • 本地资源访问

    • 本地机器学习推理

    • 本地 Secrets Manager

    • 内置集成了服务、协议和软件的连接器

Amazon IoT Greengrass Core 软件

Amazon IoT Greengrass Core 软件提供了以下功能:

  • 连接器和 Lambda 函数的部署和本地运行。

  • 在本地处理数据流,并自动导出到 Amazon Web Services 云 .

  • 使用托管订阅通过本地网络在设备、连接器和 Lambda 函数之间进行的 MQTT 消息传递。

  • MQTT 消息传递Amazon IoT和使用托管订阅的设备、连接器和 Lambda 函数。

  • 设备和 Amazon Web Services 云 使用设备身份验证和授权。

  • 设备的本地影子同步。影子可配置为与 Amazon Web Services 云 .

  • 对本地设备和卷资源的受控访问。

  • 用于运行本地推理的云训练机器学习模型的部署。

  • 使设备能够发现 Greengrass 核心设备的自动 IP 地址检测。

  • 全新的或更新的组配置的集中部署。下载配置数据后,核心设备将自动重启。

  • 用户定义的 Lambda 函数的安全、无线 (OTA) 软件更新。

Amazon IoT Greengrass核心实例通过Amazon IoT Greengrass用于创建和更新的 APIAmazon IoT Greengrass组定义。

Amazon IoT Greengrass Core 软件版本

Amazon IoT Greengrass 提供了多种选项用于安装 Amazon IoT Greengrass Core 软件,包括 targ.gz 下载文件、快速启动脚本,以及在支持的 Debian 平台上安装 apt。有关更多信息,请参阅安装 Amazon IoT Greengrass Core 软件

以下选项卡介绍了 Amazon IoT Greengrass Core 软件版本的新增功能和更改。

GGC v1.11
1.11.3

错误修复和改进:

  • 修复了导致Amazon IoT Greengrass在 Ubuntu 设备上一个快照中运行的核心软件,以便在设备突然断电后停止响应。

  • 修复了导致 MQTT 消息传递延迟到长寿命 Lambda 函数的问题。

  • 修复了一个导致 MQTT 消息不正常发送的问题,该问题是在maxWorkItemCount将设置为一个大于1024.

  • 修复了导致 OTA 更新代理忽略 MQTT 的问题KeepAlive中指定的期间keepAlive属性config.json.

  • 常规性能改进和错误修复。

注意

如果您使用流管理器将数据导出到云,则无法升级到Amazon IoT Greengrass核心软件 1.11.3 版本来自较早版本的版本。当您尝试 OTA 更新时,流管理器不会启动,并且更新失败。如果您正在安装Amazon IoT Greengrass首次核心软件,我们强烈建议您部署最新版本的软件。

1.11.1

错误修复和改进:

  • 修复了导致流管理器的内存使用增加的问题。

  • 修复了导致流管理器将流序列号重置为0如果 Greengrass 核心设备关闭时间长于流数据的指定生存时间 (TTL) 期间 (TTL) 期间。

  • 修复了导致流管理器无法正确停止将数据导出到 Amazon Web Services 云 .

1.11.0

新功能:

  • Greengrass 核心上的遥测代理收集本地遥测数据并将其发布到 Amazon Web Services 云 . 要检索遥测数据以便进一步处理,买家可以创建 Amazon EventBridge 规则并订阅目标。有关更多信息,请参阅 。收集系统运行状况遥测数据Amazon IoT Greengrass核心设备.

  • 本地 HTTP API 返回由Amazon IoT Greengrass. 有关更多信息,请参阅 。调用本地运行状况检查 API.

  • A流管理器将数据导出到 Amazon S3 和Amazon IoT SiteWise.

    New流管理器参数允许您更新现有流并暂停或恢复数据导出。

  • Support 在核心上运行 Python 3.8.x Lambda 函数。

  • ggDaemonPort属性config.json,用于配置 Greengrass 核心 IPC 端口号。默认端口号为 8000。

    systemComponentAuthTimeout属性config.json用于配置 Greengrass 核心 IPC 身份验证的超时时间。默认超时间为 5000 毫秒。

  • 增加了最大数Amazon IoT每个设备Amazon IoT Greengrass组从 200 到 2500 个。

    每组的最大订阅数从 1000 增加到 10000。

    有关更多信息,请参阅 Amazon IoT Greengrass 终端节点和配额

错误修复和改进:

  • 一般优化,可以降低 Greengrass 服务进程的内存利用率。

  • 一个新的运行时配置参数 (mountAllBlockDevices)允许 Greengrass 在设置 OverlayFS 后使用绑定挂载将所有块设备挂载到容器中。此功能解决了导致 Greengrass 部署失败的问题,如果/usr不在/层次结构。

  • 修复了导致Amazon IoT Greengrass如果出现核心故障/tmp是符号链接。

  • 修复了让 Greengrass 部署代理从mlmodel_publicfolder。

  • 常规性能改进和错误修复。

GGC v1.10
1.10.4

错误修复和改进:

  • 修复了导致Amazon IoT Greengrass在 Ubuntu 设备上一个快照中运行的核心软件,以便在设备突然断电后停止响应。

  • 修复了导致 MQTT 消息传递延迟到长寿命 Lambda 函数的问题。

  • 修复了一个导致 MQTT 消息不正常发送的问题,该问题是在maxWorkItemCount将设置为一个大于1024.

  • 修复了导致 OTA 更新代理忽略 MQTT 的问题KeepAlive中指定的期间keepAlive属性config.json.

  • 常规性能改进和错误修复。

1.10.3

错误修复和改进:

  • systemComponentAuthTimeout属性config.json用于配置 Greengrass 核心 IPC 身份验证的超时时间。默认超时间为 5000 毫秒。

  • 修复了导致流管理器的内存使用增加的问题。

1.10.2

错误修复和改进:

  • mqttOperationTimeout属性config.json用于在 MQTT 连接中的发布、订阅和取消订阅操作的超时 Amazon IoT Core .

  • 常规性能改进和错误修复。

1.10.1

错误修复和改进:

  • 流管理器对文件数据损坏更具弹性。

  • 修复了导致使用 Linux 内核 5.1 及更高版本的设备上系统安装失败的问题。

  • 常规性能改进和错误修复。

1.10.0

新功能:

  • 具有硬件安全集成的无线 (OTA) 更新可以通过 OpenSSL 1.1 进行配置。

  • 常规性能改进和错误修复。

Deprecated versions
1.9.4

错误修复和改进:

  • 常规性能改进和错误修复。

1.9.3

新功能:

  • 支持 Armv6l。Amazon IoT Greengrass核心软件 v1.9.3 或更高版本可在 Armv6l 架构上的 Raspbian 发行版中安装(例如,在 Raspberry Pi Zero 设备上)。

  • OTA 在端口 443 上使用 ALPN 进行更新。使用端口 443 处理 MQTT 流量的 Greengrass 核心现在支持无线 (OTA) 软件更新。Amazon IoT Greengrass 使用应用层协议网络 (ALPN) TLS 扩展以启用这些连接。有关更多信息,请参阅 Amazon IoT Greengrass Core 软件的 OTA 更新通过端口 443 或网络代理进行连接

错误修复和改进:

  • 修复了 v1.9.0 中引入的错误,该错误会导致 Python 2.7 Lambda 函数无法将二进制负载发送到其他 Lambda 函数。

  • 常规性能改进和错误修复。

1.9.2

新功能:

  • 对该项的支持OpenWrt.Amazon IoT Greengrass 核心软件 v1.9.2 或更高版本可以安装在具有 Armv8 (AArch64) 和 Armv7l 架构的 OpenWrt 发行版上。目前,OpenWrt 不支持 ML inference。

1.9.1

错误修复和改进:

  • 修复了 1.9.0 版本中从 cloud 删除主题含有通配符的消息时引入的错误。

1.9.0

新功能:

  • 适用于 Python 3.7 和 Node.js 8.10 的 Lambda 运行时的 Support。使用 Python 3.7 和 Node.js 8.10 运行时的 Lambda 函数现在可以在Amazon IoT Greengrass核心。 (Amazon IoT Greengrass继续支持 Python 2.7 和 Node.js 6.10 运行时。)

  • 经过优化的 MQTT 连接。Greengrass 核心与 Amazon IoT Core 建立的连接数较少。对于基于连接数的收费,此更改可以降低运营成本。

  • 适用于本地 MQTT 服务器的椭圆曲线 (EC) 密钥。除了 RSA 密钥之外,本地 MQTT 服务器还支持 EC 密钥。(无论密钥类型如何,MQTT 服务器证书都具有 SHA-256 RSA 签名。) 有关更多信息,请参阅Amazon IoT Greengrass 核心安全委托人

错误修复和改进:

  • 常规性能改进和错误修复。

1.8.4

修复了影子同步和设备证书管理器重新连接的问题。

常规性能改进和错误修复。

1.8.3

常规性能改进和错误修复。

1.8.2

常规性能改进和错误修复。

1.8.1

常规性能改进和错误修复。

1.8.0

新功能:

  • 组中 Lambda 函数的可配置默认访问身份。此组级别设置确定用于运行 Lambda 函数的默认权限。您可以设置用户 ID 和/或组 ID。各个 Lambda 函数可以覆盖其组的默认访问身份。有关更多信息,请参阅为组中的 Lambda 函数设置默认访问身份

  • 通过端口 443 的 HTTPS 流量。HTTPS 通信可以配置为通过端口 443(而不是默认端口 8443)进行传输。这是补充Amazon IoT Greengrass支持应用层协议网络 (ALPN) TLS 扩展,并允许所有 Greengrass 消息传递流量(MQTT 和 HTTPS)使用端口 443。有关更多信息,请参阅通过端口 443 或网络代理进行连接

  • Amazon IoT 连接可预测命名的客户端 ID。此更改将启用对于 Amazon IoT Device Defender 和 Amazon IoT 生命周期事件的支持,因此,您可以针对连接、断开连接、订阅以及取消订阅事件接收通知。借助于可预测的命名,还可以更轻松地围绕连接 ID 创建逻辑(例如,基于证书属性创建订阅策略模板)。有关更多信息,请参阅与 Amazon IoT 的 MQTT 连接的客户端 ID

错误修复和改进:

  • 修复了影子同步和设备证书管理器重新连接的问题。

  • 常规性能改进和错误修复。

1.7.1

新功能:

错误修复和改进:

  • 常规性能改进和错误修复。

此外,此版本还提供以下功能:

  • 适用于 Amazon IoT Greengrass 的 Amazon IoT Device Tester,可用来验证 CPU 架构、内核配置和 Amazon IoT Greengrass 使用的驱动器。有关更多信息,请参阅使用Amazon IoT适用于 的 Device TesterAmazon IoT GreengrassV1

  • 这些区域有:Amazon IoT Greengrass核心软件,Amazon IoT Greengrass核心开发工具包,以及Amazon IoT Greengrass可通过 Amazon CloudFront 下载 Machine Learning 开发工具包。有关更多信息,请参阅Amazon IoT Greengrass 下载

1.6.1

新功能:

  • 在 Greengrass 核心上运行二进制代码的 Lambda 可执行文件。使用新Amazon IoT Greengrass适用于 C 的核心开发工具包在 C 和 C++ 中编写 Lambda 可执行文件。有关更多信息,请参阅Lambda 可执行文件

  • 可选的本地存储消息缓存,可以在重新启动时永久保存这些消息。您可以为排队处理的 MQTT 消息配置存储设置。有关更多信息,请参阅云目标的 MQTT 消息队列

  • 在核心设备断开时的可配置最大重新连接重试间隔。有关更多信息,请参阅 mqttMaxConnectionRetryInterval 中的 Amazon IoT Greengrass 核心配置文件 属性。

  • 主机 /proc 目录的本地资源访问权限。有关更多信息,请参阅使用 Lambda 函数和连接器访问本地资源

  • 可配置的写入目录。可以将 Amazon IoT Greengrass Core 软件部署到只读和读写位置中。有关更多信息,请参阅为 Amazon IoT Greengrass 配置写入目录

错误修复和改进:

  • 提高了在 Greengrass 核心中以及设备和核心之间发布消息的性能。

  • 减少了处理用户定义的 Lambda 函数生成的日志所需的计算资源。

1.5.0

新功能:

  • Amazon IoT Greengrass 机器学习 (ML) 推理已正式发布。您可以在 Amazon IoT Greengrass 设备上使用在云中构建和训练的模型执行本地 ML 推理。有关更多信息,请参阅执行机器学习推理

  • 除了 JSON 以外,Greengrass Lambda 函数现在还支持将二进制数据作为输入负载。要使用该功能,您必须升级到Amazon IoT Greengrass核心开发工具包版本 1.1.0,您可以从Amazon IoT Greengrass核心开发工具包下载页面。

错误修复和改进:

  • 降低了整体内存占用空间。

  • 将消息发送到云的性能改进。

  • 对下载代理、Device Certificate Manager 和 OTA 更新代理的性能和稳定性改进。

  • 次要错误修复。

1.3.0

新功能:

1.1.0

新功能:

  • 已部署Amazon IoT Greengrass组可以删除 Lambda 函数、订阅和配置以重置。有关更多信息,请参阅重置部署

  • 除 Python 2.7 以外,还 Support Node.js 6.10 和 Java 8 lambda 运行时。

要从以前的版本迁移Amazon IoT Greengrass核心:

  • 将证书从 /greengrass/configuration/certs 文件夹复制到 /greengrass/certs.

  • /greengrass/configuration/config.json 复制到 /greengrass/config/config.json

  • 运行 /greengrass/ggc/core/greengrassd 而非 /greengrass/greengrassd.

  • 将组部署到新的核心。

1.0.0

初始版本

Amazon IoT Greengrass 组

Greengrass 组是一系列设置和组件,例如 Greengrass 核心、设备和订阅。组用于定义交互范围。例如,一个组可能表示建筑物的一层、一辆卡车或整个采矿场所。下图显示了可以构成 Greengrass 组的组件。

在上图中:

A: Greengrass 组定义

有关组设置和组件的信息。

B:Greengrass 组设置

包括:

C:Greengrass 核心

表示 Greengrass 核心的 Amazon IoT 事物(设备)。有关更多信息,请参阅配置 Amazon IoT Greengrass 核心

D:Lambda 函数定义

核心上本地运行的 Lambda 函数的列表,包含关联的配置数据。有关更多信息,请参阅运行 Lambda 函数Amazon IoT Greengrasscore

E: 订阅定义

允许使用 MQTT 消息进行通信的订阅列表。订阅定义了:

  • 消息源和消息目标。这些可能是设备、Lambda 函数、连接器、 Amazon IoT Core 和本地影子服务。

  • 用于筛选消息的主题。

有关更多信息,请参阅MQTT 消息传递工作流中的托管订阅

F:连接器定义

核心上本地运行的连接器的列表,包含关联的配置数据。有关更多信息,请参阅使用 Greengrass 连接器与服务和协议集成

G:设备定义

作为 Greengrass 组的成员的 Amazon IoT 事物(设备)以及关联的配置数据的列表。有关更多信息,请参阅Amazon IoT Greengrass 中的设备

H:资源定义

Greengrass 核心上的本地资源、机器学习资源和密钥资源的列表,包含关联的配置数据。有关更多信息,请参阅 使用 Lambda 函数和连接器访问本地资源执行机器学习推理将密钥部署到 Amazon IoT Greengrass 核心

在部署后,Greengrass 组定义、Lambda 函数、连接器、资源和订阅表将复制到核心设备中。有关更多信息,请参阅将 Amazon IoT Greengrass 组部署到 Amazon IoT Greengrass 核心

Amazon IoT Greengrass 中的设备

Greengrass 组可以包含两种类型的 Amazon IoT 设备:

Greengrass 核心

Greengrass 核心是运行 Amazon IoT Greengrass Core 软件的设备,该软件允许核心直接与 Amazon IoT Core 和 Amazon IoT Greengrass 服务进行通信。核心具有自己的设备证书,用于在 Amazon IoT Core 中进行身份验证。它有一个设备影子和一个 Amazon IoT Core 注册表中的条目。Greengrass 核心运行本地 Lambda 运行时、部署代理和 IP 地址跟踪器(用于将 IP 地址信息发送到Amazon IoT Greengrass服务,以允许 Greengrass 设备自动发现其组和核心连接信息。有关更多信息,请参阅配置 Amazon IoT Greengrass 核心

注意

一个 Greengrass 组必须恰好包含一个核心。

连接到 Greengrass 核心的设备

连接设备(也称为 Greengrass 设备)也有自己的用于 Amazon IoT Core 身份验证的设备证书、设备影子和 Amazon IoT Core 注册表中的条目。Greengrass 设备可以运行FreeRTOS或使用Amazon IoT设备软件开发工具包或者 Amazon IoT Greengrass查找 API,以获取用于连接和验证同一 Greengrass 组中核心的发现信息。 要了解如何使用Amazon IoT控制台创建和配置Amazon IoT Greengrass,请参阅模块 4:在中与设备交互Amazon IoT Greengrass组. 或者,对于演示如何使用Amazon CLI创建和配置Amazon IoT Greengrass,请参阅创建设备定义中的Amazon CLI命令参考.

在 Greengrass 组中,您可以创建订阅来允许设备通过 MQTT 与组中的 Lambda 函数、连接器和其他设备进行通信,并与 Amazon IoT Core 或本地影子服务。MQTT 消息传递到核心。如果核心设备丢失与云的连接,这些设备可通过本地网络继续进行通信。设备的尺寸可能不同 - 从基于微控制器的小型设备到大型设备。目前,一个 Greengrass 组最多可包含 2500 个设备。一个设备最多可以是 10 个组的成员。

注意

OPC-UA 是一种用于工业通信的信息交换标准。要在 Greengrass 核心上实现对 OPC-UA 的支持,您可以使用IoT SiteWise 连接器. 该连接器可将工业设备数据从 OPC-UA 服务器发送到 Amazon IoT SiteWise 中的资产属性。

下表显示了这些设备类型的相关性。

这些区域有:Amazon IoT Greengrass核心设备在两个位置存储证书:

  • /greengrass-root/certs 中的核心设备证书。通常,核心设备证书命名为 hash.cert.pem(例如,86c84488a5.cert.pem)。当核心连接到 Amazon IoT Core 和 Amazon IoT Greengrass 服务时,Amazon IoT 客户端将使用此证书进行相互身份验证。

  • /greengrass-root/ggc/var/state/server 中的 MQTT 服务器证书。MQTT 服务器证书名为 server.crt。此证书用于本地 MQTT 服务器(在 Greengrass 核心上)和 Greengrass 设备之间的相互身份验证。

    注意

    greengrass-root 表示在您的设备上安装 Amazon IoT Greengrass 核心软件的路径。通常,这是 /greengrass 目录。

SDKs

以下Amazon提供的开发工具包可用于Amazon IoT Greengrass:

Amazon 开发工具包

使用AmazonSDK 来构建与任何Amazon服务,包括 Amazon S3、Amazon DynamoDB、Amazon IoT、Amazon IoT Greengrass,以及其他. 在Amazon IoT Greengrass,您可以使用。Amazon开发工具包在部署的 Lambda 函数中的开发工具包对任何Amazon服务。有关更多信息,请参阅Amazon 软件开发工具包

注意

特定于 Greengrass 的操作,可在Amazon开发工具包还可用于Amazon IoT GreengrassAPIAmazon CLI.

Amazon IoT 设备软件开发工具包

这些区域有:Amazon IoT设备开发工具包可帮助设备连接到 Amazon IoT Core 和Amazon IoT Greengrass. 有关更多信息,请参阅 。Amazon IoT设备开发工具包中的Amazon IoT开发人员指南.

设备可以使用Amazon IoT用于发现 Greengrass 核心的连接信息的设备开发工具包 v2 平台。连接信息包括:

  • 设备所属的 Greengrass 组的 ID。

  • 每个组中 Greengrass 核心的 IP 地址。这些操作也称为核心终端节点.

  • 组 CA 证书,设备用于与核心进行双向身份验证的组 CA 证书。有关更多信息,请参阅设备连接工作流程

注意

在Amazon IoT设备软件开发工具包,只有 C++ 和 Python 平台提供内置的发现支持。

Amazon IoT Greengrass 核心开发工具包

这些区域有:Amazon IoT Greengrass核心 SDK 使 Lambda 函数能够与 Greengrass 核心交互,将消息发布到Amazon IoT、与本地影子服务交互、调用其他部署的 Lambda 函数和访问密钥资源。此开发工具包由上运行的 Lambda 函数使用。Amazon IoT Greengrass核心。有关更多信息,请参阅Amazon IoT Greengrass 核心开发工具包

Amazon IoT GreengrassMachine Learning 开发工具包

这些区域有:Amazon IoT GreengrassMachine Learning 开发工具包允许 Lambda 函数使用作为机器学习资源部署到 Greengrass 核心的机器学习模型。此开发工具包由上运行的 Lambda 函数使用。Amazon IoT Greengrass核心并与本地推理服务交互。有关更多信息,请参阅Amazon IoT Greengrass Machine Learning 开发工具包

支持的平台和要求

以下选项卡列出了支持的平台和 Amazon IoT Greengrass Core 软件的要求。

注意

您可以下载Amazon IoT GreengrassCore 软件来自Amazon IoT Greengrass核心软件下载。

GGC v1.11

支持的平台:

  • 架构:Armv7l

    • 操作系统:Linux;发布版:Raspbian Buster,2019-07-10.Amazon IoT Greengrass可能能够与 Raspberry Pi 的其他发行版一起使用,但我们建议使用 Raspbian,因为它是官方支持的发行版。

    • 操作系统:Linux;发布版:OpenWrt

  • 架构:Armv8 (AArch64)

    • 操作系统:Linux;发布版:Arch Linux

    • 操作系统:Linux;发布版:OpenWrt

  • 架构:Armv6l

  • 架构:x86_64

    • 操作系统:Linux;发布版:Amazon Linux (amzn2-ami-hvm-2.0.20190313-x86_64-gp2),Ubuntu 18.04

  • Windows、macOS 和 Linux 平台可以在 Docker 容器中运行 Amazon IoT Greengrass。有关更多信息,请参阅在 Docker 容器中运行 Amazon IoT Greengrass

要求:

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

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

    注意

    默认情况下,如果您使用默认创建组选项Amazon IoT控制台创建 Greengrass 组。

  • Linux 内核版本:

    • 需要 Linux 内核版本 4.4 或更高版本才能支持 Amazon IoT Greengrass 与容器一起运行。

    • 需要 Linux 内核版本 3.17 或更高版本才能支持不带容器运行 Amazon IoT Greengrass。在此配置中,Greengrass 组的默认 Lambda 函数容器化必须设置为无容器. 有关说明,请参阅为组中的 Lambda 函数设置默认容器化

  • GNU C 库 (glibc) 版本 2.14 或更高版本。OpenWrt 发行版需要 musl C 库版本 1.1.16 或更高版本。

  • 设备上必须存在 /var/run 目录。

  • /dev/stdin/dev/stdout/dev/stderr 文件必须是可用的。

  • 必须在设备上启用硬链接和软链接保护。否则,Amazon IoT Greengrass 只能使用 -i 标记在不安全的模式下运行。

  • 必须在设备上启用以下 Linux 内核配置:

    • 命名空间:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      内核必须支持 cgroups。运行时存在以下要求:Amazon IoT Greengrass替换为容器

      • 这些区域有:memory必须已启用并挂载 cgroup 以允许Amazon IoT Greengrass为 Lambda 函数设置内存限制。

      • 这些区域有:设备必须启用并挂载 cgroup,如果 Lambda 与本地资源访问用于打开Amazon IoT Greengrass核心设备。

    • 其他:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • 用于 Amazon S3 和Amazon IoT必须在系统信任存储中存在。

  • 流管理器除了基础上的Amazon IoT Greengrass核心软件内存要求。默认情况下,当您使用默认创建组选项Amazon IoT控制台。OpenWRT 发行版不支持流管理器。

  • 支持Amazon Lambdaruntime要在本地运行的 Lambda 函数所需的。所需的库必须安装在核心上并添加到 PATH 环境变量中。在同一核心上可以安装多个库。

    • Python适用于使用 Python 3.8 运行时的函数的版本 3.8。

    • 适用于使用 Python 3.7 运行时的函数的 Python 版本 3.7。

    • 适用于使用 Python 2.7 运行时的函数的 Python 版本 2.7。

    • 适用于使用 Node.js 12.x 运行时的函数的 Node.js 版本 12.x。

    • 适用于使用 Java 8 运行时的函数的 Java 版本 8 或更高版本。

      注意

      在分配的 OpenWrt 上运行 Java 不受官方支持。但是,如果您的 OpenWrt 构建支持 Java,那么您可能可以在 OpenWrt 设备上运行使用 Java 编写的 Lambda 函数。

      有关 的更多信息Amazon IoT Greengrass对 Lambda 运行时的支持,请参阅运行 Lambda 函数Amazon IoT Greengrasscore.

  • 无线 (OTA) 更新代理需要以下 shell 命令(不是 BusyBox 变量):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.10

支持的平台:

  • 架构:Armv7l

    • 操作系统:Linux;发布版:Raspbian Buster,2019-07-10.Amazon IoT Greengrass可能能够与 Raspberry Pi 的其他发行版一起使用,但我们建议使用 Raspbian,因为它是官方支持的发行版。

    • 操作系统:Linux;发布版:OpenWrt

  • 架构:Armv8 (AArch64)

    • 操作系统:Linux;发布版:Arch Linux

    • 操作系统:Linux;发布版:OpenWrt

  • 架构:Armv6l

  • 架构:x86_64

    • 操作系统:Linux;发布版:Amazon Linux (amzn2-ami-hvm-2.0.20190313-x86_64-gp2),Ubuntu 18.04

  • Windows、macOS 和 Linux 平台可以在 Docker 容器中运行 Amazon IoT Greengrass。有关更多信息,请参阅在 Docker 容器中运行 Amazon IoT Greengrass

要求:

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

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

    注意

    默认情况下,如果您使用默认创建组选项Amazon IoT控制台创建 Greengrass 组。

  • Linux 内核版本:

    • 需要 Linux 内核版本 4.4 或更高版本才能支持 Amazon IoT Greengrass 与容器一起运行。

    • 需要 Linux 内核版本 3.17 或更高版本才能支持不带容器运行 Amazon IoT Greengrass。在此配置中,Greengrass 组的默认 Lambda 函数容器化必须设置为无容器. 有关说明,请参阅为组中的 Lambda 函数设置默认容器化

  • GNU C 库 (glibc) 版本 2.14 或更高版本。OpenWrt 发行版需要 musl C 库版本 1.1.16 或更高版本。

  • 设备上必须存在 /var/run 目录。

  • /dev/stdin/dev/stdout/dev/stderr 文件必须是可用的。

  • 必须在设备上启用硬链接和软链接保护。否则,Amazon IoT Greengrass 只能使用 -i 标记在不安全的模式下运行。

  • 必须在设备上启用以下 Linux 内核配置:

    • 命名空间:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      内核必须支持 cgroups。运行时存在以下要求:Amazon IoT Greengrass替换为容器

      • 这些区域有:memory必须已启用并挂载 cgroup 以允许Amazon IoT Greengrass为 Lambda 函数设置内存限制。

      • 这些区域有:设备必须启用并挂载 cgroup,如果 Lambda 与本地资源访问用于打开Amazon IoT Greengrass核心设备。

    • 其他:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • 用于 Amazon S3 和Amazon IoT必须在系统信任存储中存在。

  • 流管理器除了基础上的Amazon IoT Greengrass核心软件内存要求。默认情况下,当您使用默认创建组选项Amazon IoT控制台。OpenWRT 发行版不支持流管理器。

  • 支持Amazon Lambdaruntime要在本地运行的 Lambda 函数所需的。所需的库必须安装在核心上并添加到 PATH 环境变量中。在同一核心上可以安装多个库。

    • 适用于使用 Python 3.7 运行时的函数的 Python 版本 3.7。

    • 适用于使用 Python 2.7 运行时的函数的 Python 版本 2.7。

    • 适用于使用 Node.js 12.x 运行时的函数的 Node.js 版本 12.x。

    • 适用于使用 Java 8 运行时的函数的 Java 版本 8 或更高版本。

      注意

      在分配的 OpenWrt 上运行 Java 不受官方支持。但是,如果您的 OpenWrt 构建支持 Java,那么您可能可以在 OpenWrt 设备上运行使用 Java 编写的 Lambda 函数。

      有关 的更多信息Amazon IoT Greengrass对 Lambda 运行时的支持,请参阅运行 Lambda 函数Amazon IoT Greengrasscore.

  • 无线 (OTA) 更新代理需要以下 shell 命令(不是 BusyBox 变量):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.9

支持的平台:

  • 架构:Armv7l

    • 操作系统:Linux;发布版:Raspbian Buster,2019-07-10.Amazon IoT Greengrass可能能够与 Raspberry Pi 的其他发行版一起使用,但我们建议使用 Raspbian,因为它是官方支持的发行版。

    • 操作系统:Linux;发布版:OpenWrt

  • 架构:Armv8 (AArch64)

    • 操作系统:Linux;发布版:Arch Linux

    • 操作系统:Linux;发布版:OpenWrt

  • 架构:Armv6l

  • 架构:x86_64

    • 操作系统:Linux;发布版:Amazon Linux (amzn2-ami-hvm-2.0.20190313-x86_64-gp2),Ubuntu 18.04

  • Windows、macOS 和 Linux 平台可以在 Docker 容器中运行 Amazon IoT Greengrass。有关更多信息,请参阅在 Docker 容器中运行 Amazon IoT Greengrass

要求:

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

  • 分配给 Amazon IoT Greengrass 核心软件的最少 128 MB 内存。

  • Linux 内核版本:

    • 需要 Linux 内核版本 4.4 或更高版本才能支持 Amazon IoT Greengrass 与容器一起运行。

    • 需要 Linux 内核版本 3.17 或更高版本才能支持不带容器运行 Amazon IoT Greengrass。在此配置中,Greengrass 组的默认 Lambda 函数容器化必须设置为无容器. 有关说明,请参阅为组中的 Lambda 函数设置默认容器化

  • GNU C 库 (glibc) 版本 2.14 或更高版本。OpenWrt 发行版需要 musl C 库版本 1.1.16 或更高版本。

  • 设备上必须存在 /var/run 目录。

  • /dev/stdin/dev/stdout/dev/stderr 文件必须是可用的。

  • 必须在设备上启用硬链接和软链接保护。否则,Amazon IoT Greengrass 只能使用 -i 标记在不安全的模式下运行。

  • 必须在设备上启用以下 Linux 内核配置:

    • 命名空间:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      内核必须支持 cgroups。运行时存在以下要求:Amazon IoT Greengrass替换为容器

      • 这些区域有:memory必须已启用并挂载 cgroup 以允许Amazon IoT Greengrass为 Lambda 函数设置内存限制。

      • 这些区域有:设备必须启用并挂载 cgroup,如果 Lambda 与本地资源访问用于打开Amazon IoT Greengrass核心设备。

    • 其他:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • 用于 Amazon S3 和Amazon IoT必须在系统信任存储中存在。

  • 支持Amazon Lambdaruntime要在本地运行的 Lambda 函数所需的。所需的库必须安装在核心上并添加到 PATH 环境变量中。在同一核心上可以安装多个库。

    • 适用于使用 Python 2.7 运行时的函数的 Python 版本 2.7。

    • 适用于使用 Python 3.7 运行时的函数的 Python 版本 3.7。

    • 适用于使用 Node.js 6.10 运行时的函数的 Node.js 版本 6.10 或更高版本。

    • 适用于使用 Node.js 8.10 运行时的函数的 Node.js 版本 8.10 或更高版本。

    • 适用于使用 Java 8 运行时的函数的 Java 版本 8 或更高版本。

      注意

      在分配的 OpenWrt 上运行 Java 不受官方支持。但是,如果您的 OpenWrt 构建支持 Java,那么您可能可以在 OpenWrt 设备上运行使用 Java 编写的 Lambda 函数。

      有关 的更多信息Amazon IoT Greengrass对 Lambda 运行时的支持,请参阅运行 Lambda 函数Amazon IoT Greengrasscore.

  • 无线 (OTA) 更新代理需要以下 shell 命令(不是 BusyBox 变量):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

GGC v1.8
  • 支持的平台:

    • 架构:ARMv7l;操作系统:Linux;发布版:Raspbian 伸展运动,2018-06-29. 虽然其他版本可与 Amazon IoT Greengrass 一起使用,但我们建议使用此版本,因为这是官方支持的发行版。

    • 架构:x86_64;操作系统:Linux;发布版:Amazon Linux (amzn-ami-hvm-2016.09.1.20170119-x86_64-ebs),Ubuntu 14.04

    • 架构:Armv8 (AArch64);操作系统:Linux;发布版:Arch Linux

    • Windows、macOS 和 Linux 平台可以在 Docker 容器中运行 Amazon IoT Greengrass。有关更多信息,请参阅在 Docker 容器中运行 Amazon IoT Greengrass

    • Linux 平台可以运行Amazon IoT Greengrass具有有限 Greengrass 能,可通过金鱼. 有关更多信息,请参阅Amazon IoT Greengrass Snap 软件

  • 需要以下项目:

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

    • 分配给 Amazon IoT Greengrass 核心软件的最少 128 MB 内存。

    • Linux 内核版本:

      • 需要 Linux 内核版本 4.4 或更高版本才能支持 Amazon IoT Greengrass 与容器一起运行。

      • 需要 Linux 内核版本 3.17 或更高版本才能支持不带容器运行 Amazon IoT Greengrass。在此配置中,Greengrass 组的默认 Lambda 函数容器化必须设置为无容器. 有关说明,请参阅为组中的 Lambda 函数设置默认容器化

    • GNU C 库 (glibc) 版本 2.14 或更高版本。

    • 设备上必须存在 /var/run 目录。

    • /dev/stdin/dev/stdout/dev/stderr 文件必须是可用的。

    • 必须在设备上启用硬链接和软链接保护。否则,Amazon IoT Greengrass 只能使用 -i 标记在不安全的模式下运行。

    • 必须在设备上启用以下 Linux 内核配置:

      • 命名空间:

        • CONFIG_IPC_NS

        • CONFIG_UTS_NS

        • CONFIG_USER_NS

        • CONFIG_PID_NS

      • Cgroups:

        • CONFIG_CGROUP_DEVICE

        • CONFIG_CGROUPS

        • CONFIG_MEMCG

        内核必须支持 cgroups。运行时存在以下要求:Amazon IoT Greengrass替换为容器

        • 这些区域有:memory必须已启用并挂载 cgroup 以允许Amazon IoT Greengrass为 Lambda 函数设置内存限制。

        • 这些区域有:设备必须启用并挂载 cgroup,如果 Lambda 与本地资源访问用于打开Amazon IoT Greengrass核心设备。

      • 其他:

        • CONFIG_POSIX_MQUEUE

        • CONFIG_OVERLAY_FS

        • CONFIG_HAVE_ARCH_SECCOMP_FILTER

        • CONFIG_SECCOMP_FILTER

        • CONFIG_KEYS

        • CONFIG_SECCOMP

        • CONFIG_SHMEM

    • 用于 Amazon S3 和Amazon IoT必须在系统信任存储中存在。

  • 有条件地需要以下项目:

    • 支持Amazon Lambdaruntime要在本地运行的 Lambda 函数所需的。所需的库必须安装在核心上并添加到 PATH 环境变量中。在同一核心上可以安装多个库。

      • 适用于使用 Python 2.7 运行时的函数的 Python 版本 2.7。

      • 适用于使用 Node.js 6.10 运行时的函数的 Node.js 版本 6.10 或更高版本。

      • 适用于使用 Java 8 运行时的函数的 Java 版本 8 或更高版本。

    • 无线 (OTA) 更新代理需要以下 shell 命令(不是 BusyBox 变量):

      • wget

      • realpath

      • tar

      • readlink

      • basename

      • dirname

      • pidof

      • df

      • grep

      • umount

      • mv

      • gzip

      • mkdir

      • rm

      • ln

      • cut

      • cat

有关的信息Amazon IoT Greengrass配额(限制),请参阅Service Quotas中的Amazon Web Services 一般参考.

有关定价信息,请参阅 Amazon IoT Greengrass 定价 Amazon IoT Core 定价

Amazon IoT Greengrass 下载

您可以使用以下信息来查找并下载可与 Amazon IoT Greengrass 结合使用的软件。

Amazon IoT Greengrass Core 软件

这些区域有:Amazon IoT GreengrassCore 软件扩展Amazon功能添加到Amazon IoT Greengrass核心设备,使本地设备可以在本地操作它们生成的数据。

v1.11
1.11.3

错误修复和改进:

  • 修复了导致Amazon IoT Greengrass在 Ubuntu 设备上一个快照中运行的核心软件,以便在设备突然断电后停止响应。

  • 修复了导致 MQTT 消息传递延迟到长寿命 Lambda 函数的问题。

  • 修复了一个导致 MQTT 消息不正常发送的问题,该问题是在maxWorkItemCount将设置为一个大于1024.

  • 修复了导致 OTA 更新代理忽略 MQTT 的问题KeepAlive中指定的期间keepAlive属性config.json.

  • 常规性能改进和错误修复。

注意

如果您使用流管理器将数据导出到云,则无法升级到Amazon IoT Greengrass核心软件 1.11.3 版本来自较早版本的版本。当您尝试 OTA 更新时,流管理器不会启动,并且更新失败。如果您正在安装Amazon IoT Greengrass首次核心软件,我们强烈建议您部署最新版本的软件。

1.11.1

错误修复和改进:

  • 修复了导致流管理器的内存使用增加的问题。

  • 修复了导致流管理器将流序列号重置为0如果 Greengrass 核心设备关闭时间长于流数据的指定生存时间 (TTL) 期间 (TTL) 期间。

  • 修复了导致流管理器无法正确停止将数据导出到 Amazon Web Services 云 .

1.11.0

新功能:

  • Greengrass 核心上的遥测代理收集本地遥测数据并将其发布到 Amazon Web Services 云 . 要检索遥测数据以便进一步处理,买家可以创建 Amazon EventBridge 规则并订阅目标。有关更多信息,请参阅 。收集系统运行状况遥测数据Amazon IoT Greengrass核心设备.

  • 本地 HTTP API 返回由Amazon IoT Greengrass. 有关更多信息,请参阅 。调用本地运行状况检查 API.

  • A流管理器将数据导出到 Amazon S3 和Amazon IoT SiteWise.

    New流管理器参数允许您更新现有流并暂停或恢复数据导出。

  • Support 在核心上运行 Python 3.8.x Lambda 函数。

  • ggDaemonPort属性config.json,用于配置 Greengrass 核心 IPC 端口号。默认端口号为 8000。

    systemComponentAuthTimeout属性config.json用于配置 Greengrass 核心 IPC 身份验证的超时时间。默认超时间为 5000 毫秒。

  • 增加了最大数Amazon IoT每个设备Amazon IoT Greengrass组从 200 到 2500 个。

    每组的最大订阅数从 1000 增加到 10000。

    有关更多信息,请参阅 Amazon IoT Greengrass 终端节点和配额

错误修复和改进:

  • 一般优化,可以降低 Greengrass 服务进程的内存利用率。

  • 一个新的运行时配置参数 (mountAllBlockDevices)允许 Greengrass 在设置 OverlayFS 后使用绑定挂载将所有块设备挂载到容器中。此功能解决了导致 Greengrass 部署失败的问题,如果/usr不在/层次结构。

  • 修复了导致Amazon IoT Greengrass如果出现核心故障/tmp是符号链接。

  • 修复了让 Greengrass 部署代理从mlmodel_publicfolder。

  • 常规性能改进和错误修复。

安装Amazon IoT Greengrass核心设备上的核心软件,下载适用于您的架构、发行版和操作系统 (OS) 的软件包,然后按照入门指南.

提示

Amazon IoT Greengrass 还提供了其他选项用于安装 Amazon IoT Greengrass Core 软件。例如,您可以使用 Greengrass 设备设置来配置环境并安装最新版本的 Amazon IoT Greengrass Core 软件。或者,在支持的 Debian 平台上,您可以使用 APT 软件包管理器 来安装或升级 Amazon IoT Greengrass Core 软件。有关更多信息,请参阅安装 Amazon IoT Greengrass Core 软件

架构

分配

OS

Link

Armv8 (AArch64)

Arch Linux

Linux

下载

Armv8 (AArch64)

OpenWrt

Linux

下载

Armv7l

Raspbian

Linux

下载

Armv7l

OpenWrt

Linux

下载

Armv6l

Raspbian

Linux

下载

x86_64

Linux

Linux

下载

v1.10
1.10.4

错误修复和改进:

  • 修复了导致Amazon IoT Greengrass在 Ubuntu 设备上一个快照中运行的核心软件,以便在设备突然断电后停止响应。

  • 修复了导致 MQTT 消息传递延迟到长寿命 Lambda 函数的问题。

  • 修复了一个导致 MQTT 消息不正常发送的问题,该问题是在maxWorkItemCount将设置为一个大于1024.

  • 修复了导致 OTA 更新代理忽略 MQTT 的问题KeepAlive中指定的期间keepAlive属性config.json.

  • 常规性能改进和错误修复。

1.10.3

错误修复和改进:

  • systemComponentAuthTimeout属性config.json用于配置 Greengrass 核心 IPC 身份验证的超时时间。默认超时间为 5000 毫秒。

  • 修复了导致流管理器的内存使用增加的问题。

1.10.2

错误修复和改进:

  • mqttOperationTimeout属性config.json用于在 MQTT 连接中的发布、订阅和取消订阅操作的超时 Amazon IoT Core .

  • 常规性能改进和错误修复。

1.10.1

错误修复和改进:

  • 流管理器对文件数据损坏更具弹性。

  • 修复了导致使用 Linux 内核 5.1 及更高版本的设备上系统安装失败的问题。

  • 常规性能改进和错误修复。

1.10.0

新功能:

  • 具有硬件安全集成的无线 (OTA) 更新可以通过 OpenSSL 1.1 进行配置。

  • 常规性能改进和错误修复。

安装Amazon IoT Greengrass核心设备上的核心软件,下载适用于您的架构、发行版和操作系统 (OS) 的软件包,然后按照入门指南.

架构

分配

OS

Link

Armv8 (AArch64)

Arch Linux

Linux

下载

Armv8 (AArch64)

OpenWrt

Linux

下载

Armv7l

Raspbian

Linux

下载

Armv7l

OpenWrt

Linux

下载

Armv6l

Raspbian

Linux

下载

x86_64

Linux

Linux

下载

Deprecated versions
1.9.4

版本 1.9 中的新功能:

  • 适用于 Python 3.7 和 Node.js 8.10 的 Lambda 运行时的 Support。使用 Python 3.7 和 Node.js 8.10 运行时的 Lambda 函数现在可以在Amazon IoT Greengrass核心。 (Amazon IoT Greengrass继续支持 Python 2.7 和 Node.js 6.10 运行时。)

  • 经过优化的 MQTT 连接。Greengrass 核心与 Amazon IoT Core 建立的连接数较少。对于基于连接数的收费,此更改可以降低运营成本。

  • 适用于本地 MQTT 服务器的椭圆曲线 (EC) 密钥。除了 RSA 密钥之外,本地 MQTT 服务器还支持 EC 密钥。(无论密钥类型如何,MQTT 服务器证书都具有 SHA-256 RSA 签名。) 有关更多信息,请参阅Amazon IoT Greengrass 核心安全委托人

  • 对该项的支持OpenWrt.Amazon IoT Greengrass 核心软件 v1.9.2 或更高版本可以安装在具有 Armv8 (AArch64) 和 Armv7l 架构的 OpenWrt 发行版上。目前,OpenWrt 不支持 ML inference。

  • 支持 Armv6l。Amazon IoT Greengrass核心软件 v1.9.3 或更高版本可在 Armv6l 架构上的 Raspbian 发行版中安装(例如,在 Raspberry Pi Zero 设备上)。

  • OTA 在端口 443 上使用 ALPN 进行更新。使用端口 443 处理 MQTT 流量的 Greengrass 核心现在支持无线 (OTA) 软件更新。Amazon IoT Greengrass 使用应用层协议网络 (ALPN) TLS 扩展以启用这些连接。有关更多信息,请参阅 Amazon IoT Greengrass Core 软件的 OTA 更新通过端口 443 或网络代理进行连接

安装Amazon IoT Greengrass核心设备上的核心软件,下载适用于您的架构、发行版和操作系统 (OS) 的软件包,然后按照入门指南.

架构

分配

OS

Link

Armv8 (AArch64)

Arch Linux

Linux

下载

Armv8 (AArch64)

OpenWrt

Linux

下载

Armv7l

Raspbian

Linux

下载

Armv7l

OpenWrt

Linux

下载

Armv6l

Raspbian

Linux

下载

x86_64

Linux

Linux

下载

v1.8.4
  • 新功能:

    • 组中 Lambda 函数的可配置默认访问身份。此组级别设置确定用于运行 Lambda 函数的默认权限。您可以设置用户 ID 和/或组 ID。各个 Lambda 函数可以覆盖其组的默认访问身份。有关更多信息,请参阅为组中的 Lambda 函数设置默认访问身份

    • 通过端口 443 的 HTTPS 流量。HTTPS 通信可以配置为通过端口 443(而不是默认端口 8443)进行传输。这是补充Amazon IoT Greengrass支持应用层协议网络 (ALPN) TLS 扩展,并允许所有 Greengrass 消息传递流量(MQTT 和 HTTPS)使用端口 443。有关更多信息,请参阅通过端口 443 或网络代理进行连接

    • Amazon IoT 连接可预测命名的客户端 ID。此更改将启用对于 Amazon IoT Device Defender 和 Amazon IoT 生命周期事件的支持,因此,您可以针对连接、断开连接、订阅以及取消订阅事件接收通知。借助于可预测的命名,还可以更轻松地围绕连接 ID 创建逻辑(例如,基于证书属性创建订阅策略模板)。有关更多信息,请参阅与 Amazon IoT 的 MQTT 连接的客户端 ID

    错误修复和改进:

    • 修复了影子同步和设备证书管理器重新连接的问题。

    • 常规性能改进和错误修复。

安装Amazon IoT Greengrass核心设备上的核心软件,下载适用于您的架构、发行版和操作系统 (OS) 的软件包,然后按照入门指南.

架构

分配

OS

Link

Armv8 (AArch64)

Ubuntu 14.04 - 16.04

Linux

下载

Armv7l

Raspbian

Linux

下载

x86_64

Linux

Linux

下载

下载此软件即表示您同意Greengrass 核心软件许可协议.

有关在设备上安装 Amazon IoT Greengrass Core 软件的其他选项的信息,请参阅安装 Amazon IoT Greengrass Core 软件

 

Amazon IoT Greengrass Snap 软件

Amazon IoT Greengrass快照 1.11.x 使您能够运行Amazon IoT Greengrass通过便捷的软件包,以及所有必要的依赖关系,在容器化环境中。

注意

这些区域有:Amazon IoT Greengrass快照可用于Amazon IoT GreengrassCore 软件 v1.11.x 版本。Amazon IoT Greengrass不提供 v1.10.x 的快照。不受支持的版本不会收到错误修复或更新。

这些区域有:Amazon IoT Greengrass快照不支持连接器和机器学习 (ML) 推理。

有关更多信息,请参阅在 Snap 中运行 Amazon IoT Greengrass

 

Amazon IoT Greengrass Docker 软件

Amazon 提供 Dockerfile 和 Docker 镜像,使您能够更轻松地在 Docker 容器中运行 Amazon IoT Greengrass。

Dockerfile

Dockerfile 包含用于构建自定义 Amazon IoT Greengrass 容器映像的源代码。可对映像进行修改,以在不同的平台架构上运行或减少映像的大小。有关说明,请参阅自述文件。

下载您的目标 Amazon IoT Greengrass Core 软件版本。

v1.11
v1.10
Deprecated versions

 

Docker 镜像

Docker 映像在 Amazon Linux 2 (x86_64) 和 Alpine Linux(x86_64、Armv7l 或 AArch64)基本映像上安装了 Amazon IoT Greengrass Core 软件和依赖项。您可以使用预构建的映像开始尝试 Amazon IoT Greengrass。

下载预构建的映像,从Docker Hub或 Amazon Elastic Container Registry (Amazon ECR)。

  • 对于 Docker Hub,请使用version标签下载 Greengrass Docker 映像的特定版本。要查找所有可用映像的标签,请查看 Docker Hub 上的 Tags (标签) 页面。

  • 对于亚马逊 ECR,请使用latest标签下载最新版本的 Greengrass 码头映像。有关列出可用图片版本和从 Amazon ECR 下载图片的更多信息,请参阅在 Docker 容器中运行 Amazon IoT Greengrass.

Amazon IoT Greengrass不提供Amazon IoT GreengrassCore 软件 v1.11.1 版。

注意

默认情况下,alpine-aarch64alpine-armv7l 映像只能在基于 ARM 的主机上运行。要在 x86 主机上运行这些映像,您可以安装 QEMU 并在主机上挂载 QEMU 库。例如:

docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

 

Amazon IoT Greengrass 核心开发工具包

Lambda 函数使用Amazon IoT Greengrass核心 SDK 与Amazon IoT Greengrass核心本地。这将允许已部署的 Lambda 函数执行:

  • 与 Amazon IoT Core 交换 MQTT 消息。

  • 与 Greengrass 组中的连接器、设备和其他 Lambda 函数交换 MQTT 消息。

  • 与本地影子服务交互。

  • 调用其他本地 Lambda 函数。

  • 访问秘密资源

  • 流管理器交互。

下载Amazon IoT Greengrass适用于您的语言或平台的核心开发工具包。

有关更多信息,请参阅Amazon IoT Greengrass 核心开发工具包

 

支持的机器学习运行时和库

要在 Greengrass 核心上执行推理,您必须为 ML 模型类型安装机器学习运行时或库。

Amazon IoT Greengrass 支持以下 ML 模型类型。可以使用这些链接来查找有关如何为模型类型和设备平台安装运行时或库的信息。

机器学习示例

Amazon IoT Greengrass 提供了可用于支持的 ML 运行时和库的示例。这些示例在 Greengrass Core 软件许可协议下发布。

Deep learning runtime (DLR)

下载适用于设备平台的示例:

有关使用 DLR 示例的教程,请参阅如何使用 Amazon Web Services Management Console配置优化的机器学习推理

MXNet

下载适用于设备平台的示例:

有关使用 MXNet 示例的教程,请参阅如何使用 Amazon Web Services Management Console配置机器学习推理

TensorFlow

下载适用于您设备平台的 Tensorflow 示例。此示例适用于 Raspberry Pi、NVIDIA Jetson TX2 和 Intel Atom。

 

Amazon IoT Greengrass ML 开发工具包软件

这些区域有:Amazon IoT Greengrass Machine Learning 开发工具包使您编写的 Lambda 函数能够使用本地机器学习模型,并将数据发送到ML 反馈连接器进行上传和发布。

v1.1.0
v1.0.0

我们希望听到您的意见和建议

我们欢迎您提供反馈。要与我们联系,请访问 Amazon IoT Greengrass 论坛