我试图使用EC2容器服务 . 我正在使用terraform来创建它 . 我已经定义了ecs集群,自动缩放组,启动配置 . 一切似乎都有效 . 除了一件事 . ec2实例正在创建,但它们没有在集群中注册,集群只是说没有实例可用 .
在ecs agent登录创建的实例中,我发现日志充斥着一个错误:
Error registering: NoCredentialProviders: no valid providers in chain
使用适当的角色ecs_role创建ec2实例 . 此角色有两个策略,其中一个是跟随的,如需要的文档:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:CreateCluster",
"ecs:DeregisterContainerInstance",
"ecs:DiscoverPollEndpoint",
"ecs:Poll",
"ecs:RegisterContainerInstance",
"ecs:StartTelemetrySession",
"ecs:Submit*",
"ecs:StartTask"
],
"Resource": "*"
}
]
}
我正在使用ami ami-6ff4bd05 . 最新的terraform .
2 回答
这是角色中信任关系的问题,因为角色应该包括ec2 . 不幸的是,错误消息并没有那么有用 .
信任关系的例子:
显然,当传递无效的aws-profile时,也会出现此错误消息 .