4

我试图启动一个AWS青苗环境中运行多个集装箱码头工人,但它失败的事件以下列表:AWS青苗环境中运行多集装箱码头工人无法启动与健康:严重

2016-01-18 16:58:57 UTC+0100 WARN Removed instance [i-a7162d2c] from your environment due to a EC2 health check failure. 
2016-01-18 16:57:57 UTC+0100 WARN Environment health has transitioned from Degraded to Severe. None of the instances are sending data. 
2016-01-18 16:47:58 UTC+0100 WARN Environment health has transitioned from Pending to Degraded. Command is executing on all instances. Command failed on all instances. 
2016-01-18 16:43:58 UTC+0100 INFO Added instance [i-a7162d2c] to your environment. 
2016-01-18 16:43:27 UTC+0100 INFO Waiting for EC2 instances to launch. This may take a few minutes. 
2016-01-18 16:41:58 UTC+0100 INFO Environment health has transitioned to Pending. There are no instances. 
2016-01-18 16:41:54 UTC+0100 INFO Created security group named: awseb-e-ih2exekpvz-stack-AWSEBSecurityGroup-M2O11DNNCJXW 
2016-01-18 16:41:54 UTC+0100 INFO Created EIP: 52.48.132.172 
2016-01-18 16:41:09 UTC+0100 INFO Using elasticbeanstalk-eu-west-1-936425941972 as Amazon S3 storage bucket for environment data. 
2016-01-18 16:41:08 UTC+0100 INFO createEnvironment is starting. 

健康状况被标记为 “严重”,我有如下记录:

98 % of CPU is in use. 
Initialization failed at 2016-01-18T15:54:33Z with exit status 1 and error: Hook /opt/elasticbeanstalk/hooks/preinit/02ecs.sh failed. 

. /opt/elasticbeanstalk/hooks/common.sh 
/opt/elasticbeanstalk/bin/get-config container -k ecs_cluster 
EB_CONFIG_ECS_CLUSTER=awseb-figure-test-ih2exekpvz 
/opt/elasticbeanstalk/bin/get-config container -k ecs_region 
EB_CONFIG_ECS_REGION=eu-west-1 
/opt/elasticbeanstalk/bin/get-config container -k support_files_dir 
EB_CONFIG_SUPPORT_FILES_DIR=/opt/elasticbeanstalk/containerfiles/support 
is_baked ecs_agent 
[[ -f /etc/elasticbeanstalk/baking_manifest/ecs_agent ]] 
true 
aws configure set default.output json 
aws configure set default.region eu-west-1 
echo ECS_CLUSTER=awseb-figure-test-ih2exekpvz 
grep -q 'ecs start/' 
initctl status ecs 
initctl start ecs 
ecs start/running, process 8418 
TIMEOUT=120 
jq -r .ContainerInstanceArn 
curl http://localhost:51678/v1/metadata 
% Total % Received % Xferd Average Speed Time Time Time Current 
Dload Upload Total Spent Left Speed 
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (7) Failed to connect to  localhost port 51678: Connection refused 

我的配置:

Environment type: Single Instance 
Instance type: Medium 
Root volume type: SSD 
Root Volume Size: 8GB 
Zone: EU-West 

我Dockerrun.aws.json:

{ 
    "AWSEBDockerrunVersion": "2", 
    "containerDefinitions": [ 
    { 
     "essential": true, 
     "memory": 252, 
     "links": [ 
     "redis" 
     ], 
     "mountPoints": [ 
     { 
      "containerPath": "/srv/express", 
      "sourceVolume": "_WebExpress" 
     }, 
     { 
      "containerPath": "/srv/express/node_modules", 
      "sourceVolume": "SrvExpressNode_Modules" 
     } 
     ], 
     "name": "web", 
     "image": "figure/web:latest", 
     "portMappings": [ 
     { 
      "containerPort": 3000, 
      "hostPort": 3000 
     } 
     ] 
    }, 
    { 
     "essential": true, 
     "memory": 252, 
     "image": "redis", 
     "name": "redis", 
     "portMappings": [ 
     { 
      "containerPort": 6379, 
      "hostPort": 6379 
     } 
     ] 
    } 
    ], 
    "family": "", 
    "volumes": [ 
    { 
     "host": { 
     "sourcePath": "./web/express" 
     }, 
     "name": "_WebExpress" 
    }, 
    { 
     "host": { 
     "sourcePath": "/srv/express/node_modules" 
     }, 
     "name": "SrvExpressNode_Modules" 
    } 
    ] 
} 
+0

你有没有安装应用程序中的健康检查端点?:http://docs.aws.amazon.com/elasticbeanstalk /latest/dg/using-features.managing.elb.html#using-features.managing.elb.healthchecks –

+0

我没有。我刚刚意识到我没有配置文档http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker_ecstutorial.html –

回答

1

@Kilianc:如果您使用的创建弹性豆茎应用多码头集装箱平台,那么您必须将以下策略列表添加到默认角色“aws-elasticbeanstalk-ec2-role”,或者您可以创建自己的角色。

  1. AWSElasticBeanstalkWebTier
  2. AWSElasticBeanstalkMulticontainerDocker
  3. AWSElasticBeanstalkWorkerTier

感谢