Внутрішній DNS всередині Amazon AWS VPC


21

Я починаю розуміти VPC, але не бачу хорошого внутрішнього рішення DNS. Наприклад, ми використовуємо не-RDS-сервер баз даних, до якого підключаються інші сервери в VPC. Я хотів би підключитися по імені, а не по IP. Частково це так, щоб я міг отримати внутрішню адресу 10.xxx, яка, імовірно, швидша. Переважно, це робить конфігурацію легшою, розбірливішою та гнучкішою.

За старих часів (близько 2008 р.) У попередньому VPC у мене був сервер, на якому працював MaraDNS, який ми оновлювали, коли ми починали та змінювали екземпляри, і це було великим болем, зокрема, тому що сервери отримали власні внутрішні адреси, призначені DHCP. коли вони перезапустилися, і просто тому, що це було іншою справою. Деякі мої колеги, що працюють в різних системах, вважали, що я ідіот, коли я намагаюся виконати всі ці зусилля - вони просто оновили файли / etc / hosts (що було чудово, поки не було відключення, і всі їх сервери повернулися з новими IP-адресами).

Чи варто дивитись на Route53 (де ми займаємось усіма нашими загальнодоступними DNS) чи щось мені не вистачає?

Оновлення: 2017 - Внутрішній DNS тепер є функцією маршруту 53. Вуто!


Це насправді велике запитання, я щось намагався знайти рішення. Я б дуже хотів кинути на це приємну нагороду, щоб спробувати залучити чудову відповідь.
EEAA

Екземпляри VPC можуть мати фіксовану приватну IP-адресу, тож чому запускати власний DNS-сервер - це не варіант?
Душан Баич

@ dusan.bajic - Якщо потрібно, я запускаю власний DNS-сервер, але, як я вже зазначив у запитанні, це просто інша справа керувати, контролювати та продовжувати працювати. Я сподівався, що мені просто не вистачає чогось, що додав AWS ... здогадуйтесь не :-)
Том Гаррісон-молодший,

Відповіді:


5

Примірники повинні реєструвати свої імена DNS на ваших серверах DNS через DDNS під час їх запуску (як CNAME до їх загальнодоступного FQDN, призначеного AWS); таким чином ви можете посилатися на них за відомим іменем та отримати найбільш відповідну адресу (внутрішню чи зовнішню) незалежно від того, де ви знаходитесь. Route53, ймовірно, має подібний тип магії, але я віддаю перевагу незалежним від постачальників рішень, де це можливо.


9
Наскільки мені відомо, Route53 не вбудований.
ceejayoz

1
@womble - Я сподівався на магію, про яку ви говорите на Route53, але нічого не бачите. Сервери знаходяться в межах VPC, тому немає загальнодоступного FQDN, але є статичний (стабільний) IP, який я можу зареєструвати з записом A за допомогою інструментів CLI Route53. Тож це гарна ідея, і це налаштування та керування моїм власним DNS-сервером. Я не розумію, чому AWS не дає нам призначити власні імена хостів, адресовані DNS, як частину створення примірника. Зітхніть :-) Я прийму відповідь через кілька днів, якщо ніхто інший не має кращого рішення. Спасибі!
Том Гаррісон-молодший

@TomHarrisonJr, хоча ти це вказав як правильне - я підозрюю, що це було зроблено нахабно? Яким було ваше остаточне рішення?
Андрій

2
@Andrew Хоча це правильна відповідь, коротка відповідь - "AWS не має жодної внутрішньої служби DNS", і тому вам потрібно зробити свою власну. Я фанат MaraDNS - простий, легко керується через текстові файли, легкий і т.д.
Том Гаррісон-молодший

6

З документації AWS VPC виглядає, що рекомендований підхід до використання DNS-сервера всередині AWS VPC полягає в тому, щоб спочатку створити Набір параметрів DHCP і пов’язати його з VPC. Тоді ви можете встати 1-4 DNS-сервери в цьому VPC. Крім того, набір параметрів DHCP дозволить вам встановити наступне для всіх примірників VPC, що містяться. (відрізано від документів)

DHCP Option Name      | Description
 domain-name          |  A domain name of your choice (for example, example.com).
 domain-name-servers  |  The IP address of a domain name server.
 ntp-servers          |  The IP address of a Network Time Protocol (NTP) server. 
 netbios-name-servers |  The IP address of a NetBIOS name server.
 netbios-node-type    |  The NetBIOS node type (1, 2, 4, or 8).

Дякую, схоже, AWS рухається до внутрішньої інфраструктури DNS ... поступово. На моє запитання тоді було чи існує альтернатива розміщенню мого внутрішнього DNS. Як це відбувається (зараз у новій компанії), ми використовуємо Route53 для внутрішнього DNS і просто префіксуємо ім'я. Наприклад, може бути ім'я публічного хоста, foo.example.comа його внутрішній аналог - i.foo.example.comадреса 10.xxx. У цьому є деякі проблеми безпеки, які потенційно можуть виявити наші внутрішні органи, але вони обмежені.
Том Гаррісон-молодший

2
Зараз Amazon підтримує приватні зони, що розміщуються, що дозволяє роздільну здатність DNS, дозволену лише дозволу через сервери Amazon DNS від VPC, пов’язаних із приватною розміщеною зоною. docs.aws.amazon.com/Route53/latest/DeveloperGuide/…
jnt30

4

Невже щось не схоже на Avahi ? Це навіть встановлено і добре упаковано для більшості дистрибутивів Linux. Просто дайте кожному екземпляру, до якого потрібно досягти унікального імені хоста, а Боб - ваш дядько.


1
AWS-мережа дивна ... Я не обов'язково припускаю, що Avahi насправді працює. Однак це не вимагає багато тестування.
жіночий

Це було б цікавим рішенням, оскільки це означало б, що мені потрібно було лише назвати свої екземпляри, а решта - це магія. Але документа дуже мало, і мені було не відразу зрозуміло, чи правильно це для середовища виробничого сервера. Я буду мати це на увазі - дякую.
Том Харрісон-молодший
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.