use*_*029 9 django amazon-web-services python-2.7 amazon-elastic-beanstalk
我正在尝试按照本教程将django项目部署到AWS Beanstalk.我执行了
eb create
Run Code Online (Sandbox Code Playgroud)
过了一会儿,我得到了错误
The instance profile aws-elasticbeanstalk-ec2-role associated with the environment does not exist.
Run Code Online (Sandbox Code Playgroud)
我是亚马逊云的新手,无法解释此错误.有人能帮助我吗?
Arp*_*ain 62
早期 Elastic Beanstalk 用于创建默认 EC2 实例配置文件,该配置文件在aws-elasticbeanstalk-ec2-roleAWS 账户首次创建环境时命名。该实例配置文件包括默认托管策略。但是,最近的 AWS 安全准则不允许 AWS 服务自动创建具有对其他 AWS 服务(本例中为 EC2)的信任策略的角色。由于这些安全准则,Elastic Beanstalk 不再创建默认aws-elasticbeanstalk-ec2-role实例配置文件。
因此,如果您的 AWS 账户没有\xe2\x80\x99t EC2 实例配置文件,则必须使用 IAM 服务创建一个。然后,您可以将 EC2 实例配置文件分配给您创建的新环境。
\n打开 IAM 控制台 \xe2\x86\x92 在控制台的导航窗格中,选择角色,然后创建角色 \xe2\x86\x92 在受信任的实体类型下,选择 AWS 服务 \xe2\x86\x92 在用例下,选择 EC2 \ xe2\x86\x92 选择下一步 \xe2\x86\x92 附加 - AWSElasticBeanstalkWebTier、AWSElasticBeanstalkWorkerTier、AWSElasticBeanstalkMulticontainerDocker \xe2\x86\x92 选择下一步 \xe2\x86\x92 输入角色的名称 - aws-elasticbeanstalk-ec2-role\xe2\x86\x92 选择创建角色。
如果您已有实例配置文件,请确保您具有以下所需的策略。为了满足环境的默认用例,必须将这些策略附加到 EC2 实例配置文件的角色:-
\n角色名称:aws-elasticbeanstalk-ec2-role
附上许可政策:-
\nAWSElasticBeanstalkWebTierAWSElasticBeanstalkWorkerTierAWSElasticBeanstalkMulticontainerDockerEC2 的信任关系策略:-
\n{\n "Version": "2008-10-17",\n "Statement": [\n {\n "Effect": "Allow",\n "Principal": {\n "Service": "ec2.amazonaws.com"\n },\n "Action": "sts:AssumeRole"\n }\n ]\n}\nRun Code Online (Sandbox Code Playgroud)\n\n\n希望这可以帮助。
\nJRi*_*dsz 14
如果有人不想或不能使用 aws elb Web 控制台创建角色,您只需手动创建角色并添加以下策略:
测试该角色是否是强制性的。也许我们只需要将此策略添加到当前用户
Nic*_*ich 11
第一次使用弹性beanstalk控制台时会创建该角色.CLI也会尝试创建它,但您的IAM用户无权创建它.您可以登录控制台并进入平台选择页面来修复此错误.您会注意到它会要求您创建一个角色.
否则,您可以为您的IAM用户创建角色权限,CLI将为您创建角色.
| 归档时间: |
|
| 查看次数: |
781 次 |
| 最近记录: |