2016-07-26 4 views
4

У меня возникли трудности с добавлением экземпляров, созданных в моем VPC и в частной подсети (без подключения к Интернету) в кластер ECS.Зарегистрируйте экземпляр EC2 для кластера ECS без публичного ip

Прямо сейчас единственный способ, которым я смог это сделать, - добавить публичный IP-адрес и настроить NAT-шлюз.

Как вы используете кластеры ECS с частными подсетями?

ответ

4

Я думаю, я нашел ответ на документации AWS и, кажется, мне нужно использовать NAT экземпляр/шлюза :(

Другой source, а также official documentaion

»... Контейнерные экземпляры нужен внешний сетевой доступ для связи с конечной точкой службы Amazon ECS, поэтому, если ваши экземпляры контейнера работают в приватном VPC, для обеспечения этого доступа им нужен экземпляр трансляции сетевых адресов (NAT). Дополнительные сведения см. в разделах NAT в Amazon Руководство пользователя VPC. "

+0

У меня была такая же проблема, и я полностью проигнорировал тот факт, что это может быть публичный IP, потому что в [AWS docs] (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html) он указывает в шаге 8, что необязательно добавлять общедоступный IP-адрес ... но затем не делает никаких предположений о последствиях этого ...: вздох: Спасибо за помощь здесь, ребята. – gsaslis

+0

UPDATE: после поднятия проблемы с Amazon они очень быстро отреагировали и обновили «шаг 8» своих [docs] (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html) чтобы отразить это: 'Примечание. Экземпляры контейнера нуждаются во внешнем сетевом доступе для связи с конечной точкой службы Amazon ECS, поэтому, если экземпляры контейнера не имеют общедоступных IP-адресов, тогда они должны использовать трансляцию сетевых адресов (NAT) или HTTP-прокси для предоставления этот доступ.Для получения дополнительной информации см. NAT-примеры в Руководстве пользователя Amazon VPC и HTTP Proxy Configuration в этом руководстве ' – gsaslis

0

Для регистрации вашего экземпляра на ECS вам требуется внешняя связь из экземпляров.

NAT необходим для исходящих подключений из экземпляров в частной подсети, но публичный IP-адрес не требуется.

ECS запускает контейнер на каждом из ваших серверов, которому необходимо подключиться к службе управления состоянием, и для этого ваши экземпляры в вашей частной подсети нуждаются в подключении к внешнему миру через NAT.

0

Этот вопрос трудно ответить. ECS буквально запускает экземпляры Ec2 для вашей конфигурации. Если вы запустите их в подсети без публичных IP-адресов, они не будут иметь их. У вас должна быть инфраструктура для достижения таких целей, как NAT, VPN и т. Д. Специальной конфигурации для кластеров ECS нет. Если вы можете связаться с экземплярами EC2, вы сможете получить доступ к экземплярам ECS.

+0

Привет, Я могу достигнуть экземпляров ec2 (даже если они находятся в частной подсети, так как я использую прямое подключение), но проблема в том, что без публичного экземпляра IP не регистрируется в кластере ECS ... – Ionut

+0

Неправильно, ваша конфигурация неверна. Мы используем частные экземпляры ECS. ECS не заботится о том, является ли ваш экземпляр общедоступным или приватным до тех пор, пока агент ecs, работающий на докере в виртуальной машине, может попасть в реестр ECS. –

0

I Was al поэтому, пытаясь заблокировать публичные запросы к экземплярам ECS, развернув кластер в приватную подсеть, а затем выяснилось, что мне нужен NAT-сервер/шлюз, который стоит около 1 доллара в день.

Если вы просто хотите заблокировать изворотливые запросы на обнюхивание экземпляров ECS, вы можете обновить группу безопасности для своих экземпляров ECS, сохранив их в общедоступной подсети. Это сэкономит вам 30 долларов США в день.