为Elastic Beanstalk创建的EC2实例配置文件角色不可见
问题描述
在全新AWS账户中创建首个Elastic Beanstalk(EB)环境时,手动创建的IAM角色未生成对应的EC2实例配置文件,导致该角色无法在EB环境创建向导的「EC2 Instance Profile」可选列表中显示,且角色摘要页面缺失「实例配置文件ARN」信息。此前已多次按AWS文档手动创建过该角色,操作流程与其他账户一致,但本次出现异常。
排查与解决步骤
确认实例配置文件关联状态
进入IAM控制台,找到目标角色并切换到「实例配置文件」标签页,查看是否已绑定实例配置文件。若未绑定,需手动创建并关联:- 进入IAM控制台→「实例配置文件」→「创建实例配置文件」
- 输入与角色同名的配置文件名称(建议保持一致,避免混淆)
- 在关联角色步骤中选择目标IAM角色,完成创建
验证可信实体策略正确性
确保角色的可信实体为EC2服务,策略JSON需符合以下格式:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }即使截图显示可信实体为EC2,也可重新保存策略触发AWS后台同步。
排查账户初始化延迟或配额问题
- 全新AWS账户可能存在服务初始化延迟,等待10-15分钟后刷新EB向导和IAM控制台重试
- 进入IAM控制台→「配额」页面,确认账户的IAM角色/实例配置文件配额未达上限(默认配额足够满足基础创建需求)
重新按标准流程创建角色
删除现有异常角色,严格按照以下步骤重新操作:- 创建IAM角色时,选择「EC2」作为受信任的实体类型
- 根据EB环境类型,附加对应的权限策略:
AWSElasticBeanstalkWebTier、AWSElasticBeanstalkWorkerTier或AWSElasticBeanstalkMulticontainerDocker - 角色创建完成后,立即创建同名实例配置文件并关联该角色
内容的提问来源于stack exchange,提问作者Mick Byrne
相关产品推荐
相关产品推荐

