Как указать сетевой интерфейс с обычным публичным IP-адресом вместо EIP?

У меня есть шаблон Cloudformation, который включает AWS::EC2::Instance, AWS::EC2::NetworkInterface и AWS::EC2::EIP. Все они связаны друг с другом, сетевой интерфейс захватывает EIP, а затем подключается к экземпляру, и все работает хорошо.

Теперь я хочу изменить его, чтобы шаблон не создавал EIP, а просто создавал обычный случайный общедоступный IP-адрес. Я мог добиться этого, удалив ресурс EIP и указав опцию AssociatePublicIpAddress в сетевом интерфейсе. Проблема в том, что этот параметр действителен только для встроенного типа свойства NetworkInterface, но не для ресурса AWS::EC2::NetworkInterface. Сетевой интерфейс используется в другом месте (в ресурсе AWS::EC2::Route) в качестве ссылки, поэтому я не могу превратить его во встроенный тип. Что я могу сделать?

Документы экземпляра EC2

Встроенное свойство NetworkInterface

Ресурс NetworkInterface

Я не думаю, что это возможно. Если бы вы могли каким-то образом вернуть случайный PublicIp, вы бы добавили его в свой маршрут. Затем вы должны остановить / запустить свой экземпляр и изменить IP-адрес. Как вы ожидаете, что ваше окружение будет вести себя в такой ситуации? Я считаю, что AWS не позволяет вам сделать это, чтобы спасти вас от зависания IP-адреса на маршруте.

tyron 29.10.2018 22:57
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
1
179
1

Ответы 1

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

ENI с общедоступными IP-адресами из пула не подходят для этого варианта использования.

Если вам нужно больше EIP, чем разрешено лимитом по умолчанию, вы можете создать бесплатный запрос в службу поддержки и описать свой вариант использования. Плата за EIP, подключенный к любому работающему экземпляру, не взимается, если это единственный EIP, подключенный к этому экземпляру.

Другие вопросы по теме