Проблемы с конфигурацией DNS-серверов и доменов DNS в Terraform

Вопрос или проблема

У меня возникли проблемы со списком DNS-серверов и конфигурацией домена при использовании провайдера vsphere v2.9.3 в Terraform.

В моих файлах terraform.tfvars я попробовал все нижеуказанные конфигурации, и ни одна из них не работает при создании виртуальной машины. На этапе планирования все выглядит нормально, но когда я смотрю в файл /etc/resolv.conf на сервере, он пуст.

Что касается DNS-серверов, я пробовал:

vm_dns_servers_list = ["1.2.3.4", "1.2.3.5", "1.2.3.6"]

vm_dns_server = ["1.2.3.4", "1.2.3.5", "1.2.3.6"]

Что касается DNS-домена, я пробовал:

vm_dns_suffix_list = "example.com"

vm_domain = "example.com"

Ни один из вариантов не работает.

Ответ или решение

Проблема с конфигурацией DNS-серверов и домена в Terraform с использованием провайдера vSphere может быть вызвана несколькими факторами. Давайте разберём их более подробно и предложим возможные решения.

1. Проверка конфигурации Terraform

Ваши текущие настройки в файле terraform.tfvars выглядят следующим образом:

vm_dns_servers_list = ["1.2.3.4", "1.2.3.5", "1.2.3.6"]
vm_dns_server = ["1.2.3.4", "1.2.3.5", "1.2.3.6"]

vm_dns_suffix_list = "example.com"
vm_domain = "example.com"

Проверьте, что вы используете правильные атрибуты в вашем ресурсном блоке. Например, при настройке виртуальной машины в Terraform с использованием vSphere, конфигурация может выглядеть следующим образом:

resource "vsphere_virtual_machine" "vm" {
  # Другие настройки виртуальной машины

  network_interface {
    network_id   = data.vsphere_network.network.id
    adapter_type = "vmxnet3"

    dns_server_list      = var.vm_dns_servers_list
    dns_suffix_list      = [var.vm_dns_suffix_list]
  }
}

2. Версия провайдера

Убедитесь, что вы используете последнюю версию провайдера vSphere. На момент вашего вопроса, вы упомянули версию 2.9.3. Возможно, в более новых версиях были исправлены баги, связанные с конфигурацией DNS. Обновите ваш Terraform и провайдер до последней стабильной версии:

terraform init -upgrade

3. Проверка сетевых настроек

Проверьте, что ваша сеть в vSphere правильно настроена и у неё есть доступ к указанным DNS-серверам. Убедитесь, что IP-адреса DNS-серверов действительны и доступны из вашей сети.

4. Параметры виртуальной машины

Если после всех проверок в файле /etc/resolv.conf всё ещё пусто, возможно, настройки конфигурации виртуальной машины не применяются. Выполните следующие шаги:

  • Проверьте, чтобы у виртуальной машины был выполнен запуск, а не просто создана.
  • Убедитесь, что у вас достаточно прав для выполнения всех операций с VM в vSphere.
  • Проверьте логи Terraform и vSphere на наличие ошибок.

5. Ручная проверка

Если проблема не устраняется, попробуйте применить конфигурацию Terraform и затем вручную проверить настройки сети на созданной виртуальной машине, включая:

ip addr show
cat /etc/resolv.conf

Заключение

Если вы выполнили все вышеперечисленные шаги и проблема не решается, возможно, стоит обратиться к документации Terraform и vSphere или на форумы сообщества для получения дополнительной помощи. Проблемы с конфигурацией DNS могут быть довольно сложными и требовать дополнительной диагностики.

Надеюсь, это поможет вам решить вашу проблему с конфигурацией DNS-серверов в Terraform!

Оцените материал
Добавить комментарий

Капча загружается...