本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
更新Amazon IoT Greengrass核心软件 (OTA)
这些区域有:Amazon IoT GreengrassCore 软件包括Greengrass Core 成分和其他可选组件,您可以部署到您的设备以执行软件无线 (OTA) 更新。此功能内置于Amazon IoT GreengrassCore 软件。
OTA 更新可以更高效地执行以下操作:
-
修复安全漏洞。
-
解决软件稳定性问题。
-
部署新的或改进的功能。
Requirements
以下要求适用于部署Amazon IoT GreengrassCore 软件:
-
Greengrass Core 设备必须具有到Amazon Web Services 云以接收部署。
-
必须使用证书和密钥正确配置和预置 Greengrass Core 设备以便对Amazon IoT Core和Amazon IoT Greengrass.
-
这些区域有:Amazon IoT Greengrass核心软件必须作为系统服务进行设置和运行。如果您从 JAR 文件运行核心,OTA 更新不起作用,
Greengrass.jar
. 有关更多信息,请参阅 配置Amazon IoT Greengrass作为系统服务。
核心设备的注意事项
在执行 OTA 更新之前,请注意对您更新的核心设备的影响:
-
Greengrass 原核关闭
-
在核心设备上运行的所有组件也将关闭。如果这些组件写入到本地资源,除非正常关闭,否则它们可能会导致这些资源的状态不正确。组件可以使用进程间通信来告诉核心组件推迟更新,直到它们清理他们使用的资源。
-
当核心组件关闭时,核心设备将失去与Amazon Web Services 云和本地设备。
-
作为组件运行的长时间生存的 Lambda 函数将丢失其动态状态信息并且丢弃所有待处理工作。
Greengrass Core 更新行为
部署组件时,Amazon IoT Greengrass会安装该组件的所有组件依赖关系的最新支持版本。正因为如此,新的修补程序版本Amazon如果您将新设备添加到事物组,或者更新针对这些设备的部署,则提供的公共组件可能会自动部署到您的核心设备。某些自动更新(如核心更新)可能会导致设备意外重新启动。
当Greengrass Core 成分更改,Amazon IoT Greengrass核心软件(包括设备上的核心和所有其他组件)将重新启动以应用更改。由于对核心设备的影响当核心组件更新时,您可能需要控制何时将新的核心修补程序版本部署到您的设备上。为此,您必须直接将 Greengrass Core 组件包含在您的部署中。直接包含组件意味着您将该组件的特定版本包含在部署配置中,并且不依赖于组件依赖关系将该组件部署到您的设备。有关在组件配方中定义依赖关系的详细信息,请参阅配方格式.
查看下表以了解基于您的操作和部署配置的 Greengrass 核心组件的更新行为。
操作 | 部署配置 | Core 更新行为 |
---|---|---|
将新设备添加到现有部署所针对的事物组,而无需修改部署。 | 部署并不直接包括 Greengrass 核心。 部署直接包括至少一个Amazon提供的组件,或者包含一个自定义组件,该组件依赖于Amazon-提供的组件或 Greengrass 原核。 |
在新设备上,安装满足所有组件相关性要求的最新修补程序版本的核心。 在现有设备上,不更新已安装的核心版本。 |
将新设备添加到现有部署所针对的事物组,而无需修改部署。 |
部署直接包括一个特定版本的 Greengrass 核心。 |
在新设备上,安装指定的核心版本。 在现有设备上,不更新已安装的核心版本。 |
创建新部署或修改现有部署。 | 部署并不直接包括 Greengrass 核心。 部署直接包括至少一个Amazon提供的组件,或者包含一个自定义组件,该组件依赖于Amazon-提供的组件或 Greengrass 原核。 |
在所有目标设备上,安装符合所有组件依赖性要求的核心的最新修补程序版本,包括在添加到目标事物组的任何新设备上。 |
创建新部署或修改现有部署。 | 部署直接包括一个特定版本的 Greengrass 核心。 | 在所有目标设备上,安装指定的核心版本,包括添加到目标事物组的任何新设备。 |
执行 OTA 更新
要执行 OTA 更新,创建部署,其中包括核分量和要安装的版本。