Introducción: Creación de un grupo de recursos de Azure mediante 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.
En este artículo, se muestra cómo crear un grupo de recursos de Azure mediante Terraform.
En este artículo aprenderá a:
- Crear un grupo de recursos de Azure para contener otros recursos de Azure.
- Comprobar (mediante CLI de Azure y Azure PowerShell) el grupo de recursos creado.
- Eliminar el grupo de recursos cuando termine de usarlo.
1. Configurar su entorno
- Suscripción de Azure: Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
Configuración de Terraform: si aún no lo ha hecho, configure Terraform con una de las siguientes opciones:
2. Implementación del código de Terraform
Cree un directorio en el que probar el código de ejemplo de Terraform y conviértalo en el directorio actual.
Cree un archivo llamado
main.tfe inserte el siguiente código:terraform { required_version = ">=0.12" required_providers { azurerm = { source = "hashicorp/azurerm" version = "~>2.0" } } } provider "azurerm" { features {} } resource "random_pet" "rg-name" { prefix = var.resource_group_name_prefix } resource "azurerm_resource_group" "rg" { name = random_pet.rg-name.id location = var.resource_group_location }Cree un archivo llamado
variables.tfque contenga las variables del proyecto e inserte el código siguiente:variable "resource_group_name_prefix" { default = "rg" description = "Prefix of the resource group name that's combined with a random ID so name is unique in your Azure subscription." } variable "resource_group_location" { default = "eastus" description = "Location of the resource group." }
3. Inicialización de Terraform
Para inicializar la implementación de Terraform, ejecute terraform init.
terraform init
Puntos clave:
- Este comando descarga los módulos de Azure necesarios para crear un grupo de recursos de Azure.
4. Creación de un plan de ejecución de Terraform
Ejecute terraform plan para crear un plan de ejecución.
terraform plan -out main.tfplan
Puntos clave:
- El comando
terraform plancrea un plan de ejecución, pero no lo ejecuta. En su lugar, determina qué acciones son necesarias para crear la configuración especificada en los archivos de configuración. Este patrón le permite comprobar si el plan de ejecución coincide con sus expectativas antes de realizar cambios en los recursos reales. - El parámetro
-outopcional permite especificar un archivo de salida para el plan. El uso del parámetro-outgarantiza que el plan que ha revisado es exactamente lo que se aplica. - Para más información acerca de la seguridad y conservar los planes de ejecución, consulte la sección Advertencia de seguridad.
5. Aplicación de un plan de ejecución de Terraform
Ejecute terraform apply para aplicar el plan de ejecución a su infraestructura en la nube.
terraform apply main.tfplan
Puntos clave:
- El comando
terraform applyanterior da por hecho que ejecutó anteriormenteterraform plan -out main.tfplan. - Si especificó un nombre de archivo diferente para el parámetro
-out, use ese mismo nombre de archivo en la llamada aterraform apply. - Si no ha utilizado el parámetro
-out, simplemente llame aterraform applysin ningún parámetro.
6. Verificación de los resultados
Ejecute az group show para mostrar el grupo de recursos.
az group show --name <resource_group_name>
7. Limpieza de recursos
Cuando ya no necesite los recursos creados a través de Terraform, realice los pasos siguientes:
Ejecute el plan de Terraform y especifique la marca.
terraform plan -destroy -out main.destroy.tfplanPuntos clave:
- El comando
terraform plancrea un plan de ejecución, pero no lo ejecuta. En su lugar, determina qué acciones son necesarias para crear la configuración especificada en los archivos de configuración. Este patrón le permite comprobar si el plan de ejecución coincide con sus expectativas antes de realizar cambios en los recursos reales. - El parámetro
-outopcional permite especificar un archivo de salida para el plan. El uso del parámetro-outgarantiza que el plan que ha revisado es exactamente lo que se aplica. - Para más información acerca de la seguridad y conservar los planes de ejecución, consulte la sección Advertencia de seguridad.
- El comando
Ejecute terraform apply para aplicar el plan de ejecución.
terraform apply main.destroy.tfplan
Solución de problemas de Terraform en Azure
Solución de problemas comunes al usar Terraform en Azure