Amazon ECS"引用的群集处于非活动状态"

时间:2016-12-07 06:08:38

标签: amazon-web-services docker amazon-ec2 amazon-ecs

我按照步骤在Ubuntu 16上安装ECS客户端,但是当我尝试运行ECS容器代理时,它会不断重启,当我查看日志时

2016-12-07T06:01:39Z [INFO] Starting Agent: Amazon ECS Agent - v1.13.1 (efe53c6)
2016-12-07T06:01:39Z [INFO] Loading configuration
2016-12-07T06:01:39Z [INFO] Checkpointing is enabled. Attempting to load state
2016-12-07T06:01:39Z [INFO] Loading state! module="statemanager"
2016-12-07T06:01:39Z [INFO] Event stream ContainerChange start listening...
2016-12-07T06:01:39Z [INFO] Detected Docker versions [1.17 1.18 1.19 1.20 1.21 1.22 1.23]
2016-12-07T06:01:39Z [INFO] Registering Instance with ECS
2016-12-07T06:01:39Z [ERROR] Could not register module="api client" err="ClientException: The referenced cluster was inactive.
    status code: 400, request id: 9eaa4124-bc42-11e6-9cf1-7559dea2bdf8"
2016-12-07T06:01:39Z [ERROR] Error registering: ClientException: The referenced cluster was inactive.
    status code: 400, request id: 9eaa4124-bc42-11e6-9cf1-7559dea2bdf8

我在谷歌上找不到这个错误的引用,我想知道什么是错的...

我是否需要在ECS信息中心上创建群集名称? 我已将容器角色附加到我的EC2实例,该实例允许创建群集,因此我不认为问题来自此处...

我的泊坞窗运行配置

sudo docker run --name ecs-agent \
--detach=true \
--restart=on-failure:10 \
--volume=/var/run/docker.sock:/var/run/docker.sock \
--volume=/var/log/ecs/:/log \
--volume=/var/lib/ecs/data:/data \
--net=host \
--env=ECS_LOGFILE=/var/log/ecs-agent.log \
--env=ECS_LOGLEVEL=info \
--env=ECS_DATADIR=/data \
--env=ECS_CLUSTER=my-cluster \
--env=ECS_ENABLE_TASK_IAM_ROLE=true \
--env=ECS_ENABLE_TASK_IAM_ROLE_NETWORK_HOST=true \
amazon/amazon-ecs-agent:latest

1 个答案:

答案 0 :(得分:3)

您需要致电aws ecs create-cluster --region $REGION --cluster my-cluster,通过SDK调用CreateCluster API,或在控制台中创建它。 ECS代理仅会自动创建名为default的群集,并且仅在未指定ECS_CLUSTER时才会生成。