GitHub, 17 Ağustos 2026 tarihinde 7 saat 47 dakika süren küresel bir kesinti yaşadı. GitHub Central US veri merkezindeki bir Istio sidecar pod‘unun eşzamanlı işlem sınırına ulaşması, ardından hatalı otomatik ölçeklendirme politikası nedeniyle tüm sistem çöktü. Kesinti sırasında Issues, Pull Request’ler, API, Actions ve Copilot dahil tüm temel hizmetler kullanılamaz hale geldi.
Ne Oldu? Tam Teknik Detay
GitHub’ın Central US veri merkezinde çalışan bir Istio sidecar pod, eşzamanlı işlem sınırına (concurrency limit) ulaştı. Bu durum normalde otomatik ölçeklendirme mekanizmasıyla çözülmeliydi; ancak ölçeklendirme politikasında kritik bir yapılandırma hatası vardı: sistem yalnızca host service’in kapasitesini izliyordu, sidecar’ın kendi sınırlarını değil.
Sonuç olarak sidecar pod hızla düştü ve arıza aşağı yönde yayıldı. Sonunda 4 HAProxy node‘un flow limit tükendi ve GitHub’ın gateway kimlik doğrulama yolu tamamen devre dışı kaldı. Birçok hizmet kimlik doğrulama zaman aşımına uğramaya başladı.
Retry Mekanizması Sorunu: Güvenilirlik Özelliği Kendine Döndü
Asıl ironik olan kısım: sistemde güvenilirliği artırmak için kullanılan retry (yeniden deneme) mekanizması, bu kez sisteme karşı çalıştı. Başarısız istekler sürekli yeniden denendi ve dahili yük dengeleyici daha da zorlandı. Bu, arızanın yayılmasını hızlandırdı.
GitHub mühendisleri sonunda şu çözümü buldu: hatalı HAProxy’yi tamamen durdurmak. Bu basit hamle, sistemin anında büyük ölçüde iyileşmesini sağladı.
Kesinti Sırasında Etki Oranları
- Web sayfası ve API hata oranı: Pik saatte yüzde 20
- Depo arşivleri ve raw dosya indirme hata oranı: Yüzde 50’ye ulaştı
- Etkilenen hizmetler: Issues, Pull Requests, API, Actions, Copilot
Bundan Ne Öğrenmeli?
Bu kesinti, mikroservis mimarilerinde sidecar proxy’lerin izlenmesinin ne kadar kritik olduğunu bir kez daha gösterdi. Otomatik ölçeklendirme politikaları yalnızca ana servisin değil, tüm bağımlı bileşenlerin sınırlarını da dikkate almalı. Ayrıca retry mekanizmaları aşırı yük altında bir silah olarak geri dönebilir; bu risklerin simülasyonlarla önceden test edilmesi gerekiyor.
GitHub’ın bu kesintiden tam olarak nasıl ders çıkardığı ve gelecekte benzer durumları önlemek için hangi altyapı değişikliklerini yapacağı merak konusu.
Henüz yorum yok. İlk yorumu siz yapın!