
Я использую DotEasy в качестве регистратора для своего домена (назовем его myapp.example.com
), но размещаю бэкенд приложения на AWS EC2. Я хочу, чтобы этот бэкенд приложения (это веб-сервис) имел URL-адрес production api.myapp.example.com
и URL-адрес non-production/dev api.dev.myapp.example.com
.
Кроме того, в соответствии с передовой практикой AWS у меня есть отдельные учетные записи AWS для разработки и производства, поэтому они полностью изолированы друг от друга.
Мне удобно оставить DotEas в качестве DNS, однако, если это вообще возможно, я бы хотел, чтобы DNS был AWS Route 53. В конце концов я перейду на AWS в качестве регистратора.
Мне интересно, что мне нужно сделать либо в DotEasy, либо в AWS (либо в EC2, либо даже в Route53), чтобы:
api.dev.myapp.example.com
указывает на мой экземпляр EC2, находящийся в моей учетной записи AWS «dev»; иapi.myapp.example.com
указывает на мой экземпляр EC2, находящийся в моей учетной записи AWS «prod»; и- Если возможно, сделайте Route 53 DNS
Есть идеи, как выглядит поток высокого уровня?Я предполагаю, что эточто-нибудьнравиться:
- Перейдите в учетную запись разработчика AWS >> Route 53 и создайте записи NS/SOA для
api.uat.myapp.example.com
доменного имени. - Зайдите в DotEasy и добавьте запись DNS A для
api.uat.myapp.example.com
, что, как я понимаю, необходимо для создания поддомена. - В DotEasy настройте
api.uat.myapp.example.com
DNS записи с записями NS/SOA, созданными на шаге 1 выше. - В аккаунте AWS dev Route 53 добавьте политику трафика, которая сопоставляет запросы с моим экземпляром EC2 dev.
- Перейдите в учетную запись AWS prod >> Route 53 и создайте записи NS/SOA для
api.myapp.example.com
- Зайдите в DotEasy и добавьте запись DNS A для
api.myapp.example.com
- В DotEasy настройте
api.myapp.example.com
DNS записи с записями NS/SOA, сгенерированными на шаге 5 выше. - В учетной записи AWS prod Route 53 добавьте политику трафика, которая сопоставляет запросы с моим экземпляром prod EC2.
Этотзвукивроде бы должно работать, за исключением того, что я не уверен, возможно ли (с точки зрения общей сети, даже не конкретно с DotEasy) настроить две разные записи A (обе разделяющие домен myapp.example.com
) с двумя разными наборами записей NS/SOA!
Как это делается в реальной жизни?
решение1
Вы должны иметь возможность добавлять любую запись A с вашим регистратором для чего угодно в вашем домене. Неважно, кто размещает DNS, пока он правильно настроен. Я предполагаю, что DotEasy по-прежнему настроен как ваш сервер имен (записи SOA и NS).
Вы сможете зайти в диспетчер DNS DotEasy и добавить новую запись A для api.dev.myapp.example.com
IP-адреса этого ящика и запись A api.myapp.example.com
для соответствующего IP-адреса этого ящика.
После того, как эти данные будут распространены по всем DNS-серверам мира, вы сможете преобразовать два домена в их соответствующие IP-адреса.
Я не совсем уверен, как работает Route 53 Amazon, но если предположить, что это просто DNS-сервер, вам нужно будет настроить записи SOA и NS в Route 53 и настроить DotEasy так, чтобы записи NS указывали на серверы Amazon Route 53. Сделав это, вы сообщаете миру, что Route 53 Amazon является началом полномочий (SOA) для вашего домена, example.com
а серверы NS являются последним словом в инфраструктуре домена для этого домена. Если вы сделаете это,ВСЕЗаписи DNS должны быть перенесены (созданы) в Route 53. Перемещая записи, DotEasy будет только регистратором доменного имени, но не хостом DNS. Вы все равно платите им за ежегодное продление домена.