Проверка периферийной сети и концентратора в Azure с помощью Terraform

Terraform поддерживает определение, предварительный просмотр и развертывание облачной инфраструктуры. С помощью Terraform можно создавать файлы конфигурации с применением синтаксиса HCL. Синтаксис HCL позволяет указать поставщика облачных служб, например Azure, и элементы, составляющие облачную инфраструктуру. После создания файлов конфигурации создается план выполнения, который позволяет предварительно просматривать изменения инфраструктуры до их развертывания. После проверки изменений примените план выполнения для развертывания инфраструктуры.

В этой статье вы выполните файлы Terraform, созданные в рамках предыдущей статьи этой серии. Результатом является проверка возможности подключения между демонстрационными виртуальными сетями.

Вы узнаете, как выполнять следующие задачи:

  • реализация виртуальной сети концентратора в звездообразной топологии;
  • проверка развертываемых ресурсов;
  • создание ресурсов в Azure;
  • проверка подключения между различными виртуальными сетями;

1. Настройка среды

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

Убедитесь, что в каталоге примера указаны все файлы, созданные, как описано в этой серии статей:

Имя файла Статья, в которой описано, как создать файл
main.tf Создание гибридной сети со звездообразной топологией с помощью Terraform в Azure
variables.tf Создание гибридной сети со звездообразной топологией с помощью Terraform в Azure
on-prem.tf Создание локальной виртуальной сети с помощью Terraform в Azure
hub-vnet.tf Руководство по созданию центральной виртуальной сети с помощью Terraform в Azure
hub-nva.tf Создание устройства виртуальной сети концентратора с помощью Terraform в Azure
spoke1.tf Создание периферийных виртуальных сетей с помощью Terraform в Azure
spoke2.tf Создание периферийных виртуальных сетей с помощью Terraform в Azure

3. Инициализация Terraform

Запустите terraform init, чтобы инициализировать развертывание Terraform. Эта команда скачивает поставщик Azure, необходимый для управления ресурсами Azure.

terraform init -upgrade

Основные моменты:

  • Параметр -upgrade обновляет необходимые подключаемые модули поставщика до последней версии, которая соответствует ограничениям версии конфигурации.

4. Создание плана выполнения Terraform

Чтобы создать план выполнения, выполните terraform plan.

terraform plan -out main.tfplan

Основные моменты:

  • Команда terraform plan создает план выполнения, но не выполняет его. Вместо этого она определяет, какие действия необходимы для создания конфигурации, заданной в файлах конфигурации. Этот шаблон позволяет проверить, соответствует ли план выполнения вашим ожиданиям, прежде чем вы начнете вносить изменения в фактические ресурсы.
  • Необязательный параметр -out позволяет указать выходной файл для плана. Использование параметра -out гарантирует, что проверяемый план полностью соответствует применяемому.

5. Применение плана выполнения Terraform

Выполните terraform apply, чтобы применить план выполнения к вашей облачной инфраструктуре.

terraform apply main.tfplan

Основные моменты:

  • В примере terraform apply команды предполагается, что вы ранее выполнили.terraform plan -out main.tfplan
  • Если для параметра -out указано другое имя файла, используйте то же имя в вызове к terraform apply.
  • Если вы не использовали параметр -out, вызовите terraform apply без параметров.

6. Проверка результатов

В этом разделе показано, как проверить возможность подключения из имитированной локальной среды к виртуальной сети концентратора.

  1. Перейдите на портал Azure.

  2. На портале Azure перейдите к группе ресурсов onprem-vnet-rg.

  3. На вкладке onprem-vnet-rg выберите виртуальную машину с именем onprem-vm.

  4. Запишите значение общедоступного IP-адреса.

  5. Вернитесь в командную строку и запустите ssh, чтобы подключиться к имитируемой локальной среде.

    ssh azureuser@<onprem_vm_ip_address>
    

    Основные моменты:

    • Если вы изменили имя пользователя azureuser в файле variables.tf, обязательно вставьте это значение в команду ssh.
    • Используйте пароль, указанный при выполнении команды terraform plan.
  6. После подключения к виртуальной машине onprem-vm выполните команду ping, чтобы проверить подключение к виртуальной машине Jumpbox в виртуальной сети концентратора:

    ping 10.0.0.68
    
  7. Выполните команду ping, чтобы проверить возможность подключения к виртуальным машинам jumpbox в каждой периферийной зоне:

    ping 10.1.0.68
    ping 10.2.0.68
    
  8. Чтобы выйти из сеанса SSH на виртуальной машине onprem-vm , введите exit и нажмите клавишу <ВВОД>.

7. Очистка ресурсов

Если вам больше не нужны ресурсы, созданные через Terraform, выполните следующие действия:

  1. Выполните команду terraform plan и укажите флаг destroy.

    terraform plan -destroy -out main.destroy.tfplan
    

    Основные моменты:

    • Команда terraform plan создает план выполнения, но не выполняет его. Вместо этого она определяет, какие действия необходимы для создания конфигурации, заданной в файлах конфигурации. Этот шаблон позволяет проверить, соответствует ли план выполнения вашим ожиданиям, прежде чем вы начнете вносить изменения в фактические ресурсы.
    • Необязательный параметр -out позволяет указать выходной файл для плана. Использование параметра -out гарантирует, что проверяемый план полностью соответствует применяемому.
  2. Выполните команду terraform apply, чтобы применить план выполнения.

    terraform apply main.destroy.tfplan
    

Устранение неполадок с Terraform в Azure

Устранение распространенных проблем при использовании Terraform в Azure

Следующие шаги