Van pieken naar besparingen: Kubernetes-kostenoptimalisatie
Onze AWS-rekening steeg met 34% in één kwartaal. De productroadmap vertoonde geen wijzigingen. De oorzaak was simpel: onze Kubernetes-clusters verspillen geld.
Engineers gokken vaak hoeveel CPU en geheugen een service nodig heeft. Ze ronden naar boven af om veilig te zitten. Dit creëert spookcapaciteit. Je betaalt voor resources die je applicaties nooit gebruiken.
Hier lees je hoe we dit hebben opgelost en 34% op de maandelijkse kosten bespaarden.
Het kernprobleem: Requests vs. Limits
Requests zijn wat je garandeert. Kubernetes gebruikt dit getal om je pod op een node te plaatsen. Dit getal bepaalt je rekening.
Limits zijn het plafond. Als een pod een CPU-limit bereikt, vertraagt deze. Als hij een memory-limit bereikt, crasht hij.
Veel teams stellen requests gelijk aan limits. Dit betekent dat je 24/7 betaalt voor piekcapaciteit, zelfs wanneer je service inactief is.
Onze strategie voor besparingen
- Meet voordat je handelt: Gebruik Prometheus en Grafana om het werkelijke gebruik te zien.
- Gebruik percentielen: Kijk naar het p95-gebruik over 4 weken. Gebruik geen gemiddelden. Gemiddelden verbergen pieken.
- Optimaliseer de grootte van requests: Stel requests in op het p95-gebruik plus een buffer van 20%.
- Beheer CPU-limits: Vermijd te krappe CPU-limits voor gevoelige services om throttling te voorkomen.
- Automatiseer schalen: Gebruik HPA voor verkeerspieken en VPA om individuele pods af te stemmen.
De resultaten
We hebben ons aantal nodes verminderd van 40 naar 26. Het gemiddelde CPU-gebruik steeg van 14% naar 52%. De maandelijkse compute-kosten daalden van $48.200 naar $31.900. De latency verbeterde zelfs met 35%.
Optimalisatie is geen eenmalig project. Het is een gewoonte. Als je een resource request schrijft op basis van een gok, verspil je geld.
Checklist voor je cluster:
• Bouw een dashboard dat het gevraagde vs. werkelijke gebruik laat zien. • Stel requests in op basis van 4 weken aan gegevens. • Draai VPA in 'recommendation mode' voordat je het wijzigingen laat aanbrengen. • Beoordeel de resource-specificaties elk kwartaal. • Geef engineeringteams inzicht in hun eigen kosten.
Bron: https://dev.to/samarth_05/from-spikes-to-savings-practical-k8s-cost-optimization-for-2026-75k
Optionele leercommunity: https://t.me/GyaanSetuAi
