EC2: чи стабільний загальнодоступний DNS примірника? Чи можу я покластися на це, не змінюючись?


41

Я запустив свій перший екземпляр і використовую його як веб-сервер. Я бачу, що він має загальнодоступну DNS (загальнодоступну URL-адресу), наприклад:

ec2-123-45-6-789.compute-1.amazonaws.com

Я можу успішно перейти на цей сервер у своєму браузері, натиснути його через cURL тощо.

Я хочу використовувати цей веб-сервер для бек-енд-сервісу в додатку, який будую, тому я розмістив цю URL-адресу в конфігурації свого додатка, і вона чудово працює.

Але коли я вручну зупиняюсь і перезапускаю свій екземпляр, я бачу, що загальнодоступна DNS змінюється! Я читав, що це відбувається, коли ви явно зупиняєтесь і перезапускаєтесь, але не трапляється, якщо ви просто «перезавантажуєтесь».

Я не планую явно зупиняти та перезапускати цей сервер ніколи, але моє запитання: чи зміниться цей загальнодоступний DNS самостійно з будь-якої причини? Наприклад, якщо машина аномально виходить з ладу, чи що завгодно.

Іншими словами, чи безпечно відправляти додаток, провідний до цієї URL-адреси?

Відповіді:


67

Загальнодоступне ім'я DNS завжди відповідає загальнодоступній IP-адресі.

Загальнодоступна IP-адреса залишається однаковою для екземпляра, поки вона не припиняється або зупиняється. Перезавантаження не змінює загальнодоступну IP-адресу.

Якщо екземпляр EC2 знаходиться у VPC, він зберігатиме ту саму загальнодоступну IP-адресу протягом зупинки та запуску.

Якщо екземпляр EC2, який не знаходиться в VPC, зупиняється і потім запускається заново, він, ймовірно, отримає іншу публічну IP-адресу.

Екземпляри можуть вийти з ладу. Коли ви запускаєте новий екземпляр для заміни невдалого або припиненого екземпляра, він, ймовірно, отримає іншу публічну IP-адресу.

Оскільки екземпляри можуть вийти з ладу, і тому, що ви можете змінити розмір екземпляра (із зупинкою / запуском), не рекомендується "надсилати додаток, підключений до [публічної IP-адреси]" (або DNS-імені). Як тільки ваш примірник зупиняється / припиняється / не відбувається, інший користувач може отримати цю IP-адресу, призначену їх екземпляру, і весь ваш трафік буде спрямований на них.

Рекомендується використовувати Elastic IP адреси для асоціації публічних служб із вашим екземпляром. Ви можете зберегти IP-адресу Elastic, і ви можете привласнити її будь-якому екземпляру, який ви хочете з часом, навіть якщо це той самий екземпляр після зупинки / запуску.

Кожна еластична IP-адреса має загальнодоступне ім’я DNS, але вам, мабуть, буде краще зіставити власне ім’я хоста з еластичною IP-адресою, щоб це ім'я стало більше сенсу для людей.

Ось посібник з Elastic IP адреси:

http://aws.amazon.com/articles/1346

Ось стаття, яку я написав, що розповідає про відмінності між перезавантаженням та зупинкою / запуском екземпляра:

Перезавантаження та зупинка / старт інстанції Amazon EC2
http://alestic.com/2011/09/ec2-reboot-stop-start

Ось стаття, яку я написав, яка дає причину, можливо, ви захочете зупинити / запустити екземпляр, навіть якщо ви сьогодні не думаєте, що будете:

Переміщення інстанції EC2 до більшого розміру
http://alestic.com/2011/02/ec2-change-type


Ну за інформацію Я перезавантажив свій екземпляр ec2 і щойно виявив, що публічний dns змінився на новий ip. Може, екземпляр врізався між собою, але я не впевнений у цьому.
Ніколя Манзіні

Amazon рекомендує лише використовувати еластичні ІС для балансирів навантаження. Отже, якщо у вас є приватний сервіс в екземплярі ec2, вам доведеться вручну оновити ips. docs.aws.amazon.com/AWSEC2/latest/UserGuide/…
Jesse

@Jesse ELBs (Еластичні балансири навантаження) не використовують еластичні IP-адреси. Насправді, ELB постійно змінюють IP-адреси і взагалі не можуть бути постійними. Еластичні IP-адреси застосовуються до екземплярів EC2, тому саме те, що потрібно для початкового питання.
Ерік Хаммонд
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.