【问题标题】:AWS SSM session manager not showing instancesAWS SSM 会话管理器未显示实例
【发布时间】:2021-08-03 06:49:44
【问题描述】:

我将策略:AmazonSSMManagedInstanceCore 添加到 Windows 实例(正在运行 SSM 代理)的实例配置文件中...但它没有显示在会话管理器下。

它一直说:“没有与所需 IAM 角色相关联的实例。” 知道是什么原因造成的吗?

(我也尝试过使用 amazon linux 2 实例——结果相同)。

编辑:是的,实例位于私有子网中,可能无法访问互联网——所以这可能是问题。

【问题讨论】:

  • 您需要更具体。您的实例是否在私有子网、任何安全组或 nacls 设置中?
  • 实例在公有子网还是私有子网中?如果是私有子网,是否可以连接到 Internet?

标签: amazon-web-services amazon-ec2 aws-ssm aws-session-manager


【解决方案1】:

aws 会话管理器通过 SSM api(使用 websockets)与 ec2 实例建立了通信。您的实例所在的子网必须能够访问互联网,例如通过 NAT 网关(如果它位于私有子网中),或者您必须创建以下 VPC 终端节点:

  • com.amazonaws.[region].ec2messages
  • com.amazonaws.[region].ssmmessages

【讨论】:

    【解决方案2】:

    如果您为此私有子网配置了 NAT 网关,则将实例放在私有子网中不会对 SSM 造成问题(确保私有子网可以访问公共互联网,私有子网 -> NAT 网关 -> 公共子网 ->互联网网关)。

    SSM 要查看实例需要三个先决条件:

    1. SSM 代理应该正在运行
    2. IAM 权限。将策略“AmazonSSMManagedInstanceCore”附加到附加到实例的角色。(附加策略后您可能需要重新启动实例)
    3. 与服务端点的连接。 (如果您更改了出站规则,请尝试使用 0.0.0.0 让所有流量离开实例作为测试)

    希望以上内容能解决您的问题。

    【讨论】:

      【解决方案3】:

      b.b3rn4rd 是正确的(刚刚测试过)如果您缺少 NAT 网关,则需要两个 VPC 端点用于私有子网

      • com.amazonaws.[region].ec2messages
      • com.amazonaws.[region].ssmmessages

      但您还需要一个用于 Systems Manager 本身的 VPC 端点

      • com.amazonaws.[region].ssm

      当 Systems Manager 无法连接到 EC2 实例时,您可以从 AWS 的 own troubleshooting steps 看到:

      验证与端口 443 上的 Systems Manager 端点的连接

      验证连接性的最佳方法取决于您的操作 系统。

      重要提示:在以下命令示例中,将 RegionID 替换为 您的 AWS 区域 ID。

      有关按区域列出的 Systems Manager 终端节点列表,请参阅 AWS 系统 管理器端点和配额。

      ...

      nc -vz ssm.RegionID.amazonaws.com 443 
      nc -vz ec2messages.RegionID.amazonaws.com 443 
      nc -vz ssmmessages.RegionID.amazonaws.com 443 
      

      还需要确保 VPC 端点所在的安全组有一个入站规则,该规则允许来自实例所在的 SG 的所有入站 TCP 流量。

      【讨论】:

        猜你喜欢
        • 2020-08-03
        • 1970-01-01
        • 2021-06-18
        • 2020-09-15
        • 2018-11-06
        • 2021-10-12
        • 2023-03-25
        • 1970-01-01
        • 2019-05-11
        相关资源
        最近更新 更多