Adopta Terraform sin tener que rehacer tu entorno desde cero
Gestionar tu infraestructura en AWS con un enfoque de Infrastructure as Code (IaC) permite mejorar el control, la trazabilidad y la eficiencia operativa. Sin embargo, cuando ya tienes muchos recursos desplegados y funcionando, el paso a IaC puede parecer una tarea titánica.
Aquí es donde entra en juego Terraformer, una herramienta que te permite generar automáticamente archivos de configuración Terraform a partir de infraestructura ya existente.
¿Qué es Terraformer?
Terraformer es una herramienta que permite exportar recursos Cloud existentes a formato Terraform. Actualmente soporta múltiples proveedores como AWS, Google Cloud, Azure y Kubernetes.
En el caso de AWS, Terraformer te permite:
- Detectar recursos desplegados (EC2, VPCs, RDS, etc)
- Generar los ficheros .tf correspondientes
- Crear el terraform state inicial
¿Por qué es útil?
Cuando una empresa empieza en AWS sin adoptar Terraform desde el principio, suele terminar con infraestructuras creadas a mano, por consola o mediante scripts desordenados. Esto implica falta de control de versiones, cambios manuales no trazables y dificultad para replicar entornos.
Terraformer soluciona esto generando automáticamente el punto de partida. Los recursos pasan a estar definidos como código y se puede empezar a gestionar con Terraform.
Casos de uso ideales
Terraformer es especialmente útil en los siguientes casos:
- Entornos legacy que deben pasar a ser gestionados por IaC
- Auditorías para ver lo que realmente hay desplegado
- Proyectos de refactorización
- Onboarding técnico para obtener visibilidad de lo que se ha creado
¿Y los riesgos?
Terraformer no es mágico. Aunque facilita enormemente el paso inicial hacia IaC, los archivos que genera no siempre son óptimos: pueden incluir configuraciones incompletas, difíciles de mantener o mal estructuradas. Además, el código resultante no está modularizado y no contempla automáticamente las dependencias entre recursos, lo que puede llevar a errores si se aplica sin una revisión previa.
Antes de integrar Terraformer en un flujo de trabajo real, es imprescindible revisar en detalle el código generado, depurarlo, estructurarlo correctamente y validar su consistencia.
Buenas prácticas
- Usa filtros: no importes todo a la vez. Empieza por un servicio o VPC concreta.
- No sobrescribas tu entorno: usa Terraformer en modo lectura y no apliques hasta entender el código.
- Organiza el output: separa los recursos por tipo o módulo desde el principio.
- Valida el estado generado: compara con la consola y limpia atributos innecesarios.
- Integra solo lo que vayas a mantener: no conviertas todo en Terraform si no vas a gestionarlo luego.
¿Cómo lo usamos en Cloudner?
En Cloudner empleamos Terraformer como punto de partida cuando trabajamos con entornos en AWS ya desplegados que no están definidos como código. Su uso nos permite acelerar la transición hacia Infrastructure as Code sin tener que reconstruir todo desde cero.
Eso sí, no se trata de generar archivos y usarlos tal cual. Tras la extracción, aplicamos una fase de revisión técnica en la que:
- Validamos la consistencia de los recursos detectados
- Eliminamos configuraciones innecesarias o heredadas
- Organizamos el código en módulos reutilizables
- Integramos el estado con el backend adecuado (local o remoto)
Además, diseñamos un plan de incorporación progresiva a la pipeline de despliegue, garantizando que el entorno se mantenga funcional durante todo el proceso.
El resultado es una base de Terraform limpia, modular y mantenible, alineada con las buenas prácticas de arquitectura en AWS.
¿Estás planteando adoptar Terraform?
Si ya tienes infraestructura en AWS pero aún no trabajas con Terraform, Terraformer puede ser una muy buena forma de empezar sin romper nada.
Desde Cloudner te ayudamos a adoptar buenas prácticas de infraestructura como código, evaluando tu entorno actual y definiendo un plan realista para transicionar hacia IaC sin fricción.
¿Te interesa? Revisa nuestro servicio de Arquitectura Cloud.