使用 AWS CloudFormation 启动 Amazon Elastic Container Service (Amazon ECS) 资源 (AWS::ECS::Service) 时收到一条错误消息。

如果使用的是 Classic Load Balancer,将收到以下类似错误消息:

"12:21:48 UTC+0100 CREATE_FAILED AWS::ECS::Service ECSService Unable to assume role and validate the listeners configured on your load balancer.Please verify the role being passed has the proper permissions."

如果使用的是 Application Load Balancer,将收到以下类似错误消息:

"12:21:48 UTC+0100 CREATE_FAILED AWS::ECS::Service ECSService Unable to assume role and validate the specified targetGroupArn.Please verify that the ECS service role being passed has the proper permissions."

如果使用指定实例配置文件的独立 AWS Identity and Access Management (IAM) 策略资源创建 Amazon ECS 服务,Amazon ECS 服务可能会失败并返回一条错误消息。

要解决 Classic Load Balancer 和Application Load Balancer 的这一错误,请尝试以下一个或多个解决办法:

  • 确认 Amazon ECS 服务的 IAM 角色具有在负载均衡器中注册和取消注册容器实例的适当权限
    提示:可以使用此 CloudFormation 模板作为参考,构建具有适当依赖关系的 Amazon ECS 架构组件。架构组件包括 Amazon ECS 集群、服务、负载均衡器、容器实例和 IAM 资源。
  • 确认 AWS Auto Scaling 组或 Amazon ECS 容器实例具有作为属性关联的实例配置文件
  • 使用自定义资源在堆栈创建过程中引发延迟,这可为服务角色权限的传播提供时间。
  • 使用 DependsOn 属性指定 AWS::IAM::PolicAWS::ECS::Service 资源的依赖关系。
    注意:或者,可以使用自定义资源在堆栈创建过程中引发延迟,这可为服务角色权限的传播提供时间。

此页内容对您是否有帮助? |

返回 AWS Support 知识中心

需要帮助? 请访问 AWS Support 中心

发布时间:2016 年 8 月 9 日

更新时间:2019 年 3 月 26 日