参考:ec2messages、ssmmessages 和其他 API 操作 - Amazon Systems Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

参考:ec2messages、ssmmessages 和其他 API 操作

如果您监控 API 操作,可能会看到对以下操作的调用:

  • ec2messages:AcknowledgeMessage

  • ec2messages:DeleteMessage

  • ec2messages:FailMessage

  • ec2messages:GetEndpoint

  • ec2messages:GetMessages

  • ec2messages:SendReply

  • ssmmessages:CreateControlChannel

  • ssmmessages:CreateDataChannel

  • ssmmessages:OpenControlChannel

  • ssmmessages:OpenDataChannel

  • ssm:DescribeDocumentParameters

  • ssm:DescribeInstanceProperties

  • ssm:GetCalendar

  • ssm:GetManifest

  • ssm:ListInstanceAssociations

  • ssm:PutCalendar

  • ssm:PutConfigurePackageResult

  • ssm:RegisterManagedInstance

  • ssm:RequestManagedInstanceRoleToken

  • ssm:UpdateInstanceAssociationStatus

  • ssm:UpdateInstanceInformation

  • ssm:UpdateManagedInstancePublicKey

这些是 Amazon Systems Manager 使用的特殊操作,如本主题的其余部分中所述。

与代理相关的 API 操作(ssmmessagesec2messages 端点)

ssmmessages API 操作

Systems Manager 使用 ssmmessages 端点进行以下两种类型的 API 操作:

  • 从 SSM Agent 到在云中 Session Manager(Amazon Systems Manager 的功能)的操作。使用云中的Session Manager服务创建和删除会话通道需要此终端节点。此外,如果允许连接,则 SSM Agent 通过此 Amazon Message Gateway Service 接收 Command 文档。如果不允许连接,则 SSM Agent 通过 Amazon Message Delivery Service 接收 Command 文档。有关更多信息,请参阅用于 Amazon Session Manager Message Gateway Service 的操作、资源和条件键

  • 从 Systems Manager 代理(SSM Agent)到云中 Systems Manager 服务的操作。

ec2messages API 操作

对 Amazon Message Delivery Service 端点进行 ec2messages:* API 操作。Systems Manager 将此端点用于从 Systems Manager Agent (SSM Agent) 到云中 Systems Manager 服务的 API 操作。

重要

ec2messages:* API 操作仅在 2024 年之前推出的 Amazon Web Services 区域 中受支持。在 2024 年及之后推出的区域中,仅支持 ssmmessages:* API 操作。

端点连接优先级

从 SSM Agent 的版本 3.3.40.0 开始,只要可用,Systems Manager 就会使用 ssmmessages:* 端点(Amazon Message Gateway Service)而非 ec2messages:* 端点(Amazon Message Delivery Service)。

如果在 Amazon Identity and Access Management(IAM)权限策略中提供对 ssmmessages:* 的访问权限,即便 IAM 实例配置文件配置为允许两个端点,SSM Agent 也会连接到 ssmmessages:* 端点。这包括您自己创建的 IAM 实例配置文件的策略和 IAM 服务角色的策略,以及由 Quick Setup 主机管理配置默认主机管理配置创建的 IAM 实例配置文件的策略。

如果已经为两个端点提供权限,并使用 CloudWatch Metrics 等监控 API 操作,则不会看到对 ec2messages:* 的调用。

对于 2024 年之前推出的 Amazon Web Services 区域:此时,您可以放心地删除策略中的 ec2messages:* 权限。

端点连接失效转移

仅适用于 2024 年之前推出的 Amazon Web Services 区域:如果 IAM 实例配置文件在代理启动时没有为 ssmmessages:* 提供权限,而仅为 ec2messages:* 提供权限,则 SSM Agent 会连接到 ec2messages:* 端点。如果在 SSM Agent 启动时同时拥有 ssmmessages:*ec2messages:*,但在代理启动后移除了 ssmmessages:*,则 SSM Agent 很快就会将连接切换到 ec2messages:* 端点。对于 2024 年及之后推出的区域,仅支持 ssmmessages:* 端点。

有关 ssmmessagesec2messages:* 端点的详细信息,请参阅《Amazon Service Authorization Reference》中的以下主题。

ssm:* 命名空间实例相关的 API 操作

DescribeDocumentParameters

Systems Manager 运行此 API 操作以在 Amazon EC2 控制台中呈现特定节点。DescribeDocumentParameters 操作的结果将在文档节点中显示。

DescribeInstanceProperties

Systems Manager 运行此 API 操作以在 Amazon EC2 控制台中呈现特定节点。DescribeInstanceProperties 操作的结果将显示在 Fleet Manager 节点中。

GetCalendar

Systems Manager 运行此 API 操作,在 Change Calendar 控制台中呈现 Change Calendar 类型文档。

GetManifest

SSM Agent 运行此 API 操作以确定安装或更新指定版本 Amazon Systems Manager Distributor 软件包的系统要求。这是旧版 API 操作,在 2017 年之后推出的 Amazon Web Services 区域 中不可用。

ListInstanceAssociations

SSM Agent 运行此 API 操作以了解新的 State Manager 关联是否可用。State Manager 需要此 API 操作才能正常运行。

PutCalendar

Systems Manager 运行此 API 操作,在 Change Calendar 控制台中更新 Change Calendar 类型文档。

PutConfigurePackageResult

SSM Agent 运行此 API 操作以将公共 Distributor 软件包的安装错误和延迟指标发布到软件包所有者的账户。

RegisterManagedInstance

SSM Agent 对以下场景运行此 API 操作:

  • 使用激活码和 ID 向 Systems Manager 注册本地服务器或虚拟机(VM)作为托管式实例。

  • 注册 Amazon IoT Greengrass Version 2 凭证。

运行 SSM Agent 版本 3.1.x 或更高版本的 Amazon EC2 实例也会调用此操作。

RequestManagedInstanceRoleToken

SSM Agent 运行此 API 操作以检索访问托管式节点的临时凭证。

UpdateInstanceAssociationStatus

SSM Agent 运行此 API 操作以更新关联。State Manager(Amazon Systems Manager 的一项功能)需要此 API 操作才能正常运行。

UpdateInstanceInformation

SSM Agent 每 5 分钟调用一次云中的 Systems Manager 服务,以提供检测信号信息。需要此调用来保持代理的检测信号,以便服务了解代理按照预期工作。

UpdateManagedInstancePublicKey

在托管式节点上轮换密钥对后,SSM Agent 会运行此 API 操作以提供公有密钥。公有密钥用于对使用私有密钥签名的请求进行身份验证,以从 Systems Manager 获取临时凭证。