Назначение эластичного IP для автомасштабируемого EC2 в VPC - AWS

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

Я сделал следующее: - Настроил экземпляр EC2 с помощью сценария запуска для назначения IP - Настроил конфигурацию запуска и группу автоматического масштабирования согласно спецификации.

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

При развертывании AMI вручную, при условии, что я установил флажок "назначить публичный IP-адрес", экземпляр будет развернут, временно назначит адрес xxxx.amazon.xxxx, а затем перенесет на мое назначение с эластичным IP-адресом.

тем не мение..

при развертывании через утилиты командной строки автоматического масштабирования (as-create-launch-config + as-create-auto-scaling-group) IP не будет работать. Я чувствую, что это можно исправить, если при настройке конфигурации запуска была опция временного захвата общедоступного IP-адреса для связи с API-интерфейсом Amazon для получения гибкого назначения.

Я очень ценю вашу помощь!

1 ответ

Вы можете использовать cloud-init для запуска команды на локальном автоматически масштабируемом сервере, который подключает EIP. Вот пример локальной команды, выполняющейся на сервере при первой загрузке: http://cloudinit.readthedocs.org/en/latest/topics/examples.html

В этой локальной команде вы можете использовать встроенные инструменты amazon, чтобы связать адрес: http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/ApiReference-cmd-AssociateAddress.html

В конфигурации запуска добавьте этот синтаксис cloud-init к атрибуту user-data в кодировке base64, и все будущие автомасштабированные экземпляры будут делать именно то, что Cloud-init заявляет, что будет делать.

Я обычно base64 кодирую, выполняя:

base64 <filename>
Другие вопросы по тегам