AWS ECS Fargate ALB无法验证targetGroupArn

时间:2020-04-12 19:12:26

标签: amazon-web-services amazon-ecs amazon-elb aws-fargate

注意:这是关于ELBv2 ALB,而不是传统的负载平衡器ELBv1,但是我谦虚的代表不会让我改善标记。

我正在尝试创建AWS ECS Fargate服务。我已经为Task中的每个容器创建了一个应用程序负载均衡器,由于根据文档,create-service现在支持多个负载均衡器-我们应该一切都好吧?由于它是ALB,因此我指定targetGroupArn而不是loadBalancerName,并且由于ECS默认情况下创建了服务链接角色,因此AWSServiceRoleForECS我应该能够映射目标组并继续创建服务,对吗?以前,您不得不根据互联网上的提示手动创建ecsServiceRole。

我的命令是

aws ecs create-service  --region $REGION --cluster $CLUSTER --service-name production-svc --task-definition $TASK_ARN --desired-count 2 --launch-type "FARGATE" --network-configuration "awsvpcConfiguration={subnets=[${SUBNET_1}, ${SUBNET_2}],securityGroups=[${SECURITYGROUP_ID}]}" --load-balancers=tgt-a,containerName=a,containerPort=5000,targetGroupArn=tgt-b,containerName=b,containerPort=6000

我得到的错误是 调用CreateService操作时发生错误(InvalidParameterException):无法承担角色并验证指定的targetGroupArn。请确认所传递的ECS服务角色具有适当的权限。

现在,尽管可以通过互联网查看我的负载均衡器不存在(您必须信任我,但它们确实存在-我提供了目标组ARN,并且这些目标组已通过aws elbv2 cli确认存在并被映射到有效的活动应用程序负载均衡器,这些负载均衡器都与群集位​​于同一区域),或者服务映射角色(先前为我创建的一个AWS)没有足够的权限来验证targetGroupArn。

我真的必须为自动ECS服务映射角色添加权限吗?如果是这样-具有哪些权限?

            "elasticloadbalancing:DeregisterInstancesFromLoadBalancer",
            "elasticloadbalancing:DeregisterTargets",
            "elasticloadbalancing:Describe*",
            "elasticloadbalancing:RegisterInstancesWithLoadBalancer",
            "elasticloadbalancing:RegisterTargets",

我的自动角色(具有AmazonECSServiceRolePolicy)已经拥有所有这些角色?缺少哪些?

0 个答案:

没有答案