plataforma · aws
Infraestructura AWS automatizada
Arquitectura multi-tenant desplegada con Terraform, con escalado dinámico y el coste optimizado.
- tipo
- laboratorio
- rol
- Diseño de la arquitectura y automatización con Terraform
- stack
- terraform · lambda · eventbridge · s3 · rds
- resultado
- Entornos dev, staging y prod reproducibles como código, con hasta un 60 % menos de coste fuera de horario
Monté una arquitectura multi-tenant en AWS gestionada entera con Terraform. Desarrollo, staging y producción se despliegan igual, y los entornos se apagan solos fuera del horario laboral.
El punto de partida
Una plataforma multi-tenant necesita varios entornos que se comporten igual. Montados a mano, divergen entre sí y cuesta reproducirlos.
Además, un entorno encendido cuando nadie lo usa cuesta lo mismo que uno en uso.
Qué hice
Diseñé una arquitectura en varias capas dentro de una VPC privada y la definí entera como código. Cada entorno queda desacoplado de los demás y aislado por cliente. Añadí tareas programadas para recortar coste y mantenimiento.
Cómo lo hice
Red y acceso
VPC propia con subredes públicas y privadas en varias zonas de disponibilidad. NAT Gateways dan salida controlada a las instancias privadas, y un bastion host centraliza el acceso SSH. Route 53 resuelve el DNS interno y público.
Cómputo y tráfico
Balanceadores ALB y ELB, con certificados de ACM, reparten el tráfico entre las APIs. Auto Scaling Groups ajustan las instancias EC2 a la carga. CloudFront sirve la web y los estáticos.
Datos y despliegue
- RDS multi-tenant (MySQL y PostgreSQL) con backups automáticos y retención en S3.
- Redis como caché y gestor de sesiones.
- CodeDeploy y CodePipeline para el despliegue continuo de APIs y webs.
- S3 para logs, copias y artefactos.
Tareas programadas
EventBridge y Lambda encienden y apagan entornos fuera del horario laboral, rotan backups y limpian logs. Los logs y snapshots antiguos pasan a Glacier Deep Archive. CloudWatch vigila disco, CPU y memoria con alarmas.
Resultado
Los tres entornos se crean desde el mismo código, aislados por cliente y por entorno.
El apagado fuera de horario reduce el coste hasta un 60 %. Los cambios de infraestructura pasan por Terraform con control de versiones y aprobación previa, y los despliegues con CodeDeploy no interrumpen el servicio.
Qué me llevo
Buena parte del ahorro vino de algo simple: apagar lo que nadie usa. Tenerlo todo como código es lo que permite automatizarlo sin miedo a dejar un entorno a medias.
Arquitectura
CloudFront → balanceador → Auto Scaling Group de APIs → RDS y Redis, en subredes privadas de una VPC. Al lado, EventBridge → Lambda para las tareas programadas, y S3 y Glacier para logs y copias.