- Home
- Casi di studio
- Riduzione dei costi Kubernetes: 40% di spesa cloud in meno
Riduzione Dei Costi Kubernetes: 40% Di Spesa Cloud in Meno
Come abbiamo ridotto i costi di EKS del 40% con un dimensionamento corretto e un autoscaling ottimizzato.
Il problema
Una piattaforma e-commerce spendeva 18.000 $ al mese per un cluster AWS EKS. Il team infrastruttura sapeva che i costi erano alti, ma non riusciva a individuare dove fosse lo spreco. Non c’era nessun autoscaling. I nodi lavoravano al 20% di utilizzo. Le istanze riservate non erano in uso. Nessuno aveva un quadro chiaro del costo per workload.
La sfida
Tagliare i costi sembra facile, ma il vero compito era trovare gli sprechi senza rompere nulla:
- Migliaia di pod in esecuzione su più namespace
- Nessuna attribuzione dei costi per team o servizio
- Timore di un calo di prestazioni durante l’ottimizzazione
- Bisogno di risultati rapidi e di miglioramenti duraturi
La soluzione
Abbiamo condotto un audit dei costi strutturato e la relativa ottimizzazione:
Fase 1: analisi dei costi
- Analizzati 60 giorni di metriche CloudWatch ed EKS
- Associati i pod in esecuzione ai costi delle istanze EC2
- Individuati gli sprechi: node pool inutilizzati, request sovradimensionate, PVC inattivi
- Scoperto che il 40% della capacità del cluster era inutilizzato
Fase 2: dimensionamento corretto
- Ridotto il node pool da 20 a 14 nodi (stesso carico di lavoro)
- Scelti tipi di istanza adeguati (m5.xlarge → t3.large per i workload non critici)
- Rimossi i node pool inutilizzati di vecchi servizi
- Consolidati i workload per ridurre la frammentazione
Fase 3: autoscaling
- Attivato Cluster Autoscaler con node template corretti
- Configurato KEDA per l’autoscaling delle applicazioni nei picchi di traffico
- Impostate correttamente request e limit delle risorse (erano sovradimensionate del 60%)
- Introdotti i pod disruption budget per scalare in discesa in modo ordinato
Fase 4: istanze riservate e Spot
- Acquistate istanze riservate per la capacità di base (sconto del 30%)
- Attivate le istanze Spot per i workload non critici (sconto del 60-70%)
- Configurata la diversificazione Spot Fleet per ridurre il rischio di interruzioni
- Monitorato il fallback Spot per lo scaling di emergenza
Risultati
- 40% di costi in meno: da 18.000 $ a circa 10.800 $ al mese
- Stessa capacità di elaborazione: nessun calo di prestazioni
- Deploy più rapidi: un autoscaling migliore risponde più in fretta
- Visibilità per il team: attribuzione chiara dei costi per namespace
- Fiducia operativa: procedure di ottimizzazione documentate
L’azienda ha risparmiato 86.400 $ all’anno senza modificare il codice applicativo e senza ridurre la disponibilità.
Punti chiave
- La maggior parte dello spreco in Kubernetes nasce dal sovradimensionamento: la sola messa a punto delle request fa risparmiare il 20-30%
- Le istanze Spot sono sicure, con un fallback adeguato e i disruption budget
- La visibilità sui costi conta: i team decidono meglio con dati di costo reali
- L’autoscaling funziona solo con request corrette: impostatele in base all’utilizzo osservato, non a supposizioni