Instalación de la extensión de Visual Studio Code de Microsoft Terraform

Terraform habilita la definición, vista previa e implementación de la infraestructura en la nube. Con Terraform, se crean archivos de configuración mediante la sintaxis de HCL. La sintaxis de HCL permite especificar el proveedor de la nube, como Azure, y los elementos que componen la infraestructura de la nube. Después de crear los archivos de configuración, se crea un plan de ejecución que permite obtener una vista previa de los cambios de infraestructura antes de implementarlos. Una vez que compruebe los cambios, aplique el plan de ejecución para implementar la infraestructura.

La extensión Terraform de Visual Studio Code permite trabajar con Terraform desde el editor. Con esta extensión, puede crear, probar y ejecutar configuraciones de Terraform.

En este artículo aprenderá a:

  • Instalar la extensión de Visual Studio Code para Microsoft Terraform y recursos de Azure
  • Uso de la extensión para crear un grupo de recursos de Azure
  • Verifique que se creó el grupo de recursos
  • Elimine el grupo de recursos cuando termine de probar con la extensión

1. Configuración del entorno

  • Suscripción de Azure: si no tiene una suscripción de Azure, cree una cuenta gratuita antes de comenzar.

2. Instalación de la extensión de Visual Studio Code de Microsoft Terraform

  1. Inicie Visual Studio Code.

  2. Seleccione Extensiones y busque Microsoft Terraform".

    Captura de pantalla de la búsqueda de extensiones de Visual Studio Code en Marketplace.

  3. En la lista de extensiones, busque la Microsoft Terraform extensión. (Debe ser la primera extensión de la lista).

  4. Si la extensión aún no está instalada, seleccione la opción Instalar de la extensión.

    • Al seleccionar Instalar para la extensión de Microsoft Terraform, Visual Studio Code instala automáticamente primero la extensión de cuenta de Azure para autenticarse con Azure y las extensiones de código relacionadas.
    • Ahora, con la desaprobación de la extensión de la cuenta de Azure, la autenticación será gestionada por el proveedor de autenticación de Microsoft integrado en Visual Studio Code y la extensión de Recursos de Azure.
    • En el menú de la izquierda, seleccione Extensiones e introduzca Azure Resources en el cuadro de texto de búsqueda. Captura de pantalla de la búsqueda de recursos de Azure en Marketplace de Visual Studio Code.
    • En la lista de extensiones, busque la Azure Resources extensión. (Debe ser la primera extensión de la lista).
  5. Para confirmar la instalación de las extensiones, ingrese @installed en el cuadro de texto de búsqueda. Tanto la extensión de Microsoft Terraform como la extensión recursos de Azure deben aparecer en la lista de extensiones instaladas.

    Captura de pantalla de la extensión microsoft Terraform instalada.

    Captura de pantalla de las extensiones de recursos de Azure instaladas.

Ahora puede ejecutar todos los comandos de Terraform compatibles en su entorno de Cloud Shell desde Visual Studio Code.

3. Implementar el código de Terraform

  1. Cree un directorio en el que probar el código de ejemplo de Terraform y conviértalo en el directorio actual.

  2. Cree un archivo denominado providers.tf e inserte el siguiente código:

    terraform {
      required_providers {
        azurerm = {
          source  = "hashicorp/azurerm"
          version = "~>4.0"
        }
        random = {
          source  = "hashicorp/random"
          version = "~>3.0"
        }
      }
    }
    
    provider "azurerm" {
      features {}
    }
    
  3. Cree un archivo denominado main.tf e inserte el siguiente código:

    # Create a random name for the resource group using random_pet
    resource "random_pet" "rg_name" {
      prefix = var.resource_group_name_prefix
    }
    
    # Create a resource group using the generated random name
    resource "azurerm_resource_group" "example" {
      location = var.resource_group_location
      name     = random_pet.rg_name.id
    }
    
  4. Cree un archivo denominado variables.tf para contener las variables de proyecto e inserte el código siguiente:

    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. Cree un archivo denominado outputs.tf para contener las variables de proyecto e inserte el código siguiente:

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

4. Envía tu código a Cloud Shell

  1. En el menú Ver , seleccione Paleta de comandos....

  2. En el cuadro de texto Paleta de comandos, comience a escribir Microsoft Terraform: Push y selecciónelo cuando aparezca.

  3. Seleccione Aceptar para confirmar la apertura de Cloud Shell.

    Los archivos del área de trabajo que cumplen con el filtro definido en la azureTerraform.files configuración de la configuración se copian en Cloud Shell.

5. Inicializar Terraform dentro de Visual Studio Code

  1. En el menú Ver , seleccione Paleta de comandos....

  2. En el cuadro de texto Paleta de comandos, comience a escribir Microsoft Terraform: Init y selecciónelo cuando aparezca.

    • Seleccionar esta opción es lo mismo que ejecutar terraform init desde la línea de comandos e inicializa la implementación de Terraform.
    • Este comando descarga los módulos de Azure necesarios para crear un grupo de recursos de Azure.
  3. Siga las instrucciones para instalar cualquier dependencia, como la última versión compatible de nodejs.

  4. Si es la primera vez que usa Cloud Shell con su suscripción predeterminada de Azure, siga las indicaciones para configurar el entorno.

6. Crear un plan de ejecución de Terraform dentro de Visual Studio Code

  1. En el menú Ver , seleccione Paleta de comandos....

  2. En el cuadro de texto Paleta de comandos, comience a escribir Microsoft Terraform: Plan y selecciónelo cuando aparezca.

    Este comando ejecuta terraform plan para crear un plan de ejecución a partir de los archivos de configuración de Terraform en el directorio actual.

7. Aplicar un plan de ejecución de Terraform dentro de Visual Studio Code

  1. En el menú Ver , seleccione Paleta de comandos....

  2. En el cuadro de texto Paleta de comandos, comience a escribir Microsoft Terraform: Apply y selecciónelo cuando aparezca.

  3. Cuando se le solicite confirmación, ingrese yes y presione <Enter>.

8. Verifica los resultados

  1. En el menú Ver , seleccione Paleta de comandos....

  2. En el cuadro de texto Paleta de comandos, comience a escribir Azure: Open Bash in Cloud Shell y selecciónelo cuando aparezca.

  3. Ejecute az group show para mostrar el grupo de recursos. Reemplace el <resource_group_name> marcador de posición por el nombre generado aleatoriamente del grupo de recursos que se muestra después de aplicar el plan de ejecución de Terraform.

az group show --name <resource_group_name>

9. Limpieza de recursos

  1. En el menú Ver , seleccione Paleta de comandos....

  2. En el cuadro de texto Paleta de comandos, comience a escribir Microsoft Terraform: Destroy y selecciónelo cuando aparezca.

  3. Cuando se le solicite confirmación, ingrese yes y presione <Enter>.

  4. Para confirmar que Terraform destruyó correctamente el nuevo grupo de recursos, ejecute los pasos de la sección Comprobar los resultados.

Solución de problemas de Terraform en Azure

Solución de problemas comunes al usar Terraform en Azure

Pasos siguientes

Obtenga más información sobre la extensión de Visual Studio Code de Microsoft Terraform.