使用共享AMI创建AWS Cloud9 EC2环境失败求助
解决AWS Cloud9自定义AMI不被识别的问题
即使你确认AMI ID无误,Cloud9对自定义AMI有特定约束,需完成以下配置才能正常使用:
1. 确保AMI满足Cloud9基础兼容要求
- AMI必须基于Cloud9支持的操作系统衍生:Amazon Linux 2、Ubuntu 18.04+/20.04+/22.04+ 或 Windows Server 2019/2022,非兼容系统的AMI无法被Cloud9识别。
- 根卷需为EBS卷,且可用空间不少于10GB。
- 因你使用
CONNECT_SSM连接类型,AMI必须预安装并启用SSM Agent:- Amazon Linux 2:默认已安装,确保服务运行:
sudo systemctl start amazon-ssm-agent && sudo systemctl enable amazon-ssm-agent - Ubuntu:手动安装并启用:
sudo snap install amazon-ssm-agent && sudo systemctl enable --now snap.amazon-ssm-agent.amazon-ssm-agent.service - Windows:下载安装SSM Agent并设置为自动启动。
- Amazon Linux 2:默认已安装,确保服务运行:
2. 配置AMI的访问权限
- 若为跨账户共享AMI,需确认你的AWS账户已被添加到该AMI的共享列表中,且拥有
ec2:RunInstances权限来启动该实例。 - 为执行CLI命令的IAM实体(用户/角色)添加权限策略:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeImages", "ec2:RunInstances" ], "Resource": "arn:aws:ec2:你的区域:共享AMI的账户ID:image/ami-0123456789876" } ] }
3. 验证AMI的可用性与兼容性
- 手动启动该AMI对应的EC2实例,确认实例能正常启动,且可通过SSM Session Manager连接成功。
- 检查实例内是否存在Cloud9依赖的基础组件:Python 3.x、Node.js等开发工具,避免因组件缺失导致Cloud9无法初始化环境。
4. 确认CLI命令参数的区域一致性
- AMI是区域级资源,需确保你当前CLI配置的AWS区域,与该AMI所在区域完全一致,跨区域无法直接使用共享AMI。
内容的提问来源于stack exchange,提问作者Alexis
相关产品推荐
相关产品推荐

