Skip to main content

HCP Terraform - Hashicorp Cloud Platform (Terraform Cloud)

HCP Terraform, también conocido como Terraform Cloud, es un servicio gestionado ofrecido por HashiCorp que facilita el uso colaborativo de Terraform, permitiendo que los equipos planifiquen, apliquen y gestionen infraestructura como código de manera centralizada y segura. Está diseñado para simplificar el flujo de trabajo de infraestructura, automatizando tareas repetitivas, garantizando control de acceso y proporcionando visibilidad sobre los cambios en la infraestructura.

Principales funcionalidades:

  • Ejecución Remota: Permite que planes (terraform plan) y aplicaciones (terraform apply) se ejecuten en servidores de HashiCorp, eliminando la necesidad de ejecutar estos comandos localmente.
  • Gestión de Estado: Almacena el estado remoto de la infraestructura de forma segura, con copias de seguridad automáticas y bloqueo de estado para evitar concurrencia en ejecuciones.
    • Si ya tienes alguna experiencia con Terraform sabes que es necesario guardar los state files remotamente para que todos tengan acceso y con control. Por ejemplo en AWS generalmente usamos S3 para guardar y DynamoDB para hacer el lock y evitar condición de carrera.
  • Integración con Repositorios: Se conecta a repositorios Git para detectar cambios en el código y ejecutar planes automáticamente en Pull Requests ayudando a traer el concepto de GitOps.
  • Control de Acceso (RBAC): Define permisos detallados para diferentes usuarios y equipos, garantizando seguridad y conformidad. Ayuda a disminuir el uso de roles en las clouds.
  • Workspaces: Organiza múltiples estados y configuraciones en ambientes separados, como desarrollo, staging y producción.
  • Aprobaciones Manuales: Permite que los cambios sean revisados y aprobados antes de ser aplicados en la infraestructura.
  • Notificaciones y Logs: Ofrece logs centralizados e integración con herramientas como Slack y Microsoft Teams para alertas en tiempo real.
  • Alta disponibilidad del servicio.
  • Compartición segura de variables y secretos: Permite la compartición segura de variables y secretos entre miembros del equipo, sin la necesidad de exponerlos en texto no cifrado o utilizar recursos de la cloud para gestión de claves.
    • Puede ser integrado con HashiCorp Vault para gestión segura de credenciales y secretos. Esto ofrece una capa adicional de seguridad para tu infraestructura.
  • Estimación de costo: Analiza tu código Terraform (los archivos .tf) y, con base en los recursos que estás declarando calcula una estimación de cuánto costarán esos recursos en la nube. HCP Terraform consulta las informaciones de precios de los proveedores de nube (AWS, Azure, GCP, etc.) para obtener los precios de los recursos identificados. Aún muestra un Delta de costo que es la diferencia entre el costo actual de tu infraestructura y el costo estimado después de los cambios que estás planeando aplicar.

Existe otra herramienta llamada Atlantis open source.

¿Cuándo usar cada uno?

CaracterísticaAtlantisHCP Terraform
ModeloCódigo abierto, auto-hospedadoSaaS (Software as a Service) gestionado
GestiónTú gestionas la infraestructuraGestionado por HashiCorp
CostosCostos de infraestructura para hospedajePlan de precios de HashiCorp
Gestión de estadoRequiere configuración externa (S3, Azure Storage)Gestión centralizada integrada
ColaboraciónMás simple, basado en workflows configuradosRecursos avanzados como workspaces y control de acceso
EjecuciónLocal (en la infraestructura donde Atlantis corre)Remota (en la infraestructura de HCP Terraform)
PersonalizaciónAlta, con atlantis.yamlConfiguración vía interfaz web y algunas opciones de personalización
EscalabilidadDepende de tu infraestructuraAltamente escalable
SeguridadTú eres responsable de la seguridadSeguridad gestionada por HashiCorp
Recursos adicionalesLimitadosCost Estimation, Sentinel, módulos privados, etc.

Atlantis: Ideal para equipos que necesitan alto grado de personalización, control sobre el ambiente de ejecución y prefieren una solución de código abierto.

HCP Terraform: Ideal para equipos que buscan una solución lista para usar, con recursos avanzados de colaboración, gestión de estado centralizado, automatización y seguridad. Bueno para equipos que quieren minimizar la sobrecarga operacional y enfocarse en el desarrollo de la infraestructura.

Crea una cuenta gratuitamente para comenzar a usar.