TERRAFORM: QUÉ ES Y CÓMO FUNCIONA LA INFRAESTRUCTURA COMO CÓDIGO
Terraform es una herramienta de Infraestructura como Código (IaC - Infrastructure as Code) desarrollada por HashiCorp. Permite definir, provisionar y gestionar infraestructura de manera segura y eficiente en entornos de nube (como AWS, Azure, Google Cloud) y on-premises, utilizando archivos de configuración declarativos legibles por humanos.
¿Qué significa esto?
Declarativo: Describes el estado final deseado de la infraestructura (por ejemplo, "quiero una máquina virtual con estas características"), y Terraform se encarga de cómo llegar allí, sin necesidad de escribir pasos procedurales.
Usa el lenguaje HashiCorp Configuration Language (HCL) o JSON para escribir las configuraciones.
Genera un plan de cambios antes de aplicarlos, lo que permite revisar y aprobar modificaciones.
Mantiene un archivo de estado (state) que registra la infraestructura real, para detectar diferencias y gestionar actualizaciones o destrucciones.
Principales ventajas
Soporta múltiples proveedores (providers) para cloud, redes, SaaS, etc.
Permite versionar, reutilizar y compartir configuraciones como código (integración con Git).
Facilita la colaboración en equipos y la automatización en DevOps.
Es open-source (aunque con cambios en la licencia en 2023 a BUSL para ciertas versiones), y hay una versión cloud llamada HCP Terraform.