Inicio rápido: Exportación de recursos de Azure en código HCL mediante Azure Export for Terraform

En el artículo Exportación de los primeros recursos mediante Azure Export for Terraform, aprenderá a exportar recursos de Azure a archivos de estado local mediante Azure Export para Terraform. En este artículo, aprenderá a generar los archivos de configuración de Terraform a partir de los recursos de Azure.

  • Cree un grupo de recursos de Azure de prueba mediante la CLI de Azure o Azure PowerShell.
  • Cree una máquina virtual Linux de prueba mediante la CLI de Azure o Azure PowerShell.
  • Exporte el grupo de recursos y la máquina virtual de Azure a los archivos HCL.
  • Pruebe que el estado local coincide con el estado de los recursos de Azure.

Requisitos previos

Creación de los recursos de Azure de prueba

Cree una máquina virtual Linux.

  1. Ejecute az group create para crear un grupo de recursos de Azure.

    az group create --name myResourceGroup --location eastus
    
  2. Ejecute az vm create para crear la máquina virtual.

    az vm create \
      --resource-group myResourceGroup \
      --name myVM \
      --image Debian11 \
      --admin-username azureadmin \
      --generate-ssh-keys \
      --public-ip-sku Standard
    

Descripción de la marca solo hcl

Azure Export para Terraform admite una marca , --hcl-only que provoca la generación de los siguientes archivos a partir de los recursos exportados:

  • Archivos HCL generados .tf .
  • aztfexportResourceMapping.jsonArchivo de asignación .
  • Los recursos omitidos se muestran en aztfexportSkippedResources.txt.

La --hcl-only marca es compatible con todos los comandos de exportación principales que se usan para exportar:

  • resource
  • resource-group
  • Query
  • mapping-file

Para ver los comandos disponibles de Azure Export para Terraform, ejecute el siguiente comando:

aztfexport --help

La --hcl-only marca es útil en escenarios en los que no necesita el estado o no está seguro si necesita generar el estado. Para exportar toda la configuración generada al estado, ejecute aztfexport mapping-file.

Sugerencia

Al usar la --hcl-only marca , el destino es un directorio vacío para evitar realizar cambios no deseados en cualquier estado actual durante la fase de exportación.

Exportación de un recurso de Azure

Puede ejecutar la aztfexport herramienta en uno de los dos modos: interactivos y no interactivos. Para esta demostración, se usa el modo no interactivo.

  1. Cree un directorio en el que se va a probar.

  2. Abra un símbolo del sistema y vaya al nuevo directorio.

  3. Ejecute aztfexport resource-group para exportar el grupo de recursos denominado myResourceGroup.

    aztfexport resource-group --non-interactive --hcl-only myResourceGroup
    

Nota:

La ejecución de Azure Export para Terraform puede tardar varios minutos en completarse.

Verificación de los resultados

Una vez finalizada la exportación de los recursos de Azure, compruebe los siguientes archivos en el directorio donde ejecutó Azure Export para Terraform:

  • main.tf contiene el código HCL que define los recursos exportados.
  • aztfexportResourceMapping.json contiene las asignaciones de Azure/Terraform. El archivo de asignación incluye la siguiente información para cada recurso de Azure exportado: identificador de recurso de Azure, tipo de recurso de Terraform y nombre de recurso de Terraform. Contenido del reflejo del archivo de asignación que azure Export for Terraform muestra durante el proceso de exportación.
  • aztfexportSkippedResources.txt contiene la lista de recursos omitidos. No debería ver este archivo para este ejemplo.

Limpieza de recursos

Cuando ya no necesite los recursos creados en este artículo, siga estos pasos:

  1. Vaya al directorio que contiene los archivos de Terraform para este artículo.

  2. Ejecute terraform destroy.

    terraform destroy
    

Pasos siguientes