Klient, ktorého dva roky spravujeme, požiadal o štandardný cost review. Ich CTO už raz prešiel faktúru s financiami a nedošli nikam — „všetko vyzerá, že tam má byť”. O tri popoludnia neskôr jeden inžinier znížil mesačnú AWS faktúru zhruba z 18 000 dolárov na 12 400. Žiadny redesign. Žiadny nový Savings Plan. Rovnaký workload, rovnaké SLA, len menej plytvania.
Tu je, čo sa stalo. Tri sweepy, ktoré väčšina tímov pozná, a jeden, o ktorom väčšina nikdy nepočula.
Sweep č. 1: čo reálne beží oproti tomu, čo máte rezervované
Pokrytie compute rezerváciami a Savings Plans. Pohľad na utilization report ukázal štyri Reserved RDS instance, ktoré pred deviatimi mesiacmi zmigrovali na Aurora Serverless v2. Rezervácie sa ďalej fakturovali. To je 1 200 dolárov mesačne, ktoré ticho odchádzajú. Toto je nuda — ale stretávame to v každej druhej firme, ktorú vidíme.
Druhý nález: EC2 Reserved Instances pre staré web servery, ktoré pred štyrmi mesiacmi nahradili ECS Fargate. Žiaden alert, žiaden dashboard. Reserved Instance Utilization v Cost Explorer vám tieto sirôty ukáže za tridsať sekúnd. Stačí sa pozrieť.
Sweep č. 2: NAT gateway-e, ktoré nikto neauditoval
NAT gateway-e sú jeden z najtichších riadkov AWS faktúry. 0,045 dolára za hodinu na gateway plus 0,045 za GB prenesených dát. Klient mal šesť NAT gateway-ov cez štyri VPC-čka. Tri obsluhovali produkčné workloady. Tri obsluhovali staging prostredia, ktoré sa naposledy testovali pred ôsmimi mesiacmi.
Tie staging gateway-e stáli zhruba 190 dolárov mesačne každý a nerobili nič. Časť trafficu, ktorý cez ne tiekol, prichádzala z denných cron jobov, ktoré nikto nevypol. VPC-čka v stagingu sme s krátkym potvrdením klienta zhodili a gateway-e padli s nimi. −570 dolárov mesačne, jedno popoludnie práce.
Sweep č. 3: S3 lifecycle politiky, ktoré nikdy nedotiahli
Klasika. Veľký bucket logov bez lifecycle pravidla. CloudTrail logy z 2019. ALB access logy z 2020. Klient mal 14 TB v S3 Standard, z toho približne 11 TB nikto nečítal viac ako rok.
Napísali sme lifecycle pravidlo, ktoré logy po 30 dňoch presunie do S3 IA, po 90 dňoch do Glacier Flexible Retrieval a po roku do Deep Archive. Predpokladaná úspora po plnej migrácii: 850 dolárov mesačne. Toto je najlacnejšia úspora, akú AWS ponúka. Stačí napísať jednu JSON politiku.
A štvrtá vec, o ktorej väčšina tímov nikdy nepočula
Inter-AZ traffic v rámci jedného regiónu. AWS si účtuje 0,01 dolára za GB trafficu medzi availability zónami v rovnakom regióne. Pre väčšinu workloadov je to zanedbateľné. Pre niektoré nie.
Klient mal Postgres v eu-central-1a a tri ECS služby v 1a, 1b a 1c. ECS scheduler ich rozhadzoval cez všetky tri zóny kvôli vysokej dostupnosti — čo je defaultný a správny prístup. Lenže každý dotaz na databázu z 1b alebo 1c sa rátal ako cross-AZ. Pri ich zaťažení to bolo zhruba 14 TB inter-AZ trafficu mesačne, 140 dolárov.
Čo sme spravili: pridali sme Postgres read replicu v 1b (klient chcel HA, takže to mu aj tak dávalo zmysel) a app vrstvu sme nasmerovali na lokálnu repliku v tej istej AZ pre čítania. Inter-AZ traffic spadol o 80 %. Úspora: 112 dolárov mesačne. Malé číslo, ale dobrá ilustrácia, kde sa podobné položky skrývajú inde.
Sumár
- Sweep 1 (zombie rezervácie): −1 200 dolárov mesačne
- Sweep 2 (staging NAT gateway-e): −570 dolárov mesačne
- Sweep 3 (S3 lifecycle): −850 dolárov mesačne (po troch mesiacoch)
- Sweep 4 (inter-AZ tuning): −112 dolárov mesačne
- Tri popoludnia práce. Klient platil ~18 000 dolárov mesačne predtým, ~12 400 po. Redukcia o 31 %.
AWS faktúru väčšina firiem nečíta. Číta ju AWS — a vie veľmi dobre, kde si zabudol zhasnúť svetlo.
Nie je tu žiadna mágia. Žiaden re-architecture, žiaden nový Savings Plan, žiadne kompromisy v dostupnosti. Iba ľudia, ktorí vedia, kde sa pozrieť. Pravidelný cost review robíme každý kvartál v rámci našej cloud služby — a keď klient platí AWS viac ako 5 000 eur mesačne, prvé review robíme na náš účet. Ak chce zistiť, čo by sa našlo aj u neho, napíše nám.