本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Systems Manager Agent
Amazon Systems Manager 代理组件 (aws.greengrass.SystemsManagerAgent) 安装系统管理器代理,因此您可以使用系统管理器管理核心设备。Systems Manager 是一项 Amazon 服务,可用于查看和控制您的基础设施 Amazon,包括 Amazon EC2 实例、本地服务器和虚拟机 (VM) 以及边缘设备。Systems Manager 允许您查看操作数据、自动执行操作任务以及维护安全与合规性。有关更多信息,请参阅什么是 Amazon Systems Manager?以及《Amazon Systems Manager 用户指南》中的 “关于系统管理器代理” 。
Systems Manager 的工具和功能称为功能。Greengrass 核心设备支持 Systems Manager 的所有功能。有关这些功能以及如何使用 Systems Manager 管理核心设备的更多信息,请参阅《Amazon Systems Manager 用户指南》中的 Systems Manager 功能。
版本
此组件具有以下版本:
-
1.3.x
-
1.2.x
-
1.1.x
-
1.0.x
Type
此组件是一个通用组件 (aws.greengrass.generic)。Greengrass Nucleus 运行组件的生命周期脚本。
有关更多信息,请参阅组件类型。
操作系统
此组件只能安装在 Linux 核心设备上。
要求
此组件具有以下要求:
-
在 64 位 Linux 平台上运行的 Greengrass 核心设备:Armv8(AArch64)或 x86_64。
-
您必须拥有系统管理员可以代入的 Amazon Identity and Access Management (IAM) 服务角色。此角色必须包含AmazonSSMManagedInstanceCore
托管策略或定义等效权限的自定义策略。有关更多信息,请参阅《Amazon Systems Manager 用户指南》https://docs.amazonaws.cn/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices.html#systems-manager-setting-up-edge-devices-service-role中的为边缘设备创建 IAM 服务角色。 部署此组件时,您必须为
SSMRegistrationRole配置参数指定此角色的名称。 -
Greengrass 设备角色必须允许
ssm:AddTagsToResource和ssm:RegisterManagedInstance操作。设备角色还必须允许针对满足先前要求的 IAM 服务角色的iam:PassRole操作。以下示例 IAM 策略授予这些权限。{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": [ "arn:aws:iam::account-id:role/SSMServiceRole" ] }, { "Action": [ "ssm:AddTagsToResource", "ssm:RegisterManagedInstance" ], "Effect": "Allow", "Resource": "*" } ] } -
在使用快照打包的 Ubuntu 设备上,此组件需要
core22基本快照。如果您的设备可以访问api.snapcraft.io,则core22会自动snap下载。在设备无法到达 Snap 商店的受限网络上,请在部署此组件core22之前手动安装:-
从与目标设备具有相同架构的联网计算机上下载快照及其断言:
snap download core22 -
将
.snap和.assert文件传输到目标设备。 -
确认目标设备上的断言:
sudo snap ackcore22.assert -
在目标设备上安装快照:
sudo snap installcore22.snap
-
端点和端口
除基本操作所需的端点和端口外,此组件还必须能够对以下端点和端口执行出站请求。有关更多信息,请参阅 允许设备流量通过代理或防火墙。
| 端点 | 端口: | 必需 | 说明 |
|---|---|---|---|
|
|
443 | 是 |
在 Amazon Web Services 云中与 Systems Manager 服务通信。 |
|
|
443 | 是 |
将核心设备注册为 Systems Manager 托管节点。 |
|
|
443 | 是 |
在 Amazon Web Services 云中与 Systems Manager 的一项功能 Session Manager 通信。 |
有关更多信息,请参阅《Amazon Systems Manager 用户指南》中的参考:ec2messages、ssmmessages 和其它 API 调用。
依赖项
部署组件时, Amazon IoT Greengrass 还会部署其依赖项的兼容版本。这意味着您必须满足组件及其所有依赖关系的要求,才能成功部署组件。本部分列出了此组件的已发布版本的依赖关系,以及定义每个依赖关系的组件版本的语义版本约束。您还可以在 Amazon IoT Greengrass 控制台
下表列出了该组件版本 1.0.0 到 1.3.0 的依赖关系。
| 依赖关系 | 兼容版本 | 依赖关系类型 |
|---|---|---|
| 令牌交换服务 | >=2.0.0 <3.0.0 | 硬性 |
有关组件依赖关系的更多信息,请参阅组件配方参考。
配置
此组件提供您可以在部署组件时自定义的以下配置参数。
SSMRegistrationRole-
Systems Manager 可以代入的 IAM 服务角色,包括AmazonSSMManagedInstanceCore
托管策略或定义等效权限的自定义策略。有关更多信息,请参阅《Amazon Systems Manager 用户指南》https://docs.amazonaws.cn/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices-service-role.html中的为边缘设备创建 IAM 服务角色。 SSMOverrideExistingRegistration-
(可选)如果核心设备已经运行通过混合激活注册的 Systems Manager Agent,您可以覆盖该设备的现有 Systems Manager Agent 注册。将此选项设置为
true,使用此组件提供的 Systems Manager Agent 将核心设备注册为托管节点。注意
此选项仅适用于通过混合激活注册的设备。如果核心设备在安装了 Systems Manager Agent 并配置了实例配置文件角色的 Amazon EC2 实例上运行,则 Amazon EC2 实例的现有托管节点 ID 以
i-开头。当您安装 Systems Manager Agent 组件时,Systems Manager Agent 会注册一个新的托管节点,该节点的 ID 以mi-(而不是i-)开头。然后,您可以使用 ID 以mi-开头的托管节点通过 Systems Manager 管理核心设备。默认值:
false SSMResourceTags-
(可选)要添加到此组件为核心设备创建的 Systems Manager 托管节点的标签。您可以使用这些标签通过 Systems Manager 管理核心设备组。例如,您可以在所有带您指定的标签的设备上运行命令。
指定一个列表,其中每个标签都是带
Key和Value的对象。例如,SSMResourceTags的以下值指示此组件在核心设备的托管节点上将Owner标签设置为richard-roe。[ { "Key": "Owner", "Value": "richard-roe" } ]如果托管节点已经存在并且
SSMOverrideExistingRegistration为false,则此组件将忽略这些标签。
例示例:配置合并更新
以下示例配置指定使用名为 SSMServiceRole 的服务角色,以允许核心设备注册 Systems Manager 并与其通信。
{ "SSMRegistrationRole": "SSMServiceRole", "SSMOverrideExistingRegistration": false, "SSMResourceTags": [ { "Key": "Owner", "Value": "richard-roe" }, { "Key": "Team", "Value": "solar" } ] }
本地日志文件
Systems Manager Agent 软件将日志写入 Greengrass 根文件夹之外的文件夹。有关更多信息,请参阅《Amazon Systems Manager 用户指南》中的查看 Systems Manager Agent 日志。
Systems Manager Agent 组件使用 Shell 脚本安装、启动和停止 Systems Manager Agent。您可以在以下日志文件中找到这些脚本的输出。
/logs/aws.greengrass.SystemsManagerAgent.log/greengrass/v2
查看此组件的日志
-
在核心设备上运行以下命令可实时查看此组件的日志文件。
替换为 Amazon IoT Greengrass 根文件夹的路径。/greengrass/v2sudo tail -f/logs/aws.greengrass.SystemsManagerAgent.log/greengrass/v2
另请参阅
-
Amazon Systems Manager 用户指南 中的什么是 Amazon Systems Manager?
-
《Amazon Systems Manager 用户指南》中的关于 Systems Manager Agent
更改日志
下表介绍每个组件版本的更改。
|
版本 |
更改 |
|---|---|
|
1.3.0 |
|
|
1.2.4 |
|
|
1.2.3 |
|
|
1.1.0 |
此版本包含错误修复和改进。 |
|
1.0.0 |
初始版本。 |