Automatización de tareas rutinarias con Terraform y Terragrunt

Se puede observar el progreso del servicio y controlar los cambios y gestionar infraestructuras considerablemente grandes o una sola aplicación para varios entornos

El reto

Se planteó el reto de automatizar tareas rutinarias y pesadas. Como la creación de recursos a través de la consola de AWS y/o otros proveedores.

Para ello se usaría terraform y terragrunt. Por sus ventajas como, por ejemplo: nos permite crear configuraciones que puede ser compartida y reutilizar.

Puede ser versionado, de esta forma es más sencillo observar el progreso del servicio y controlar los cambios.

La solución

Los recursos ya creados en AWS mediante la consola deben ser importados para ser gestionados por terraform.

Crear 'plantillas' en terraform para desplegar los recursos que fueran necesarios, por ejemplos rds, ec2,etc.

Un caso, fue la creación de repositorios en GitHub y asignarlo a distintos equipos con diferentes permisos. Y además, crear un repositorio en quay para cada repositorio creado en GitHub.

Esto es así para cada microservicio y se tarda horas en completarlo. Con terraform esto se completaría en minutos.

Resultados

Gestionar y desplegar estos recursos mediante Terraform. Permite ahorrar mucho tiempo en comparación al hacerlo de forma manual.

 

También permite desplegar los mismos recursos para diferentes entornos, sin que haya casi ninguna diferencia entre ellos, y ser configurados más fácilmente.

tecnologías utilizadas

  • Terraform
  • Shell Script
  • Rest API
  • Terragrunt
  • AWS

Siguiente Proyecto

Universidad de Murcia

Universidad de Murcia

Whitepaper de ciberseguridad

Descarga el informe completo “La importancia de la ciberseguridad desde el principio”