使用 ssm-cli
排除托管节点可用性的故障
ssm-cli
是包含在 SSM Agent 安装中的独立命令行工具。在计算机上安装 SSM Agent 3.1.501.0 或更高版本后,可以在该计算机上运行 ssm-cli
命令。这些命令的输出有助于确定,计算机是否满足要由 AWS Systems Manager 托管的 Amazon EC2 实例或非 EC2 计算机的最低要求,从而将其添加到 Systems Manager 的托管式节点列表中。(SSM Agent 版本 3.1.501.0 已于 2021 年 11 月发布。)
最低要求
对于要由 AWS Systems Manager 管理并在托管式节点列表中可用的 Amazon EC2 实例或非 EC2 计算机,必须满足三个主要要求:
-
SSM Agent 必须在具有受支持的操作系统的计算机上安装和运行。
将一些适用于 EC2 的 AWS 托管 Amazon Machine Images(AMIs)配置为启动已预安装 SSM Agent 的实例。(您还可以配置自定义 AMI 以预安装 SSM Agent。) 有关更多信息,请参阅 查找预装了 SSM Agent 的 AMIs。
-
必须将与 Systems Manager 服务进行通信提供所需权限的 AWS Identity and Access Management(IAM)实例配置文件(适用于 EC2 实例)或服务角色(适用于非 EC2 计算机)附加到该计算机上。
-
SSM Agent 必须能够连接到 Systems Manager 端点,以便将其自身注册到服务中。此后,托管节点必须可用于该服务,这一点将通过以下方法来确认:服务每五分钟发送一个信号,以检查托管节点的运行状况。
ssm-cli
中预配置的命令
包含用于收集所需信息的预配置命令,以帮助您诊断您已确认正在运行的计算机未包含在 Systems Manager 中的托管式节点列表中的原因。这些命令会在您指定 get-diagnostics
选项时运行。
在计算机上运行以下命令,使用 ssm-cli
帮助您排除托管节点可用性的故障。
- Linux & macOS
-
ssm-cli get-diagnostics --output table
- Windows
-
在 Windows Server 计算机上,您必须先导航到 C:\Program
Files\Amazon\SSM
目录,才能运行该命令。
ssm-cli.exe get-diagnostics --output table
- PowerShell
-
在 Windows Server 计算机上,您必须先导航到 C:\Program
Files\Amazon\SSM
目录,才能运行该命令。
.\ssm-cli.exe get-diagnostics --output table
该命令以类似于下表的形式返回输出。
对 ssmmessages
、s3
、kms
、logs
和 monitoring
端点进行的连接检查针对其他可选功能,例如可以录入到 Amazon Simple Storage Service (Amazon S3) 或 Amazon CloudWatch Logs 并使用 AWS Key Management Service (AWS KMS) 加密的 Session Manager。
- Linux & macOS
-
[root@instance]# ssm-cli get-diagnostics --output table
┌───────────────────────────────────────┬─────────┬───────────────────────────────────────────────────────────────────────┐
│ Check │ Status │ Note │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ EC2 IMDS │ Success │ IMDS is accessible and has instance id i-0123456789abcdefa in Region │
│ │ │ us-east-2 │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Hybrid instance registration │ Skipped │ Instance does not have hybrid registration │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Connectivity to ssm endpoint │ Success │ ssm.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Connectivity to ec2messages endpoint │ Success │ ec2messages.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Connectivity to ssmmessages endpoint │ Success │ ssmmessages.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Connectivity to s3 endpoint │ Success │ s3.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Connectivity to kms endpoint │ Success │ kms.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Connectivity to logs endpoint │ Success │ logs.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Connectivity to monitoring endpoint │ Success │ monitoring.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ AWS Credentials │ Success │ Credentials are for │
│ │ │ arn:aws:sts::123456789012:assumed-role/Fullaccess/i-0123456789abcdefa │
│ │ │ and will expire at 2021-08-17 18:47:49 +0000 UTC │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Agent service │ Success │ Agent service is running and is running as expected user │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ Proxy configuration │ Skipped │ No proxy configuration detected │
├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤
│ SSM Agent version │ Success │ SSM Agent version is 3.0.1209.0, latest available agent version is │
│ │ │ 3.1.192.0 │
└───────────────────────────────────────┴─────────┴───────────────────────────────────────────────────────────────────────┘
- Windows Server and PowerShell
-
PS C:\Program Files\Amazon\SSM> .\ssm-cli.exe get-diagnostics --output table
┌───────────────────────────────────────┬─────────┬─────────────────────────────────────────────────────────────────────┐
│ Check │ Status │ Note │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ EC2 IMDS │ Success │ IMDS is accessible and has instance id i-0123456789EXAMPLE in │
│ │ │ Region us-east-2 │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Hybrid instance registration │ Skipped │ Instance does not have hybrid registration │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Connectivity to ssm endpoint │ Success │ ssm.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Connectivity to ec2messages endpoint │ Success │ ec2messages.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Connectivity to ssmmessages endpoint │ Success │ ssmmessages.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Connectivity to s3 endpoint │ Success │ s3.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Connectivity to kms endpoint │ Success │ kms.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Connectivity to logs endpoint │ Success │ logs.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Connectivity to monitoring endpoint │ Success │ monitoring.us-east-2.amazonaws.com is reachable │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ AWS Credentials │ Success │ Credentials are for │
│ │ │ arn:aws:sts::123456789012:assumed-role/SSM-Role/i-123abc45EXAMPLE │
│ │ │ and will expire at 2021-09-02 13:24:42 +0000 UTC │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Agent service │ Success │ Agent service is running and is running as expected user │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Proxy configuration │ Skipped │ No proxy configuration detected │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ Windows sysprep image state │ Success │ Windows image state value is at desired value IMAGE_STATE_COMPLETE │
├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤
│ SSM Agent version │ Success │ SSM Agent version is 3.2.815.0, latest agent version in us-east-2 │
│ │ │ is 3.2.985.0 │
└───────────────────────────────────────┴─────────┴─────────────────────────────────────────────────────────────────────┘
下表提供由 ssm-cli
执行的每项检查的其他详细信息。
ssm-cli
诊断检查
Check |
详细信息 |
Amazon EC2 实例元数据服务 |
指示托管节点是否能够访问元数据服务。测试失败表明,与 http://169.254.169.254 的连接出现问题,这可能由本地路由、代理或操作系统(OS)防火墙和代理配置引起。 |
混合实例注册 |
指示是否使用混合激活注册 SSM Agent。 |
连接到 ssm 端点 |
指示节点是否能够在 TCP 端口 443 上访问 Systems Manager 的服务端点。测试失败表明,与 https://ssm.region .amazonaws.com 的连接出现问题,具体取决于节点所在的 AWS 区域。连接问题可能由 VPC 配置引起,包括安全组、网络访问控制列表、路由表或操作系统防火墙和代理。 |
连接到 ec2messages 端点 |
指示节点是否能够在 TCP 端口 443 上访问 Systems Manager 的服务端点。测试失败表明,与 https://ec2messages.region .amazonaws.com 的连接出现问题,具体取决于节点所在的 AWS 区域。连接问题可能由 VPC 配置引起,包括安全组、网络访问控制列表、路由表或操作系统防火墙和代理。 |
连接到 ssmmessages 端点 |
指示节点是否能够在 TCP 端口 443 上访问 Systems Manager 的服务端点。测试失败表明,与 https://ssmmessages.region .amazonaws.com 的连接出现问题,具体取决于节点所在的 AWS 区域。连接问题可能由 VPC 配置引起,包括安全组、网络访问控制列表、路由表或操作系统防火墙和代理。 |
连接到 s3 端点 |
指示节点是否能够在 TCP 端口 443 上访问 Amazon Simple Storage Service 的服务端点。测试失败表明,与 https://s3.region .amazonaws.com 的连接出现问题,具体取决于节点所在的 AWS 区域。节点无需连接到此端点,即可在托管式节点列表中显示。 |
连接到 kms 端点 |
节点能够在 TCP 端口 443 上访问 AWS Key Management Service 的服务端点。测试失败表明,与 https://kms.region .amazonaws.com 的连接出现问题,具体取决于节点所在的 AWS 区域。节点无需连接到此端点,即可在托管式节点列表中显示。
|
连接到 logs 端点 |
节点能够在 TCP 端口 443 上访问 Amazon CloudWatch Logs 的服务端点。测试失败表明,与 https://logs.region .amazonaws.com 的连接出现问题,具体取决于节点所在的 AWS 区域。节点无需连接到此端点,即可在托管式节点列表中显示。 |
连接到 monitoring 端点 |
节点能够在 TCP 端口 443 上访问 Amazon CloudWatch 的服务端点。测试失败表明,与 https://monitoring.region .amazonaws.com 的连接出现问题,具体取决于节点所在的 AWS 区域。节点无需连接到此端点,即可在托管式节点列表中显示。 |
AWS 凭证 |
指示 SSM Agent 是否有基于附加到计算机的 IAM 实例配置文件(适用于 EC2 实例)或 IAM 服务角色(适用于非 EC2 计算机)所需要的凭证。测试失败表明,没有 IAM 实例配置文件或 IAM 服务角色附加到计算机上,或者其不包含 Systems Manager 所需的权限。 |
代理服务 |
指示 SSM Agent 服务是否正在运行,以及该服务是否以 root (适用于 Linux 或 macOS)或 SYSTEM(适用于 Windows Server)运行。测试失败表明,SSM Agent 服务未运行或未作为 root 或 SYSTEM 运行。 |
代理配置 |
指示 SSM Agent 是否配置为使用代理。 |
Sysprep 映像状态(仅适用于 Windows) |
指示节点上 Sysprep 的状态。如果 Sysprep 状态是 IMAGE_STATE_COMPLETE 之外的值,则 SSM Agent 不会在节点上启动。 |
SSM Agent 版本 |
指示是否已安装最新可用版本的 SSM Agent。 |