Temario del curso
Módulo 1: Introducción a la Infraestructura como Código y Terraform
- Conceptos de IaC y beneficios para entornos locales e híbridos.
- Visión general de Terraform: proveedores, recursos, estado y ciclo de vida.
- Instalación de Terraform, Azure CLI y herramientas requeridas.
- Primera práctica: escribir una configuración simple de Terraform y aplicarla localmente.
Módulo 2: Lenguaje de Configuración de HashiCorp (HCL) y fundamentos de configuración
- Sintaxis de HCL, recursos, atributos y expresiones.
- Variables, salidas (outputs), locales y restricciones de tipo.
- Uso de la CLI de Terraform: init, plan, apply, destroy y fmt.
- Laboratorio práctico: construir una configuración parametrizada para un recurso local y un recurso de Azure.
Módulo 3: Proveedores, recursos y fundamentos del proveedor de Azure
- Comprensión de proveedores y configuración de proveedores (proveedor AzureRM).
- Mapeo de la infraestructura a recursos de Terraform (redes, cómputo, almacenamiento).
- Gestión de autenticación de Azure y principales de servicio (service principals) para la automatización.
- Práctica: aprovisionar una red virtual de Azure y una VM simple mediante Terraform.
Módulo 4: Gestión del estado, backends y colaboración
- Estado de Terraform: propósito, formato y consideraciones del ciclo de vida.
- Backends remotos con Azure Storage Account y estrategias de bloqueo de estado.
- Espacios de trabajo (workspaces), entornos y patrones de colaboración para equipos.
- Laboratorio: configurar estado remoto en Azure Storage y realizar un flujo de trabajo de múltiples usuarios.
Módulo 5: Modularización, reutilización y mejores prácticas
- Creación y consumo de módulos de Terraform.
- Entradas/salidas de módulos, versionado y patrones de registro (registry).
- Estructura de carpetas, convenciones de nomenclatura y estructura de repositorios mantenible.
- Práctica: crear un módulo reutilizable para VM de Azure + disco + red y probarlo en diferentes entornos.
Módulo 6: Gestión de dispositivos virtuales de Azure e integración local
- Gestión de Máquinas Virtuales de Azure, componentes de Virtual Desktop y ciclo de vida de dispositivos mediante Terraform.
- Patrones para gestión de dispositivos híbridos: conectar recursos locales y dispositivos gestionados por Azure.
- Integración de sistemas de gestión de volumen o dispositivos a través de fuentes de datos y proveedores externos.
- Laboratorio: desplegar una flota de VMs de Azure que represente unidades de operador y configurar etiquetado de inventario y monitoreo básico.
Módulo 7: CI/CD, automatización y pipelines de despliegue
- Integración de Terraform con CI/CD (GitHub Actions, pipelines de Azure DevOps).
- Automatización de plan/apply con secretos seguros y principales de servicio.
- Fundamentos de Política como Código (patrones de Sentinel o Open Policy Agent) y verificaciones previas al despliegue.
- Práctica: crear un flujo de trabajo simple de GitHub Actions para planear y aplicar Terraform contra una suscripción de pruebas (sandbox).
Módulo 8: Seguridad, secretos y prácticas operativas
- Gestión de secretos: integración con Azure Key Vault y evitar datos sensibles en archivos de estado.
- Control de acceso, RBAC y principio de menor privilegio para cuentas de automatización.
- Detección de desviaciones (drift), conciliación de estado y prácticas básicas de remediación.
- Lista de verificación: respaldos, auditoría y gobernanza para infraestructura gestionada con Terraform.
Módulo 9: Pruebas, depuración y solución de problemas
- Depuración de configuraciones de Terraform y lectura efectiva de las diferencias del plan (diffs).
- Enfoques de pruebas unitarias y de integración (terraform validate, tflint, kitchen-terraform).
- Patrones comunes de errores y estrategias de resolución.
- Laboratorio: ejecutar herramientas de validación y linting y corregir los problemas encontrados.
Módulo 10: Proyecto integrador (Capstone) — Escenario de despliegue híbrido
- Ejercicio de diseño: planear un despliegue de dispositivos local + Azure utilizando los patrones aprendidos.
- Implementación de componentes centrales utilizando módulos, estado remoto y fragmentos de pipeline CI/CD.
- Presentación de la solución, discusión de compensaciones (trade-offs) y revisión del manual de operaciones (runbook).
Resumen y próximos pasos
Requerimientos
- Comprensión de conceptos básicos de redes y virtualización.
- Familiaridad con la línea de comandos de Windows o Linux.
- Conocimientos básicos de conceptos de infraestructura en la nube o en entornos locales.
Público objetivo
- Administradores de sistemas e ingenieros de plataformas.
- Profesionales de DevOps que inician con Infraestructura como Código.
- Equipos de TI que gestionan infraestructura híbrida (local + Azure).
Reseñas (3)
el ritmo fue excelente en su mayor parte. Michal fue muy bueno para mantener al público interesado y asegurarse de que todos siguieran el ritmo en su mayor parte
Asif Shaikh - Carpmaels & Ransford
Curso - Terraform on Microsoft Azure
Traducción Automática
Revisar todos los detalles en la práctica - escribiendo código real
Michal Pipala - EY
Curso - Advanced Terraform: Efficient Infrastructure as Code
Traducción Automática
el instructor estaba muy bien preparado
Federico Biavati - CRIF S.P.A.
Curso - Terraform for Managing Cloud Infrastructure
Traducción Automática