Files
tf_examples/dns_zones

DNS-зоны и записи через Terraform

Пример: доменные зоны компании и записи в них — целиком через Terraform. Зоны задаются картой var.zones (for_each), записи — вложенным циклом (flatten + for_each).

Ресурсы

Ресурс Сервис Назначение
nubes_zones_v2 109 DNS-зона
nubes_zones_v2_record подресурс зоны Запись внутри зоны (A / CNAME / …)

Что в конфиге

  • N зон из var.zones (по умолчанию 2: tfzone-a.test, tfzone-b.test);
  • по 3 записи в каждой зоне (A, A, CNAME).

Чтобы добавить/убрать зону или запись — правьте var.zones, затем apply.

Как запустить

cp terraform.tfvars.example terraform.tfvars   # подставить api_endpoint (если нужно)
# api_token — в secrets.auto.tfvars (НЕ в terraform.tfvars!)
terraform init
terraform plan
terraform apply    # запускает пользователь

Проверки

  • После apply повторный plan должен давать No changes.
  • Изменение значения записи → обычный apply (поле record_input модифицируемое).
  • Чтобы зона работала в интернете, домен у регистратора надо делегировать на NS ns3.ngcloud.ru / ns4.ngcloud.ru.

См. также

  • ../dns_zones_generated/ — тот же сценарий, но N зон генерируются программно.