Systems Manager 代理 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Systems Manager 代理

Amazon Systems Manager 代理组件 (aws.greengrass.SystemsManagerAgent) 会安装 Systems Manager 代理,因此您可以使用 Systems Manager 管理核心设备。Systems Manager 是一项可用于查看和控制基础设施的 Amazon 服务 Amazon,包括 Amazon EC2 实例、本地服务器和虚拟机 (VM) 以及边缘设备。Systems Manager 使您能够查看操作数据、自动执行操作任务以及维护安全性和合规性。有关更多信息,请参阅什么是 Amazon Systems Manager? 以及《Amazon Systems Manager 用户指南》中的 “关于 Systems Manager 代理”。

Systems Manager 的工具和功能称为功能。Greengrass 核心设备支持 Systems Manager 的所有功能。有关这些功能以及如何使用 Systems Manager 管理核心设备的更多信息,请参阅《Amazon Systems Manager 用户指南》中的 Systems Manager 功能

版本

此组件有以下版本:

  • 1.1.x

  • 1.0.x

类型

组件是一个通用组件 (aws.greengrass.generic)。Greengrass 核心运行组件的生命周期脚本。

有关更多信息,请参阅 组件类型

操作系统

此组件只能安装在 Linux 核心设备上。

要求

此组件具有以下要求:

  • 一款在 64 位 Linux 平台上运行的 Greengrass 核心设备:Armv8 (aarch64) 或 x86_64。

  • 您必须拥有 Systems Manager 可以担任的 Amazon Identity and Access Management (IAM) 服务角色。此角色必须包含 AmazonSSM ManagedInstanceCore 托管策略或定义等效权限的自定义策略。有关更多信息,请参阅Amazon Systems Manager 用户指南中的为边缘设备创建 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": "*" } ] }

端点和端口

除了基本操作所需的端点和端口外,此组件还必须能够对以下端点和端口执行出站请求。有关更多信息,请参阅 允许设备流量通过代理或防火墙

Endpoint 端口 必需 描述

ec2messages.region.amazonaws.com

443 支持

与中的 Systems Manager 服务进行通信 Amazon Web Services 云。

ssm.region.amazonaws.com

443 支持

将核心设备注册为 Systems Manager 托管节点。

ssmmessages.region.amazonaws.com

443 支持

在中与会话管理器(Systems Manager 的一项功能)进行通信 Amazon Web Services 云。

有关更多信息,请参阅《用户指南》中的 “参考:ec2messages、ssmessages 和其他 API 调用”。Amazon Systems Manager

依赖项

部署组件时, Amazon IoT Greengrass 还会部署其依赖项的兼容版本。这意味着您必须满足组件及其所有依赖项的要求才能成功部署该组件。本节列出了此组件已发布版本的依赖关系以及定义每个依赖项的组件版本的语义版本限制。您还可以在Amazon IoT Greengrass 控制台中查看组件每个版本的依赖关系。在组件详细信息页面上,查找 “依赖关系” 列表。

下表列出了此组件的 1.0.0 到 1.2.4 版本的依赖关系。

依赖关系 兼容版本 依赖关系类型
代币兑换服务 ^2.0.0 软性

有关组件依赖关系的更多信息,请参阅组件配方参考

配置

此组件提供以下配置参数,您可以在部署该组件时对其进行自定义。

SSMRegistrationRole

Systems Manager 可以担任的 IAM 服务角色,其中包括 AmazonSSM ManagedInstanceCore 托管策略或定义等效权限的自定义策略。有关更多信息,请参阅Amazon Systems Manager 用户指南中的为边缘设备创建 IAM 服务角色

SSMOverrideExistingRegistration

(可选)如果核心设备已经运行通过混合激活注册的 Systems Manager 代理,则可以覆盖该设备的现有 Systems Manager 代理注册。将此选项设置为,true使用此组件提供的 Systems Manager 代理将核心设备注册为托管节点。

注意

此选项仅适用于通过混合激活注册的设备。如果核心设备在安装了 Systems Manager 代理并配置了实例配置文件角色的 Amazon EC2 实例上运行,则 Amazon EC2 实例的现有托管节点 ID 以开头i-。安装 Systems Manager 代理组件时,Systems Manager 代理会注册一个新的托管节点,该节点的 ID 以mi-而不是开头i-。然后,您可以使用 ID mi- 以开头的托管节点通过 Systems Manager 管理核心设备。

默认:false

SSMResourceTags

(可选)要添加到此组件为核心设备创建的 Systems Manager 托管节点的标签。您可以使用这些标签通过 Systems Manager 管理一组核心设备。例如,您可以在所有带有您指定标签的设备上运行命令。

指定一个列表,其中每个标签都是一个带有Key和的对象Value。例如,以下值SSMResourceTags指示此组件在核心设备的托管节点richard-roe上将Owner标签设置为。

[ { "Key": "Owner", "Value": "richard-roe" } ]

如果托管节点已经存在并且存在,SSMOverrideExistingRegistrationfalse此组件将忽略这些标签。

例 示例:配置合并更新

以下示例配置指定使用名为的服务角色SSMServiceRole以允许核心设备注册并与 Systems Manager 通信。

{ "SSMRegistrationRole": "SSMServiceRole", "SSMOverrideExistingRegistration": false, "SSMResourceTags": [ { "Key": "Owner", "Value": "richard-roe" }, { "Key": "Team", "Value": "solar" } ] }

本地日志文件

Systems Manager 代理软件将日志写入 Greengrass 根文件夹之外的文件夹。有关更多信息,请参阅《Amazon Systems Manager 用户指南》中的 “查看 Systems Manager 代理日志”。

Systems Manager 代理组件使用 shell 脚本安装、启动和停止 Systems Manager 代理。您可以在以下日志文件中找到这些脚本的输出。

/greengrass/v2/logs/aws.greengrass.SystemsManagerAgent.log
查看此组件的日志
  • 在核心设备上运行以下命令以实时查看此组件的日志文件。/greengrass/v2替换为 Amazon IoT Greengrass 根文件夹的路径。

    sudo tail -f /greengrass/v2/logs/aws.greengrass.SystemsManagerAgent.log

另请参阅

更改日志

下表描述了该组件的每个版本中的更改。

版本

更改

1.2.4

错误修复和改进

更新此组件以获取代理版本 3.2.2303.0。

1.2.3

错误修复和改进
  • 在 Greengrass 上使用 snap 添加代理组件安装的重试次数。

  • 更新代理组件的配置,使其仅使用 Greengrass 中的 Onprem 身份。

  • 仅当安装的代理版本与 Greengrass SSM 代理组件的版本不匹配时,才更新此组件以更新代理。

1.1.0

此版本包含错误修复和改进。

1.0.0

初始版本。