Files
tf_examples/dns_zones_generated

N DNS-зон, сгенерированных программно (в цикле)

Пример-близнец ../dns_zones/, но здесь зоны не задаются вручную, а генерируются из числа var.zone_count:

zones = {
  for i in range(1, var.zone_count + 1) :
  "${var.zone_prefix}-${i}" => {
    zone_name = "${var.zone_prefix}-${i}.${var.zone_domain}"
    records   = { www = ..., api = ... }
  }
}

Удобно, когда зон много и они однотипны (напр. 10 зон tfzone-1 … tfzone-10).

Ресурсы

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

Разница с ../dns_zones/

dns_zones dns_zones_generated
Источник зон явная карта var.zones range(1, zone_count+1) в locals
Когда удобно разный набор зон/записей много однотипных зон

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

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

Проверки

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