Проверка периферийной сети и концентратора в Azure с помощью Terraform
Terraform поддерживает определение, предварительный просмотр и развертывание облачной инфраструктуры. С помощью Terraform можно создавать файлы конфигурации с применением синтаксиса HCL. Синтаксис HCL позволяет указать поставщика облачных служб, например Azure, и элементы, составляющие облачную инфраструктуру. После создания файлов конфигурации создается план выполнения, который позволяет предварительно просматривать изменения инфраструктуры до их развертывания. После проверки изменений примените план выполнения для развертывания инфраструктуры.
В этой статье вы выполните файлы Terraform, созданные в рамках предыдущей статьи этой серии. Результатом является проверка возможности подключения между демонстрационными виртуальными сетями.
Вы узнаете, как выполнять следующие задачи:
- реализация виртуальной сети концентратора в звездообразной топологии;
- проверка развертываемых ресурсов;
- создание ресурсов в Azure;
- проверка подключения между различными виртуальными сетями;
1. Настройка среды
- Подписка Azure. Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем начинать работу.
Настройка Terraform: если вы еще этого не сделали, настройте Terraform с помощью одного из следующих вариантов:
Создание гибридной сети со звездообразной топологией с помощью Terraform в Azure
Создание локальной виртуальной сети с помощью Terraform в Azure
Руководство по созданию центральной виртуальной сети с помощью Terraform в Azure
Создание устройства виртуальной сети концентратора с помощью Terraform в Azure
Создание периферийных виртуальных сетей с помощью Terraform в Azure
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. Проверка результатов
В этом разделе показано, как проверить возможность подключения из имитированной локальной среды к виртуальной сети концентратора.
Перейдите на портал Azure.
На портале Azure перейдите к группе ресурсов onprem-vnet-rg.
На вкладке onprem-vnet-rg выберите виртуальную машину с именем onprem-vm.
Запишите значение общедоступного IP-адреса.
Вернитесь в командную строку и запустите
ssh
, чтобы подключиться к имитируемой локальной среде.ssh azureuser@<onprem_vm_ip_address>
Основные моменты:
- Если вы изменили имя пользователя
azureuser
в файлеvariables.tf
, обязательно вставьте это значение в командуssh
. - Используйте пароль, указанный при выполнении команды
terraform plan
.
- Если вы изменили имя пользователя
После подключения к виртуальной машине onprem-vm выполните команду
ping
, чтобы проверить подключение к виртуальной машине Jumpbox в виртуальной сети концентратора:ping 10.0.0.68
Выполните команду
ping
, чтобы проверить возможность подключения к виртуальным машинам jumpbox в каждой периферийной зоне:ping 10.1.0.68 ping 10.2.0.68
Чтобы выйти из сеанса SSH на виртуальной машине onprem-vm , введите
exit
и нажмите клавишу <ВВОД>.
7. Очистка ресурсов
Если вам больше не нужны ресурсы, созданные через Terraform, выполните следующие действия:
Выполните команду terraform plan и укажите флаг
destroy
.terraform plan -destroy -out main.destroy.tfplan
Основные моменты:
- Команда
terraform plan
создает план выполнения, но не выполняет его. Вместо этого она определяет, какие действия необходимы для создания конфигурации, заданной в файлах конфигурации. Этот шаблон позволяет проверить, соответствует ли план выполнения вашим ожиданиям, прежде чем вы начнете вносить изменения в фактические ресурсы. - Необязательный параметр
-out
позволяет указать выходной файл для плана. Использование параметра-out
гарантирует, что проверяемый план полностью соответствует применяемому.
- Команда
Выполните команду terraform apply, чтобы применить план выполнения.
terraform apply main.destroy.tfplan
Устранение неполадок с Terraform в Azure
Устранение распространенных проблем при использовании Terraform в Azure
Следующие шаги
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по