Поделиться через


Установка расширения Visual Studio Code для Azure Terraform

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

Расширение Visual Studio Code для Terraform позволяет работать с Terraform в редакторе. С помощью этого расширения можно создавать, тестировать и выполнять конфигурации Terraform.

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

  • Установка расширения Visual Studio Code для Azure Terraform
  • Использование расширения для создания группы ресурсов Azure
  • Проверка создания группы ресурсов
  • Удаление группы ресурсов после завершения тестирования с помощью расширения

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

2. Установка расширения Visual Studio Code для Azure Terraform

  1. Запустите Visual Studio Code.

  2. В меню слева выберите Расширения и введите Azure Terraform в текстовом поле поиска.

    Search Visual Studio Code extensions in Marketplace.

  3. Найдите расширение Azure Terraform в списке расширений. (Это должно быть первое указанное в списке расширение.)

  4. Если расширение еще не установлено, выберите параметр расширения Установить.

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

    • Когда вы щелкнете Установить рядом с расширением Azure Terraform, Visual Studio Code автоматически установит расширение Azure Account.
    • Azure Account — это файл зависимости для расширения Azure Terraform. Этот файл используется для проверки подлинности в Azure и расширениях кода, связанных с Azure.
  5. Чтобы подтвердить установку расширений, введите @installed в текстовом поле поиска. Расширение Azure Terraform и расширение учетной записи Azure отображаются в списке установленных расширений.

    View installed Terraform extensions.

Теперь вы можете выполнять из Visual Studio Code все поддерживаемые команды Terraform в среде Cloud Shell.

3. Реализация кода Terraform

  1. Создайте каталог для тестирования примера кода Terraform и сделайте его текущим каталогом.

  2. Создайте файл с именем providers.tf и вставьте следующий код:

    terraform {
      required_providers {
        azurerm = {
          source  = "hashicorp/azurerm"
          version = "~>3.0"
        }
        random = {
          source  = "hashicorp/random"
          version = "~>3.0"
        }
      }
    }
    
    provider "azurerm" {
      features {}
    }
    
  3. Создайте файл с именем main.tf и вставьте следующий код:

    resource "random_pet" "rg_name" {
      prefix = var.resource_group_name_prefix
    }
    
    resource "azurerm_resource_group" "rg" {
      location = var.resource_group_location
      name     = random_pet.rg_name.id
    }
    
  4. Создайте файл с именем variables.tf, содержащий переменные проекта, и вставьте следующий код:

    variable "resource_group_location" {
      type        = string
      default     = "eastus"
      description = "Location of the resource group."
    }
    
    variable "resource_group_name_prefix" {
      type        = string
      default     = "rg"
      description = "Prefix of the resource group name that's combined with a random ID so name is unique in your Azure subscription."
    }
    
  5. Создайте файл с именем outputs.tf, содержащий переменные проекта, и вставьте следующий код:

    output "resource_group_name" {
      value = azurerm_resource_group.rg.name
    }
    

4. Отправка кода в Cloud Shell

  1. В меню Вид выберите пункт Палитра команд...

  2. В текстовом поле "Палитра команд" начните вводить Azure Terraform: Push и выберите его при появлении.

  3. Нажмите кнопку ОК, чтобы подтвердить открытие Cloud Shell.

    Confirm the opening of Cloud Shell.

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

    • Файлы рабочей области, которые соответствуют фильтру, определенному в параметре azureTerraform.files в конфигурации, копируются в Cloud Shell.

5. Инициализация Terraform в пределах Visual Studio Code

  1. В меню Вид выберите пункт Палитра команд...

  2. В текстовом поле "Палитра команд" начните вводить Azure Terraform: Init и выберите его при появлении.

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

    • Выбор этого параметра совпадает с запуском terraform init из командной строки и инициализирует развертывание Terraform.
    • Эта команда скачивает модули Azure, необходимые для создания группы ресурсов Azure.
  3. Следуйте подсказкам на экране, чтобы установить зависимости, например последнюю поддерживаемую версию NodeJS.

  4. Если вы используете Cloud Shell впервые с подпиской Azure по умолчанию, следуйте инструкциям по настройке среды.

6. Создание плана выполнения Terraform в Visual Studio Code

  1. В меню Вид выберите пункт Палитра команд...

  2. В текстовом поле "Палитра команд" начните вводить Azure Terraform: Plan и выберите его при появлении.

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

    • Эта команда запускает terraform plan для создания плана выполнения на основе файлов конфигурации Terraform в текущем каталоге.

7. Применение плана выполнения Terraform в Visual Studio Code

  1. В меню Вид выберите пункт Палитра команд...

  2. В текстовом поле "Палитра команд" начните вводить Azure Terraform: Apply и выберите его при появлении.

  3. При появлении запроса на подтверждение введите yes и нажмите кнопку <Enter>.

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

  1. В меню Вид выберите пункт Палитра команд...

  2. В текстовом поле "Палитра команд" начните вводить Azure: Open Bash in Cloud Shell и выберите его при появлении.

  3. Выполните команду az group show, чтобы отобразить группу ресурсов. Замените заполнитель <resource_group_name> случайно сформированным именем группы ресурсов, отображаемой после применения плана выполнения Terraform.

az group show --name <resource_group_name>

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

  1. В меню Вид выберите пункт Палитра команд...

  2. В текстовом поле "Палитра команд" начните вводить Azure Terraform: Destroy и выберите его при появлении.

  3. При появлении запроса на подтверждение введите yes и нажмите кнопку <Enter>.

  4. Чтобы подтвердить, что в Terraform успешно уничтожена новая группа ресурсов, выполните действия, описанные в разделе Проверка результатов.

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

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

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