У меня возникают проблемы с запуском приложения Elastic Beanstalk внутри созданного мной VPC.
Мой VPC выглядит следующим образом:
id: vpc-a1b
name: vpc-green
cidr: 10.0.0.0/16
route table: rtb-1ab
acl: acl-123
Затем у меня есть 6 подсетей:
vpc-green-public-us-east-2a (rt: vpc-green-rt-public)
vpc-green-public-us-east-2b (rt: vpc-green-rt-public)
vpc-green-public-us-east-2c (rt: vpc-green-rt-public)
vpc-green-private-us-east-2a (each has its own rt)
vpc-green-private-us-east-2b
vpc-green-private-us-east-2c
Таблицы маршрутов:
vpc-green-rt-public
10.0.0.0/16 local
0.0.0.0/0 igw-123
vpc-green-rt-private-us-east-2a
10.0.0.0/16 local
0.0.0.0/0 nat-001
Интернет-шлюз:
vpc-green-igw
ACL:
vpc-green-acl
inbound:
100 ALL/All/All 0.0.0.0/0 ALLOW
* All/All/All 0.0.0.0/0 DENY
outbound:
100 ALL/All/All 0.0.0.0/0 ALLOW
* All/All/All 0.0.0.0/0 DENY
associated subnets: all 6 (public and private)
Группы безопасности:
vpc-green-default
inbound:
All/All/All sg-a123 (self)
outbound:
All/All/All 0.0.0.0/0
vpc-green-web
inbound:
tcp, 80, 0.0.0.0/0
tcp, 443, 0.0.0.0/0
icmp, All, 0.0.0.0/0
all, all, all, 0.0.0.0/0
outbound:
UDP, 123, 0.0.0.0/0
all/all/all, 0.0.0.0/0
EB-Load-balancer
inbound:
tcp, 80, 0.0.0.0/0
outbound:
tcp, 80, 0.0.0.0/0
EB-VPC-Security
inbound:
tcp, 80, source=EB-load-balander
outbound:
all, all, 0.0.0.0/0
Фактический экземпляр ec2, который создает ElasticBeanstalk, выглядит так:
t2.small
security groups:
vpc-green-web
EB-VPC-Security
subnet:
one of my public subnets (vpc-green-public-us-east-2a)
Балансировщик нагрузки, созданный EB, выглядит так:
security groups:
EB-load-balancer
subnet:
one of my public subnets (vpc-green-public-us-east-2a)
Я получаю ошибку:
The EC2 instances failed to communicate with AWS Elastic Beanstalk, either because of configuration problems with the VPC or a failed EC2 instance. Check your VPC configuration and try launching the environment again.
Stack named 'awseb-e-xxxxx-stack' aborted operation. Current state: 'CREATE_FAILED' Reason: The following resource(s) failed to create: [AWSEBInstanceLaunchWaitCondition].
Здесь есть справочная страница: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/events.common.connectivity.html
В нем говорится, что "... это означает, что экземпляры Amazon EC2 не сообщили Elastic Beanstalk об успешном запуске."
Учитывая приведенную выше информацию, в чем именно проблема?
Я не знаю, как это исправить, мне кажется, что это нормально.
Если я посещаю URL-адрес, который генерирует EB, он не работает:
xxxxx.us-east-2.elasticbeanstalk.com is currently unable to handle this request.
Таким образом, проблема заключалась в том, что для моего имени хоста DNS и поддержки в моих настройках VPC не было установлено значение True.
Поддерживаемая AWS оплатила себя сегодня, ребята!