AWS Session Manager连接CDK部署的同配置EC2实例出现TargetNotConnected错误
排查步骤(问题根因100%来自ls-WindowsInstance所用自定义AMI的内部配置,因为两台实例的云端配置完全一致)
1. 实例内部SSM Agent状态排查(需先临时通过公网RDP/跳板机登录问题实例)
- 打开Windows服务控制台,检查
Amazon SSM Agent服务状态:确认运行状态为正在运行,启动类型为自动。自定义AMI打包过程中经常会出现提前停止SSM Agent、忘记恢复启动配置的情况。 - 查看SSM Agent运行日志,路径为
C:\ProgramData\Amazon\SSM\Logs\amazon-ssm-agent.log,重点排查是否存在服务端点连接失败、权限校验错误、初始化异常类报错。
2. 实例内部网络与安全配置排查
- 检查Windows本地防火墙规则:确认是否有规则拦截了到SSM相关服务端点的443端口出站请求,预装的内部软件很可能修改过系统默认防火墙配置。
- 验证DNS解析能力:在实例内执行命令
nslookup ssm.<你的AWS区域>.amazonaws.com,确认可以正常解析,部分内部软件会篡改系统DNS配置导致无法找到SSM服务端点。 - 排查第三方安全/代理软件:确认预装的内部软件没有终端防护、流量代理类规则拦截SSM Agent的出站请求。
3. 云端控制台快速验证
- 进入AWS Systems Manager控制台的「Fleet Manager」页面,查看两台实例的托管状态:正常可连接的
sw-WindowsInstance会显示为在线,问题实例会显示为不在线,即可确认是实例侧SSM Agent未成功注册到服务导致的报错。 - 可在EC2控制台直接提取问题实例的系统日志,查看启动阶段是否有SSM Agent启动失败的相关记录,无需登录实例即可初步定位问题。
修复建议
定位到具体问题修复后,等待3~5分钟待SSM Agent成功注册到服务,即可正常通过Session Manager连接。如果是AMI本身的配置问题,建议修复后重新打包AMI,避免后续部署重复触发该问题。
内容的提问来源于stack exchange,提问作者Andrea Rosati
相关产品推荐
相关产品推荐

