You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Boto3调用send_command()在Ubuntu实例报错InvalidInstanceId问题咨询

问题解答

1. Ubuntu 22.04是否默认支持SSM?

AWS官方提供的Ubuntu 22.04 AMI(包括你提到的ami-0b828c1c5ac3f13ee)确实默认预装了SSM Agent,但要确保实例能被SSM管理,还需满足以下条件:

  • 实例必须绑定包含*AmazonSSMManagedInstanceCore*权限的IAM角色,确保Agent能与SSM服务完成认证和通信
  • 实例网络可达:要么分配公网IP并允许出站访问互联网,要么在VPC中配置SSM、EC2 Messages、CloudWatch Logs的VPC端点,否则Agent无法注册到SSM服务,会导致调用send_command时提示实例状态无效
  • 确认使用的是官方AMI,自定义构建的Ubuntu 22.04镜像可能未预装SSM Agent

2. 为何Amazon AMI偶尔也会出现该问题?

Amazon Linux AMI出现该报错通常是临时状态导致,常见原因包括:

  • Agent初始化延迟:实例刚启动后,SSM Agent需要30-60秒完成初始化、注册到SSM服务,此时立即调用send_command会失败,等待片刻重试即可
  • 临时网络异常:实例所在网络出现短暂波动,导致Agent与SSM服务的连接中断,无法保持在线状态
  • IAM角色权限延迟:如果实例绑定的IAM角色最近修改过权限,AWS权限同步可能存在延迟,导致Agent无法完成认证
  • Agent版本兼容问题:极少数情况下,Amazon Linux上的SSM Agent版本过旧,无法兼容最新的SSM服务API,手动更新Agent即可解决

内容的提问来源于stack exchange,提问作者rare77

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 21:43:25