← Tornar al blog

Optimització de costos AWS: De 3800$ a 1000$ amb EKS, KEDA i Karpenter

March 1, 2024

En el món del cloud computing, un dels reptes més grans per a les empreses és mantenir els costos sota control sense sacrificar el rendiment. En aquest article, comparteixo com hem aconseguit reduir els costos de computació de la nostra infraestructura AWS en més d’un 70% mitjançant la migració d’arquitectures tradicionals a una solució basada en Kubernetes amb EKS, KEDA i Karpenter.

El punt de partida: Una infraestructura costosa

La nostra arquitectura original es basava en dos serveis d’AWS per executar processos en segon pla (background workers):

AWS Elastic Beanstalk Workers

Els nostres workers d’Elastic Beanstalk representaven una part elevada de la factura mensual:

AWS Lambda

Per a tasques més específiques, utilitzàvem Lambda:

Cost total mensual: Aproximadament 3.000 - 3.800 $ per mantenir aquesta infraestructura operativa.

La solució: EKS + KEDA + Karpenter

Després d’analitzar diferents alternatives, vam decidir migrar la nostra infraestructura a una arquitectura basada en:

Aquesta combinació ens permet:

El procés de migració

La migració va seguir un procés estructurat en diverses fases:

1. Identificació i anàlisi

Primer, vam identificar tots els processos que s’executaven tant a Beanstalk com a Lambda, entenent:

2. Containerització

Vam crear imatges Docker per a cada projecte i les vam pujar a ECR (Elastic Container Registry), estandarditzant el format de tots els nostres serveis.

3. Estandarització del CI/CD

Un dels grans beneficis ha estat la creació d’un pipeline únic de CI/CD per a tots els projectes:

4. Configuració de KEDA i Karpenter

Vam configurar:

Resultats: Més d’un 70% d’estalvi

Després de la migració completa, els resultats han estat molt significatius:

Impacte econòmic

Beneficis operatius

Més enllà de l’estalvi econòmic, hem obtingut millores significatives en l’operativa:

  1. Simplificació de la infraestructura: Menys serveis gestionats, més control
  2. Control unificat: Tots els processos segueixen els mateixos patrons
  3. Flexibilitat: Podem afegir nous serveis en segon pla de forma ràpida i estandarditzada
  4. Visibilitat: Millor monitoratge i entendre del comportament dels serveis

Evolució del consum de recursos

Conclusions

La migració d’una infraestructura basada en Beanstalk i Lambda a EKS amb KEDA i Karpenter ha estat un èxit rotund. Els beneficis no són només econòmics, sinó que també hem simplificat la nostra arquitectura i millorat la nostra capacitat d’escalar de manera eficient.

Aprenentatges clau

  1. No tots els serveis gestionats són els més econòmics: De vegades, una solució més complexa inicialment pot ser molt més eficient a llarg termini
  2. L’auto-scaling intel·ligent és essencial: La capacitat d’escalar a zero i adaptar-se a la càrrega real és clau per optimitzar costos
  3. La standardització és valor: Un pipeline únic i patrons consistents redueixen la complexitat operativa

Si esteu considerant optimitzar els costos de la vostra infraestructura AWS, us recomano avaluar solucions basades en Kubernetes amb auto-scaling basat en esdeveniments. El retorn de la inversió pot ser molt ràpid, com en el nostre cas.