Caso · Infraestructura cloudEn producción

Banndo

Infraestructura en AWS para desplegar la aplicación de Banndo (frontend y backend) en contenedores.

  • Terraform
  • ECS Fargate
  • ALB
  • ECR
El desafío

Qué había que resolver

Banndo necesitaba llevar su aplicación, con un frontend y un backend, a producción en AWS de forma ordenada, segura y fácil de mantener.

El objetivo era una infraestructura reproducible, en la que publicar una nueva versión fuera un paso simple y sin cortes, y que el equipo pudiera operar día a día.

La solución

Qué construimos

Infraestructura como código

Toda la infraestructura escrita en Terraform y organizada en módulos: redes, balanceador, cómputo y permisos.

Contenedores sin servidores que mantener

Frontend y backend corriendo como servicios separados en Amazon ECS con Fargate.

Despliegues sin cortes

Las imágenes se publican en Amazon ECR y una nueva versión se despliega con un rolling deployment de ECS.

Operación simple

Logs centralizados en CloudWatch y una guía de operación para el día a día del equipo.

Arquitectura

Cómo se arma en AWS

PiezaServicio de AWS
RedAmazon VPCSubnets, tablas de ruteo y security groups definidos como código.
EntradaApplication Load BalancerListeners, target groups y health checks para frontend y backend.
CómputoAmazon ECS + AWS FargateServicios de frontend y backend sin servidores que administrar.
ImágenesAmazon ECRRegistro privado y versionado de las imágenes de cada servicio.
Permisos y secretosAWS IAM + Secrets ManagerRoles de ejecución con lo justo y secretos fuera del código.
ObservabilidadAmazon CloudWatchLogs de los servicios centralizados para diagnosticar rápido.
Decisiones clave

Lo que hace la diferencia

  1. 01

    Módulos separados por responsabilidad

    Redes, balanceador, ECS e IAM en módulos de Terraform independientes, fáciles de entender y modificar.

  2. 02

    Fargate en lugar de servidores

    Sin instancias que parchear ni escalar a mano: el equipo se enfoca en su aplicación.

  3. 03

    Una versión nueva es un cambio de variable

    Publicar una versión es actualizar el tag de la imagen y aplicar Terraform; ECS hace el resto sin cortes.