Detailed view of a black data storage unit highlighting modern technology and data management.

“Bulut maliyetlerimiz kontrol dışına çıktı, %40 düşürmek mümkün mü?” sorusu son 2 yılda en çok aldığımız brief. Cevabı genellikle evet, ama sihirli bir tek tuş yok. FinOps disiplini ile sürekli optimize edilirse %30-50 tasarruf gerçekçi. Bu yazıda 7 ana disiplin altında uyguladığımız teknikleri, gerçek müşteri tasarruf rakamlarıyla anlatıyorum.

Önce Görünürlük: Showback ve Tagging

Optimize edemezsin görmediğini. İlk adım her zaman: Hangi resource hangi takım/ürün/proje için harcanıyor?

Müşterilerimize empoze ettiğimiz minimum tag seti:

  • CostCenter: Maliyet merkezi (örn: “MKT-001”, “IT-OPS”)
  • Owner: Sorumlu kişi/takım email
  • Environment: dev, test, staging, prod
  • Project: İş yükü adı (örn: “ecommerce-frontend”)
  • DataClass: public, internal, confidential, restricted
  • ExpiresOn: Geçici resource için bitiş tarihi (boş ise “kalıcı”)

Bu tag’lerin zorunlu olması Azure Policy ile (deny if missing). Aylık rapor (Power BI) cost center bazında, owner bazında, project bazında dağılımı gösteriyor. Showback raporu her ay departmanlara gidiyor: “Geçen ay sizin kullanımınız 45.300 TL idi, yıllık projeksiyon 540.000 TL.”

Bu görünürlük tek başına davranış değişikliğine yol açıyor. Bir holding müşterimizde showback ilk ay rapor edildikten sonra 3. ayda doğal toplam %18 düştü (kimse şişirdiği test ortamı için fatura kabul etmek istemedi).

Disiplin 1: Rightsizing (Doğru Boyutlandırma)

En sık karşılaştığım israf: 8 vCPU / 32 GB VM, ortalama %4 CPU + %18 RAM kullanıyor. Yani %75 idle. Yıllık binlerce dolar boşa.

Müşterilerimizde uyguladığımız rightsizing süreci:

  1. Son 30 gün metrikleri topla (Azure Monitor, Datadog veya CloudSpark monitoring).
  2. P95 CPU ve P95 memory hesapla (peak değil, %95’lik dilim).
  3. P95 + %20 buffer ile yeni VM size hesapla.
  4. Bakım penceresi içinde resize.

Bursa otomotiv müşterimizde 180 VM rightsizing analizi:

Mevcut Adet Önerilen Aylık tasarruf
16 vCPU / 64 GB 22 4 vCPU / 16 GB $3.520
8 vCPU / 32 GB 45 2 vCPU / 8 GB $3.150
8 vCPU / 32 GB 18 4 vCPU / 16 GB $540
4 vCPU / 16 GB 30 2 vCPU / 8 GB $1.050

Toplam aylık tasarruf $8.260. Yıllık ~$99.000. Tek seferlik analiz + bakım penceresi efforu ~~3 gün danışman.

Disiplin 2: Auto-Shutdown (Off-Hours Kapatma)

Dev/test/staging ortamları çoğu zaman 7/24 çalışmak zorunda değil. Çalışma saatleri dışı kapatınca aylık fatura ~~%65 azalıyor (haftada 5 gün × 10 saat = 50 saat / 168 saat = %30 uptime).

Otomasyon: Azure Logic App veya CloudSpark scheduler ile cron benzeri bir job. Hafta içi 19:00 stop, sabah 07:30 start. Hafta sonu kapalı.

# CloudSpark CLI üzerinden scheduled stop
cspk vm schedule create 
  --name auto-shutdown-dev 
  --filter "Environment=dev" 
  --action stop 
  --cron "0 19 * * 1-5"

cspk vm schedule create 
  --name auto-startup-dev 
  --filter "Environment=dev" 
  --action start 
  --cron "30 7 * * 1-5"

Bu tek tekniğe örnek bir e-ticaret müşterisinde aylık $4.200 tasarruf yarattı (78 dev/test VM).

Disiplin 3: Reserved Instances ve Savings Plans

Production VM’leri “tahmin edilebilir” baseline’a sahipse Reserved Instance (1 veya 3 yıl) ile %30-65 indirim alabilirsin.

Süre Ödeme modeli İndirim
1 yıl Aylık %17-25
1 yıl Pegan ödeme %30-35
3 yıl Aylık %40-45
3 yıl Pegan ödeme %55-65

Strateji: Production VM’lerin tahmin edilebilir %70’i için 3 yıl Reserved, kalan %30 on-demand. Bu kombinasyon ile genelde net %35-45 fatura indirimi.

CloudSpark’ta benzer “Committed Use Discount” mekanizması mevcut. Yıllık taahhüt karşılığında listfiyatı %25 indirim.

Disiplin 4: Idle Resource Cleanup

Aylık fatura içinde küçük ama biriken kalemler:

  • Unattached managed disks: VM silinmiş ama disk kalmış. 100 disk × $5/ay = $500.
  • Unused public IP: Allocated ama hiçbir resource’a bağlı değil. $4/ay × 30 = $120.
  • Old snapshots: 3 yıl önceki VM snapshot, 200 GB. Aylık $20.
  • Empty resource groups: Resource yok ama log analytics workspace, app insights tutuluyor.
  • Stale load balancers: Backend pool boş.

Her ay otomatik script ile bu “orphan” resource’ları tespit ediyoruz, owner’a notification, 14 gün içinde aksiyon yoksa sil. Bursa müşterimizde ilk temizlikten $1.800/ay tasarruf çıktı.

Disiplin 5: Storage Tier Yönetimi

Object storage (S3) fiyatları tier’a göre 4-5x değişiyor:

Tier Aylık $/GB Erişim modeli
Hot (sıcak) $0.018 Sürekli erişim
Cool $0.010 30 gün+ erişim sıklığı
Cold $0.006 90 gün+ erişim sıklığı
Archive $0.002 Yıllık erişim, retrieval ücretli

Lifecycle policy ile otomatik tier değişimi:

{
  "Rules": [{
    "ID": "logs-tiering",
    "Status": "Enabled",
    "Filter": {"Prefix": "logs/"},
    "Transitions": [
      {"Days": 30, "StorageClass": "COOL"},
      {"Days": 90, "StorageClass": "COLD"},
      {"Days": 365, "StorageClass": "ARCHIVE"}
    ],
    "Expiration": {"Days": 2555}
  }]
}

Bir SaaS müşterimizde 18 TB log archive vardı, hot tier’da. Lifecycle policy ile %85 cold tier’a indi, aylık $250 → $90.

Disiplin 6: Network Egress Optimizasyonu

Hyperscaler’larda data transfer out (egress) en pahalı kalemlerden biri ($0.05-0.12/GB). Optimize teknikleri:

  • CDN: Static asset’leri CDN’den serve et, origin’den çıkış %90 azalır.
  • Same region: Sub-resources arası trafiği aynı region’da tut, cross-region trafik ücretli.
  • Compression: HTTP response gzip/brotli ile sıkıştır.
  • Cache headers: Browser cache TTL doğru ayarla, repeat trafik azalsın.
  • Direct connect: Yüksek volume on-prem ↔ cloud trafik için ExpressRoute / dedicated link.

CloudSpark’ta egress fiyatı çok daha düşük (0.005-0.01 USD/GB), bu kalem hyperscaler kadar agresif değil.

Disiplin 7: Spot/Preemptible Instance

Batch job, CI/CD runner, ML training gibi tolere edebilen iş yükleri için spot instance:

  • Azure Spot VM: %50-90 indirim, 30 saniye eviction notice ile durabiliyor.
  • AWS EC2 Spot: %70-90 indirim, 2 dakika notice.
  • CloudSpark: Reservation pool dışında düşük öncelikli kapasite, %40 indirim.

Bir analytics müşterimizde Spark batch job’ları %85 spot, %15 on-demand. Aylık compute fatura $14.000 → $4.800.

Sahada Düşülen Üç Tuzak

  1. Tek seferlik optimizasyon: %40 düşürdün, mutlu oldun. 6 ay sonra fatura geri çıkmış. FinOps sürekli operasyon, aylık review şart.
  2. Aşırı sıkı tasarruf production’ı vuruyor: Reserved instance ile commit ettiğin kapasite aşılırsa on-demand fiyatına dönüyorsun, planlama önemli.
  3. Otomasyon olmadan manuel müdahale: 200 VM’i her ay elle inceleyemezsin. Cost anomaly detection (Azure Cost Management, Kubecost, Apptio) ile alert kurulmalı.

Sonuç: %40 Tasarruf Tek Tuş Değil, Sürekli Operasyon

Bulut maliyet optimizasyonu bir proje değil, bir kültür. CFO ile CTO’nun aynı dile sahip olması, FinOps rolünün net tanımlanması, tagging disiplininin tüm ekiplere yayılması — bunlar olduğunda %40 tasarruf doğal sonuç. Olmadığında en pahalı optimizasyon araçları bile fark yaratmıyor.

CloudSpark olarak FinOps assessment, cost anomaly tespiti, rightsizing analizleri, Reserved/Savings Plan optimizasyonu, tagging ve showback dashboard kurulumu hizmetleri sunuyoruz. Mevcut bulut faturanız için ücretsiz tasarruf potansiyeli analizi yapıyoruz.

🇹🇷 Türkçe🇬🇧 English🇩🇪 Deutsch🇫🇷 Français🇸🇦 العربية🇷🇺 Русский🇪🇸 Español