Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se muestra cómo crear un grupo de recursos de Azure mediante Terraform.
Terraform habilita la definición, la previsualización y la 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 nube , como Azure, y los elementos que componen la infraestructura en la nube. Después de crear los archivos de configuración, cree un plan de ejecución que le permita 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 aprenderá a:
- Cree un valor aleatorio para el nombre del grupo de recursos de Azure mediante random_pet.
- Cree un grupo de recursos de Azure mediante azurerm_resource_group.
Prerrequisitos
Implementación del código de Terraform
Nota:
El código de ejemplo de este artículo se encuentra en el repositorio de GitHub de de Azure Terraform. Puede ver el archivo de registro que contiene los resultados de las pruebas de de las versiones actuales y anteriores de Terraform.
Consulte más artículos de y código de ejemplo que muestra cómo usar Terraform para administrar recursos de Azure
Cree un directorio en el que probar el código de ejemplo de Terraform y conviértalo en el directorio actual.
Cree un archivo denominado
providers.tf
e inserte el código siguiente:terraform { required_providers { azurerm = { source = "hashicorp/azurerm" version = "~>4.0" } random = { source = "hashicorp/random" version = "~>3.0" } } } provider "azurerm" { features {} }
Cree un archivo denominado
main.tf
e inserte el código siguiente:# 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 }
Cree un archivo denominado
variables.tf
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." }
Cree un archivo denominado
outputs.tf
e inserte el código siguiente:output "resource_group_name" { value = azurerm_resource_group.example.name }
Inicialización de Terraform
Ejecute terraform init para inicializar la implementación de Terraform. Este comando descarga el proveedor de Azure necesario para administrar los recursos de Azure.
terraform init -upgrade
Puntos Clave de :
- El parámetro
-upgrade
actualiza los complementos de proveedor necesarios a la versión más reciente que cumple con las restricciones de versión de la configuración.
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 de :
- El comando
terraform plan
crea 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 permite comprobar si el plan de ejecución coincide con las expectativas antes de realizar cambios en los recursos reales. - El parámetro opcional
-out
permite especificar un archivo de salida para el plan. El uso del parámetro-out
garantiza que el plan que ha revisado es exactamente lo que se aplica.
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 de :
- En el comando de ejemplo
terraform apply
, se asume que previamente ejecutóterraform plan -out main.tfplan
. - Si especificó otro nombre de archivo para el parámetro
-out
, use ese mismo nombre de archivo en la llamada aterraform apply
. - Si no ha utilizado el parámetro
-out
, llame aterraform apply
sin ningún parámetro.
Comprobación de los resultados
Obtenga el nombre del grupo de recursos de Azure.
resource_group_name=$(terraform output -raw resource_group_name)
Ejecute az group show para mostrar el grupo de recursos.
az group show --name $resource_group_name
Limpieza de recursos
Cuando ya no necesite los recursos creados a través de Terraform, siga estos pasos:
Ejecute el comando terraform plan y especifique la marca
destroy
.terraform plan -destroy -out main.destroy.tfplan
Puntos Clave de :
- El comando
terraform plan
crea 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 permite comprobar si el plan de ejecución coincide con las expectativas antes de realizar cambios en los recursos reales. - El parámetro opcional
-out
permite especificar un archivo de salida para el plan. El uso del parámetro-out
garantiza que el plan que ha revisado es exactamente lo que se aplica.
- 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