Bulut faturası beklenenden çok yüksek geldi. Maliyeti nasıl analiz eder ve düşürürsünüz?

Cevap

Önce maliyetin nereden geldiğini ölçerim, sonra en büyük kalemlerden başlayarak optimize ederim. Tahminle optimizasyon yapmak yanlış yere efor harcatır.

1. Analiz

  • Cost Explorer (AWS), Billing reports (GCP) veya platform panelinde servis ve kaynak bazında kırılım.
  • Kaynaklara env, team, service gibi tag'ler verilmemişse ilk iş budur; kimin neyi harcadığı görünür olmalı.
  • Ani artışın zamanını bir deploy veya trafik değişikliğiyle eşleştirin.

2. Sık görülen maliyet kaynakları

  • Veri transferi (egress): CDN kullanmadan büyük dosya sunmak, bölgeler arası trafik, NAT Gateway üzerinden geçen trafik.
  • Unutulan kaynaklar: kapatılmamış staging ortamları, eski snapshot'lar, sahipsiz disk ve IP'ler, eski preview ortamları.
  • Aşırı büyük instance'lar: %10 CPU kullanan büyük makineler.
  • Log hacmi: debug seviyesinde tutulan ve uzun süre saklanan loglar.
  • Serverless döngüleri: kendi kendini tetikleyen fonksiyonlar, sonsuz retry.
  • Yönetilen DB: ihtiyaçtan büyük instance, gereksiz read replica.

3. Aksiyonlar

  1. Statik dosyaları ve görselleri CDN'den sunun, cache hit oranını artırın.
  2. Instance'ları gerçek kullanıma göre küçültün (right-sizing); sürekli yükte reserved instance / savings plan alın.
  3. Staging ve preview ortamlarını mesai dışında kapatın, PR kapanınca silin.
  4. Log seviyesini düşürün, saklama süresini kısaltın, S3 lifecycle kuralları ile eski verileri ucuz sınıflara taşıyın.
  5. Kesintiye toleranslı işler için spot instance kullanın.
  6. Bütçe alarmı kurun ki bir sonraki sürpriz ay sonunda değil, gününde fark edilsin.
  1. Edge function ve edge rendering nedir? Kodu ne zaman edge'de, ne zaman tek bir bölgede (region) çalıştırırsınız?OrtaBulut & DeployFull Stack
  2. Production'daki bir full stack uygulamayı nasıl izlersiniz? Log, metrik, trace ve alarm stratejiniz nedir?OrtaBulut & DeployFull Stack
  3. Veritabanı şema değişikliklerini (migration) kesintisiz (zero-downtime) nasıl deploy edersiniz? Expand-contract nedir?ZorBulut & DeployFull Stack
  4. Blue-green deployment ile canary deployment arasındaki fark nedir? Rollback nasıl yapılır?OrtaBulut & DeployFull Stack
  5. Serverless (ör. AWS Lambda, Vercel Functions) ile container tabanlı deploy (Cloud Run, ECS, Kubernetes) arasında nasıl seçim yaparsınız?OrtaBulut & DeployFull Stack
  6. Uygulamanıza özel bir alan adı bağlayıp HTTPS'i nasıl kurarsınız? A, CNAME kayıtları ve TTL ne işe yarar?KolayBulut & DeployFull Stack

Bu konuda başka bir soru biliyor musun?

Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.

Soru ekle