AWS Beanstalk - 获取“访问Auto Scaling时拒绝访问且...”错误

时间:2016-01-27 21:37:40

标签: amazon-web-services elastic-beanstalk

当我尝试从命令行启动Elastic Beanstalk环境时,我在此过程中收到此错误:

  

环境健康已从待定转为警告。访问   使用时访问Auto Scaling和Elastic Load Balancing时被拒绝   角色“arn:aws:iam :: XXXXXXXXXX:role / aws-elasticbeanstalk-service-role”。   验证角色策略。

当我从控制台启动时,我没有收到此警告。我试图从CLI复制相同的AWS控制台配置,但我仍然遇到此错误。

有什么想法发生了什么?

3 个答案:

答案 0 :(得分:17)

如果有人仍然遇到类似的错误并且仍然不确定如何解决

  1. 在 AWS 控制台中导航到 IAM。
  2. 导航到 aws-elasticbeanstalk-service-role(在访问管理 > 角色下)。
  3. 附上以下政策:
    • AutoScalingFullAccess
    • ElasticLoadBalancingFullAccess

然后我重建了环境,没有更多错误!

以下文章帮助我更好地理解了这一点:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts-roles-service.html

答案 1 :(得分:7)

您可以转到您的 IAM 控制台。您将看到“aws-elasticbeanstalk-service-role”,在权限选项卡下,您可以代表您授予您想要授予的特定策略。刷新,您应该“确定”。确保您授予角色的权限可以管理此“使用角色的 Auto Scaling 和 Elastic Load Balancing”

答案 2 :(得分:1)

Elastic Beanstalk现在使用服务角色代表您调用其他AWS服务。 IAM角色在您的帐户中创建,您授予启动权限 服务角色是可选的,但建议用于新环境。

特别是对于增强型运行状况监控(根据错误消息使用的是),服务角色是必需的。配置错误的服务角色可能会导致出现此错误消息。

控制台体验使您可以非常轻松地创建/使用具有正确权限的角色。这是因为在使用创建环境向导时,您只需从下拉列表中选择正确的角色(如果角色已存在)。

使用CLI时,您需要传递服务角色选项设置。 (namespace:aws:elasticbeanstalk:environment,option_name:ServiceRole)。您可以找到this文档中配置的角色所需的权限。

我之前的堆栈溢出回答here中有关于服务角色的更多详细信息。