[英]Unable to assume service linked role when using ecs-cli
我正在嘗試遵循ecs-cli Fargate 部署教程,但在嘗試部署我的服務時遇到了問題。
我正在嘗試使用ecs-cli compose --project-name tutorial-maltz service up
部署我的測試容器ecs-cli compose --project-name tutorial-maltz service up
但我收到一條錯誤消息"InvalidParameterException: Unable to assume the service linked role. Please verify that the ECS service linked role exists.\\n\\tstatus code: 400, request id
到目前為止,我已經創建使用所提供的步驟,我的IAM權限,已驗證我有一個IAM角色ecsTaskExecutionRole
其中包含一個AmazonECSTaskExecutionRolePolicy
。 此策略還具有如下所示的信任關系:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "ecs-tasks.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
所有這些都部署在一個ecs-params.yml
文件中,如下所示:
version: 1
task_definition:
task_execution_role: ecsTaskExecutionRole
ecs_network_mode: awsvpc
task_size:
mem_limit: 0.5GB
cpu_limit: 256
run_params:
network_configuration:
awsvpc_configuration:
subnets:
- "subnet-from-ecs-cli-up"
security_groups:
- "subnet-created-by-ecs-cli-up"
assign_public_ip: ENABLED
我不確定下一步該往哪里看。 我是否缺少 IAM 角色? 我是否需要向我現有的 IAM 角色添加一些額外的參數?
對於未來遇到此問題的人,解決方案是為整個 ECS 創建一個服務相關角色。 這必須由 AWS 賬戶的管理員完成。
請注意,這與您在本教程前面創建的TaskExecutionRole
不同。 服務相關角色允許 ECS 執行諸如啟動新 EC2 實例和創建 ELB 堆棧之類的操作。 TaskExecutionRole僅用於啟動任務的事物。
使用我的管理員角色,在創建ECS集群時,我也被......“ECS集群無法承擔服務鏈接角色。請驗證ECS服務鏈接角色是否存在。” 我確認確實存在AWSServiceRoleForECS角色。
修復? 通過練習“入門”向導,它(重新)配置了一些幕后的東西,現在我的管理員角色被允許承擔AWSServiceRoleForECS和SUCCESS完全創建集群。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.