Разделение тестовой и production-сред
С помощью настройки DNS можно разделить тестовую и production-среды, что повышает стабильность инфраструктуры и упрощает управление. Далее на примере будет показано, как выделить тестовую среду в отдельную подзону DNS:
- Production-среда остается в основной DNS-зоне
example.com. - Тестовая среда размещается в подзоне
test.example.com, которая делегирована на DNS-серверы VK Cloud. - Ресурсные записи каждой среды создаются и управляются только в своей зоне.
-
Перейдите в личный кабинет VK Cloud.
-
Создайте DNS-зону для production-среды, если она еще не создана.
-
Установите утилиту
digна ваш компьютер для проверки настройки DNS:Ubuntu, DebianRed Hat, CentOS, FedoramacOSWindows$ sudo apt update && sudo apt install dnsutils
Создайте подзону для тестовой среды, указав параметры:
- Проект: проект, в котором размещается DNS-зона production-среды.
- DNS-зона:
test.example.com. - Контактный email: почта администратора зоны.
Остальные параметры оставьте по умолчанию или настройте по необходимости.
Создайте в DNS-зоне example.com NS-записи, указав параметры:
- Тип записи:
NS. - Имя:
test. - Значение: адреса NS-серверов для зоны
example.com, которые можно посмотреть в списке ресурсных записей. В этом примере:ns1.mcs.mail.ru— для первой записи,ns2.mcs.mail.ru— для второй записи.
Пример ресурсных записей в DNS-зоне example.com после делегирования управления подзоной:
test NS ns1.mcs.mail.rutest NS ns2.mcs.mail.ru
-
Создайте A-запись в подзоне
test.example.com, указав параметры:- Тип записи:
A. - Имя:
app. - IP-адрес: IP-адрес тестового сервера.
- ТТL: оставьте по умолчанию или настройте по необходимости.
- Тип записи:
-
Создайте CNAME-запись в подзоне
test.example.com, указав параметры:- Тип записи:
CNAME. - Имя:
api. - Значение: домен тестовых сервисов.
- ТТL: оставьте по умолчанию или настройте по необходимости.
- Тип записи:
-
(Опционально) Создайте в подзоне
test.example.comдругие ресурсные записи, которые понадобятся для работы в тестовой среде. Например, с помощью записей MX и TXT можно определить тестовые почтовые серверы и их настройки.
Пример ресурсных записей в подзоне test.example.com после настройки DNS для тестовой среды:
app A 192.168.1.10api CNAME app.test.example.com
В примере указан частный IP-адрес. Если ваш сервер доступен из интернета, используйте публичный IP.
-
Создайте A-запись в DNS-зоне
example.com, указав параметры:- Тип записи:
A. - Имя:
app. - IP-адрес: IP-адрес production-сервера.
- ТТL: оставьте по умолчанию или настройте по необходимости.
- Тип записи:
-
Создайте CNAME-запись в DNS-зоне
example.com, указав параметры:- Тип записи:
CNAME. - Имя:
api. - Значение: домен production-сервисов.
- ТТL: оставьте по умолчанию или настройте по необходимости.
- Тип записи:
-
(Опционально) Создайте в DNS-зоне
example.comдругие ресурсные записи, которые понадобятся для работы в production-среде. Например, с помощью записей MX и TXT можно определить почтовые серверы и их настройки. -
Удалите в зоне
example.comресурсные записи для тестовой среды, если они в ней есть.
Пример ресурсных записей в DNS-зоне example.com после настройки DNS для production-среды:
app A 83.166.234.101api CNAME app.example.com
-
Проверьте разрешение имен для тестовой среды:
dignslookup$ dig app.test.example.com +shortВ ответе вернется IP-адрес, который вы настроили в подзоне
test.example.com. В этом примере:192.168.1.10. -
Проверьте разрешение имен для production-среды:
dignslookup$ dig app.example.com +shortВ ответе вернется IP-адрес, который вы настроили в DNS-зоне
example.com. В этом примере:83.166.234.101. -
Проверьте делегирование подзоны:
dignslookup$ dig NS test.example.com +shortВ ответе вернутся адреса NS-серверов для зоны
example.com, которые можно посмотреть в списке ресурсных записей. В этом примере:ns1.mcs.mail.ruиns2.mcs.mail.ru.
Если добавленные ресурсы вам больше не нужны, удалите их: