Al unificar Terraform con Azure, simplificas la gestión de infraestructura al utilizar scripts compatibles que facilitan el despliegue de información. Esto se logra mediante la línea de comandos de Azure, que traduce lo que creas en Terraform para que se ejecute en Azure.
¿Cómo instalar y configurar la línea de comandos de Azure?
Para unificar Terraform con Azure, es esencial instalar y configurar la línea de comandos de Azure:
Accede al enlace proporcionado: Busca dentro de los recursos de tu clase el enlace para la instalación de la línea de comandos de Azure.
Seleccione su sistema operativo: Aunque uses Windows, si trabajas con Ubuntu en WSL (Windows Subsystem for Linux), elije la categoría de Ubuntu. Si prefieres otra distribución Linux, ajústala según tus necesidades.
Comando en Ubuntu o Debian: Si utilizas versiones como la 22.04 o 24.04 de Ubuntu, sigue estos pasos:
Copia el comando proporcionado en la página.
Pega el comando en tu terminal y ejecuta. Tendrás que introducir tu contraseña debido a que el comando requiere permisos privilegiados.
# Ejemplo de comando para Ubuntusudoapt-get update &&sudoapt-getinstall azure-cli
¿Cómo verificar que la instalación de Azure CLI fue exitosa?
Tras la instalación, asegúrate de que la línea de comandos de Azure se instaló correctamente:
Ejecuta el comando az: Esto debería mostrarte la ayuda de Azure CLI. Si ves una lista de comandos, ¡excelente! La instalación fue un éxito.
az
Inicio de sesión en Azure con az login:
Problemas de seguridad: Si el navegador no se abre automáticamente, utiliza el comando az login --use-device-code.
Paso adicional: Sigue las instrucciones para introducir el código que aparece en tu terminal en el navegador.
az login --use-device-code
Cuenta y suscripciones de Azure: Después del login, usa az account show para verificar tu cuenta Azure activa.
az account show
¿Qué hago si tengo múltiples suscripciones de Azure?
Si tu cuenta tiene varias suscripciones, selecciona la que vas a utilizar:
Introduce el número asociado a la suscripción deseada y presiona Enter. Esto asociará tu sesión con esa suscripción.
# Muestra las suscripciones y selecciona la deseadaaz account list --output table
az account set --subscription "Subscription Name or ID"
¿Cómo preparar el entorno para trabajar con Terraform?
Con estos pasos, tu línea de comandos de Azure estará configurada para usar con Terraform, permitiendo desplegar recursos en Azure de manera efectiva. Ahora estarás listo para comenzar a crear y gestionar infraestructura como código con Terraform. ¡Continúa explorando y experimentando, el aprendizaje no tiene fin!
aws configure
# Te pedirá:# AWSAccessKeyID# AWSSecretAccessKey# Regiónpredeterminada(ej: us-east-1)# Formato de salida(ej: json)
💡 Nota: Esto crea el archivo ~/.aws/credentials con tus credenciales.
3️⃣ Verificar conexión con AWS
aws sts get-caller-identity
# Muestra tu usuario, cuenta y ARN
4️⃣ Preparar Terraform para AWS
Crear tu proyecto de Terraform
Abre tu terminal WSL.
Crea una carpeta para tu proyecto:
mkdir terraform-aws-demo
cd terraform-aws-demo
Crear el archivo de provider
Dentro de la carpeta del proyecto, crea un archivo llamado provider.tf:
nano provider.tf
Copia y pega este contenido mínimo:
provider "aws"{ region ="us-east-1"}
Esto le dice a Terraform que trabajará con AWS en la región us-east-1.
Puedes cambiar la región según necesites (ej: us-west-2).
Guarda y cierra el archivo (Ctrl+O, Enter, Ctrl+X en nano).
3️⃣ Inicializar Terraform
terraform init
Descarga el plugin de AWS.
Prepara el proyecto para trabajar con Terraform.
Verás un mensaje tipo “Terraform has been successfully initialized!”
4️⃣ Previsualizar los cambios
terraform plan
Terraform te muestra qué recursos creará, modificará o destruirá.
Antes de ejecutar cambios reales, es tu “vista previa segura”.
5️⃣ Aplicar la infraestructura
terraform apply
Terraform te preguntará Do you want to perform these actions? → escribe yes y Enter.
Crea la infraestructura en AWS según lo definido en tus archivos .tf.
Tip: Si tu provider.tf solo tiene el provider, no se crea nada real aún, pero sirve para probar el flujo.
6️⃣ Destruir la infraestructura (limpiar)
terraform destroy
Elimina los recursos creados por Terraform.
Siempre confirma escribiendo yes.
7️⃣ Credenciales
💡 Tip rápido:
Terraform automáticamente usa tus credenciales de AWS CLI que configuraste con:
aws configure
No necesitas poner access_key ni secret_key dentro del archivo .tf.
Se recomienda nunca poner credenciales en los archivos.
Ejemplo mínimo de provider AWS (provider.tf):
provider "aws"{ region ="us-east-1"}
Comandos básicos de Terraform:
terraform init # Inicializa el proyecto y descarga plugins AWSterraform plan # Muestra qué recursos se crearán
terraform apply # Crea la infraestructura en AWSterraform destroy # Elimina la infraestructura creada
💡 Tip rápido:
Terraform lee tus credenciales de ~/.aws/credentials, así que no necesitas pasar keys en los archivos .tf.
5️⃣ Flujo resumido de trabajo
Instalar AWS CLI en WSL → aws --version
Configurar AWS CLI → aws configure
Verificar acceso → aws sts get-caller-identity
Crear proyecto Terraform → definir provider.tf
terraform init → terraform plan → terraform apply
Listar recursos o destruir → terraform destroy
Entiendo que TerraForm aplica para todas las nubes, podría ir con el proceso paralelo con el CLI de Aws por ejemplo?
Terraform es la única que puede administrarlas a todas, lo que implica que puedes usarlo en lugar del CLI de AWS para administrar recursos en la nube.
¿Quisiera saber como te fue con esto? Me gustaría intentarlo también con AWS ✨
El mensaje que ves indica que Azure CLI (az login) está intentando abrir un navegador web para autenticarte, pero parece que tu entorno WSL no tiene soporte gráfico para abrir el navegador automáticamente.
Una opción para este escenario es ejecutar: az login --use-device-code
Te dará un codigo, con el cual abriendo la url: te permite ingresar el codigo y realizar la autenticación.
En AWS lo equivalente es configurar AWS CLI para que Terraform pueda autenticarse.
Primero instalas el CLI:
sudo apt update
sudo apt install awscli -y
Verificas:
aws --version
Luego configuras con las Access Keys del usuario IAM:
aws configure
Ingresas:
AWS Access Key ID
AWS Secret Access Key
Región (ej: us-east-1)
Output: json
Podemos validar que todo quedó bien así:
aws sts get-caller-identity
Si responde con tu Account ID, ya estás conectado.
Con esto las credenciales quedan guardadas en el sistema (~/.aws/credentials) y Terraform las usará automáticamente cuando ejecutes operaciones utilizando el proveedor de AWS.
Estuve revisando la documentaciòn y encontré que hay varias formas de autenticarte en Azure cuando trabajas con Terraform pero las más rápidas y sencillas son:
Con la Azure CLI en tu PC (az login)
Cuando instalas la CLI, se guarda la sesión en tu máquina (~/.azure/).
Si usas az login, se abre el navegador y el logueo es automático.
Si no tienes navegador, existe az login --use-device-code, que te da un código para meter en .
Con Azure Cloud Shell
Es un entorno en el navegador que ya trae instalado CLI, Terraform, Git, Python, etc.
No instalas nada en tu compu, solo entras y ya estás autenticado con tu cuenta.
Para pruebas rápidas es lo más cómodo.
👉 Importante: no chocan entre sí porque son sesiones distintas, pero ojo que si usas la misma suscripción los recursos que crees (VMs, redes, etc.) se van a ver en ambos.
Pienso que es mejor crear una suscripción aparte si se desea usar ambas al mismo tiempo.
🚀 Instalación y Configuración de la CLI de Azure para Integración con Terraform
En esta lección se explica el paso clave que permite unir Terraform con Azure: la instalación y configuración de la Azure CLI. Sin esta herramienta, Terraform no podría comunicarse con la nube de Azure, ya que traduce las instrucciones de los scripts en comandos compatibles con la plataforma. A continuación, se resume y organiza el contenido en secciones temáticas.
🔧 Instalación de la CLI de Azure en Ubuntu (WSL)
El proceso parte de la necesidad de contar tanto con Terraform como con la CLI de Azure.
Se trabaja en Ubuntu dentro de WSL aunque el sistema base sea Windows.
Para instalar la CLI, se sigue la documentación oficial de Microsoft, seleccionando la categoría Ubuntu/Debian.
Ejemplo práctico:
En Ubuntu 22.04 o 24.04 basta con copiar y pegar el comando proporcionado por Microsoft en la terminal.
Este comando requiere permisos de administrador (se solicita contraseña).
Una vez ejecutado, el script descarga e instala la CLI automáticamente.
👉 Si la CLI ya estaba instalada, el instalador actualiza la versión existente (por ejemplo, de la .65 a la .68).
💻 Primeros pasos con la CLI de Azure
Tras la instalación:
Se verifica la instalación ejecutando el comando az.
Esto muestra la ayuda de la CLI con todos los comandos disponibles, confirmando que la herramienta está lista para usarse.
Ejemplo: ejecutar az en la terminal despliega un listado de comandos, lo que indica que Azure CLI responde correctamente.
🔑 Autenticación en Azure
El siguiente paso es conectar la CLI con la cuenta de Azure.
Comando estándar: az login
Abre un navegador para autenticar al usuario con su cuenta de Azure.
Caso especial: cuando el navegador no se abre por configuraciones de seguridad, se usa:
az login --use-device-code
Este método genera un código de un solo uso que debe introducirse en la página de Microsoft indicada en la terminal.
Tras autenticarse:
Azure CLI recupera las suscripciones disponibles en la cuenta.
El usuario selecciona la suscripción deseada (por ejemplo, la número 1 en el listado).
📂 Verificación de la cuenta activa
Con la suscripción configurada, se valida la sesión con:
az account show
Este comando muestra información de la cuenta activa, confirmando que Azure está listo para usarse desde la CLI.
Ejemplo:
La salida indica que la suscripción activa es Azure corp account, mostrando que todo quedó correctamente configurado.
🌐 Integración con Terraform
Con la CLI instalada y autenticada:
Terraform ahora puede desplegar recursos en Azure sin fricciones.
Esto se logra porque Terraform traduce la infraestructura declarada en sus scripts hacia los comandos de la CLI de Azure.
Resultado: el desarrollador puede crear, gestionar y destruir recursos en Azure de manera declarativa, automatizada y segura.
Ejemplo hipotético:
Un script de Terraform que define un Azure Resource Group será ejecutado como un comando equivalente en la CLI gracias a esta configuración.
📝 Conclusión y Recomendaciones
La instalación y configuración de la Azure CLI es un paso esencial para habilitar el uso de Terraform en entornos Azure:
✅ Instalar la CLI siguiendo la guía oficial para el sistema operativo en uso.
✅ Verificar la instalación ejecutando el comando az.
✅ Autenticarse con az login y seleccionar la suscripción adecuada.
✅ Confirmar la cuenta activa con az account show.
✅ Una vez completado, Terraform puede operar sin restricciones en Azure.
🔐 Recomendación práctica: usar suscripciones separadas para entornos de desarrollo, pruebas y producción, evitando errores costosos al desplegar infraestructura.