Karpenter 4 dakikada 22 × m6i.8xlarge başlattı
PR #1832 · matchmaking · game-services · rol karpenter-prod
AWS ve Kubernetes için gerçek zamanlı maliyet kontrolü
CloudTrail, CloudWatch ve Kubernetes sinyallerini Cloudblame adı konmuş bulgulara çevirir: maliyet sıçramasının arkasındaki deploy, alarm kuralı ya da servis hesabı, geri alınabilir bir fren ve kendi faturanızda doğrulanan tasarruf.
Dakikalar içinde bağlanır. Kendi external ID'nizle salt okunur rol, kurulacak bir şey yok.
AKIŞ · BELGELENMİŞ EKS VE ATHENA VAKALARINDAN
Kaynaklar · 14 kaynaktan okur. Hiçbirine yazmaz.
CLOUD COST ENGINEERING PLATFORMU
Cloudblame kullanım sinyallerinizi oluştukları anda okur, sıçramanın arkasındaki değişikliğe ad verir, geri alınabilir bir fren sunar ve sonucu kendi faturanızda doğrular. Tek bir bulgu kimliği dört adımı da taşır.
TASARIMI GEREĞİ SALT OKUNUR
Policy’nin kendisi ve CloudFormation şablonu herkese açık: policy.json · readonly-role.yaml
SORUN
Birleştirilen bir pull request, bir alarm kuralı ya da bir servis hesabı AWS faturanızı dakikalar içinde oynatabilir. Cost Explorer ve anomali uyarıları bunu bir gün sonra servis, hesap ve kullanım türü olarak bildirir; değişikliği bulmak ekibe kalır.
Cloudblame, kullanım sinyalleri ile doğrulanmış düzeltme arasındaki döngüyü kapatır.
ELLE MÜDAHALE GEREKLİ. FRENLEMEK İÇİN POD'LARA TIKLAYIN.
KORELATÖR
Faturadaki bir satırdan pull request’e ve arkasındaki ekibe altı halka. AWS Cost Anomaly Detection hesapta ve IAM principal’da durur; Cloudblame zinciri bir isim bulana kadar yürümeye devam eder.
AWS size node’ları hangi rolün başlattığını söyler. Cloudblame NodeClaim’den bekleyen pod’lara, Argo CD revizyonuna ve 14:02’de merge edilen pull request’e kadar iner.
Tasarruf, Cost and Usage Report’unuz üzerinde bulgu anında dondurulan birim fiyatla ölçülür. Sonraki fiyat değişiklikleri ve indirimler rakamı oynatmaz.
Her fren kendi hesabınızda çalıştırdığınız ve geri alabileceğiniz bir değişikliktir: PR’ı geri al, node pool’u sınırla, alarm aralığını genişlet.
VAKA DOSYASI
Bir pull request 40 replikada CPU request’ini 1’den 8 vCPU’ya çıkardı; Karpenter dört dakikada 22 node ekledi. AWS ertesi gün “EC2 kullanımı arttı” dedi. Cloudblame 14:09’da PR’ı, ekibi ve tek satırlık düzeltmeyi adıyla söyledi.
EKS · MATCHMAKING · PR #1832 · $24.300/AY DOĞRULANDI
Kırmızı: Cloudblame. Gri: AWS, ertesi gün. Yeşil: Cost and Usage Report’unuzda doğrulandı.
game-services/matchmaking için 4 dakikada 22 × m6i.8xlarge açıldı
NASIL ÇALIŞIR
Tek bir CloudFormation stack'i: tek bir salt okunur rol, sizin external ID'niz. Yaklaşık on dakika, cluster'ınıza hiçbir şey kurulmaz.
~10 dk · salt okunurÜcretsiz tek sayfalık yanıt: AWS'nin zaten açıkladıkları, açıklayamadıkları ve bir saat daha harcamadan net bir devam ya da vazgeç kararı.
ücretsiz · tek sayfaAdı konmuş bulgular, uygulamaya hazır düzeltmeler ve geri alınabilir bir fren. Her değişikliği siz onaylarsınız; sizsiz hiçbir şey çalışmaz.
her değişiklik onayınızlaFark, dondurulmuş bir baz çizgisine karşı kendi Cost and Usage Report'unuzda ölçülür. Yalnız o rakam üzerinden ödersiniz.
kendi CUR'unuzda ölçülür| Key | Value | Açıklama |
|---|---|---|
| RoleArn | arn:aws:iam::123456789012:role/CloudCostControlReadOnly | Taramanın 2. adımına yapıştırın |
| ExternalId | 7f3a19c4…e91b | Tarayıcınızda üretildi |
| PolicyActions | 55 | ce, cloudtrail, cloudwatch, athena, ec2, eks · salt okunur |
| CurQueries | false | Ölçüm eki için sonradan açın |
ENTEGRASYONLAR
Her sinyal zaten ödediğiniz servislerden gelir. Bulgular ekibinizin zaten baktığı yere düşer: bir Slack kartı ve sıçramaya yol açan pull request’in altına bir yorum.
OKUR · TEK SALT OKUNUR ROL, ~55 EYLEM
AWS · yayımlanmış rol
cloudtrail:LookupEvents cloudwatch:GetMetricData · logs:StartQuery ce:GetCostAndUsage · ce:GetAnomalies athena:StartQueryExecution · CUR bucket’ında s3:GetObject ec2:DescribeInstances · ec2:DescribeNatGateways eks:DescribeCluster · eks:ListNodegroups cost-optimization-hub:ListRecommendations AWS çevresi · salt okunur token’lar
pod, deployment, nodeclaim üzerinde get, list · view ClusterRole applications: get contents: read · pull requests: read alert rules: read · usage: read Analytics: Read · Cache Rules: Read Tam liste herkese açık: policy.json · readonly-role.yaml
GERİ YAZAR · İKİ YER, BAŞKA HİÇBİR ŞEY
game-services/matchmaking için 4 dakikada 22 × m6i.8xlarge açıldı
Bu PR, matchmaking CPU request’ini 40 replikada 1 → 8 vCPU’ya çıkardı. Karpenter 14:03’te node pool general’a 22 node (704 vCPU) ekledi; p95 kullanım pod başına 0,4 vCPU.
Önerilen düzeltme: request yeniden 1 vCPU, HPA %70 → PR #1840
SALT OKUNUR ROL · ~55 EYLEM, YAYIMLANMIŞ POLİTİKA · CLUSTER'A HİÇBİR ŞEY KURULMAZ
FİYAT
Net, düzeltmenin getirdiği yeni maliyetler (örneğin bir VPC endpoint) düşüldükten sonra demektir. Doğrulanmış, dondurulmuş bir baseline’a karşı Cost and Usage Report’unuzda ölçülmüş demektir. Tavsiye için fatura kesilmez.
Ölçüm ekini oku| Kalem | Ücret |
|---|---|
| Commitment’lar (RI / Savings Plan) | %0 |
| Aylık ilk $10k | %10 |
| Aylık $10–30k | %7 |
| Aylık $30–60k | %5 |
| Aylık $60k üstü | %4 |
| Bulgu başına | 12 ay, sonra $0 |
| Aylık $500 altı | faturalanmaz |
| Teşhis, platform, kurulum ücreti | yok |
Yıllık tasarrufun %20’sini alan bir danışmanlık aynı tasarruf için alırdı.
| Bulgu | Baseline | Gerçek | Net tasarruf | Ücret |
|---|---|---|---|---|
| #003 EKS matchmaking request 8 → 1 vCPU (PR #1832) Doğrulandı | 704 vCPU | 64 vCPU | $24.300 | |
| #005 NAT → S3 gateway endpoint (payments) Temsili | 2,1 TB/gün | 0,3 TB/gün | $4.860 | |
| #007 DynamoDB orders tablosu, provisioned → on-demand Temsili | 3.000 WCU | 640 WCU | $2.180 | |
| Bu örnekteki net tasarruf | $31.340 | |||
| Ücret · ilk $10k %10 + sonraki $20k %7 + $1.340 %5 | $2.467 | |||
PLAYBOOK'LAR
Her kart bir playbook: izlediğimiz sinyal, ne kadar hızlı tetiklendiği, AWS’in nerede durduğu ve bizim ne eklediğimiz. Aynı bulgu kimliği onu Slack kartından ay sonu ekstresine kadar izler.
AWS görürServis, usage type, principal
Biz eklerizAlert kuralını veya dashboard’u, sahibini, düzeltmeyi
AWS görürUsage type
Biz eklerizLog grubunu, seviyeyi yükselten deploy’u, kimin sorguladığını
AWS görürBoşta bir NAT
Biz eklerizPod’u ve eksik VPC endpoint’i
AWS görürListeyi (ücretsiz)
Biz eklerizKimin ne zaman açtığını ve kaldıran PR’ı
AWS görürNode düzeyi
Biz eklerizNamespace, workload, sahibi, değişecek request’leri
AWS görürPrincipal’ı
Biz eklerizRetry ayarını ve döngüyü
AWS görürData-plane çağrılarında hiçbir şey
Biz eklerizİstek atanı ve lifecycle kuralını
AWS görürBir gün sonra
Biz eklerizDakikalar içinde fiyatlanmış, frenli
AWS görürBedrock principal’ı
Biz eklerizDöngüyü, prompt büyümesini, model seçimini
AWS görürHiçbir şey
Biz eklerizByte’ları origin’e yollayan cache kuralını
AWS görürHiçbir şey
Biz eklerizKardinaliteyi ekleyen deploy’u
ÜCRETSİZ TARAMA · 10 DAKİKA · SALT OKUNUR