Korur

Sizi çökerten arızaları yakalayın — üretim çökertmeden önce

Sistemlerinizi kontrollü bir şekilde kasıtlı olarak bozarak, sabah 2'deki bir kesinti sırasında ortaya çıkmadan önce bir düzine gizli arıza modunu açığa çıkarırız.

Kurtarma Planınız Hiç Test Edilmedi
Yalnızca kağıt üzerinde var olan dayanıklılık, dayanıklılık değildir. Tek bir arıza noktasını ilk fark ettiğiniz an, gerçek bir kesinti sırasında sabah saat 3'te olmamalıdır.
?

Test edilmemiş varsayımlar yük altında başarısız olur

Yük devretme, yeniden denemeler ve yedeklemelerin tümü 'çalışmalı', ta ki sessizce çalışmadıkları güne kadar.

MTTR

MTTR bir sayı değil tahmindir

Pratik yapmazsanız, mümkün olan en kötü günde ne olursa olsun, iyileşme süreniz o kadardır.

Gizli bağımlılıklar art arda

Gözden kaçan bir bağımlılık, küçük bir başarısızlığı kimsenin öngörmediği tam bir kesintiye dönüştürebilir.

Olaylar felaketten öğrenmeye dönüşür

Ekipler, kontrollü deneyler yerine, müşterinin karşılaştığı gerçek kesintiler sırasında zayıf noktalarını keşfeder.

İşe yaradığını ummak mı, işe yaradığını kanıtlamak mı?
Varsayılan dayanıklılık ile gösterilen dayanıklılık arasındaki fark.

Test edilmemiş dayanıklılık

  • Yük devretme belgelendi ancak hiçbir zaman uygulanmadı
  • Gerçek bir olaya kadar bilinmeyen MTTR
  • Tek başarısızlık noktaları çok geç keşfedildi
  • On-call kesintiler sırasında sistemi öğrenir
  • Otopsiler aynı sürprizleri tekrarlıyor

Korur kaos mühendisliği

  • Kontrollü testlerde tetiklenen ve kanıtlanmış hata modları
  • MTTR ölçüldü, takip edildi ve geliştirildi
  • Tek hata noktaları proaktif olarak bulundu ve düzeltildi
  • Çağrı sırasında gerçek senaryoların güvenli bir şekilde provasını yapar
  • Her deney sistemi ölçülebilir şekilde güçlendiriyor
Korur Yaklaşımı
Kaos yaratmak yerine güven inşa eden bilimsel, kontrollü deneyler.
1

Kararlı durumu haritala

Bir deney onu bozduğunda tespit edebilmemiz için sisteminizin sağlıklı olduğunu kanıtlayan metrikleri tanımlarız.

Kurmak
2

Hipotez kur

Her deney, biz enjekte etmeden önce sistemin belirli bir arızaya nasıl dayanması gerektiğini öngörür.

3

Kontrollü arıza enjekte et

Gecikme, düğüm kaybı ve bağımlılık kesintilerini dar bir etki yarıçapı ve bir acil durdurma içinde simüle ederiz.

Deneme başına
4

Etkiyi ölç

Sistemin gerçekte nasıl davrandığını gözlemler ve hipotezin kaçırdığı her arıza modunu açığa çıkarırız.

5

Sertleştir ve tekrarla

Bulgular düzeltmelere ve otomatik regresyon testlerine dönüşür; böylece aynı zayıflık asla geri gelmez.

devam ediyor
Gerçekleştirdiğimiz Deneyler
Gerçek mimarinize eşlenen arıza senaryolarından oluşan bir kitaplık.

Örnek ve düğüm sonlandırma

Otomatik iyileştirme ve yük devretmenin gerçekten işe yaradığını kanıtlamak için talep üzerine bilgi işlemi sonlandırın.

Ağ gecikmesi ve bölümleme

Hassas zaman aşımlarını ortaya çıkarmak ve fırtınaları yeniden denemek için gecikmeler ve bölünmeler ekleyin.

Bağımlılık kesintileri

Hassas bozulmayı test etmek için veritabanlarını, kuyrukları ve üçüncü taraf API'lerini kaldırın.

Kaynak tükenmesi

Sınırları ve karşı basıncı doğrulamak için CPU'yu, belleği ve diski aç bırakın.

Bölge ve bölge hatası

Çoklu bölge kurtarmayı doğrulamak için kullanılabilirlik bölgesini kaybetme simülasyonu yapın.

Trafik dalgalanmaları

Basınç altında ölçeklendirmeyi ve hız sınırlayıcı tutmayı doğrulamak için yük artışlarını tahrik edin.

Dayanıklılık için Neleri Test Ediyoruz?
Kesintilerin gerçekte kaynaklandığı katmanlar boyunca kapsama alanı.

Bilgi işlem ve konteyner orkestrasyonu

Veritabanları ve veri depoları

Mesaj kuyrukları ve olay akışları

Üçüncü taraf API bağımlılıkları

Yük dengeleyiciler ve ağ iletişimi

Otomatik ölçeklendirme ve yük devretme mantığı

Yedekleme ve geri yükleme prosedürleri

Gözlemlenebilirlik ve uyarı yolları

Çağrı üzerine ve olay runbook'ları

Dayanıklılık, Ölçülen
Kaos mühendisliği programından sonra takımlar ne kazanır?
%40+
Tipik MTTR azalması
0
Tek başarısızlık noktalarını şaşırtın
%100
Kurtarma yolları kanıtlanmış, varsayılmamış
7/24
Yük devretme konusunda güven
Bir Program Nasıl Ortaya Çıkıyor?
Küçük ve güvenli bir şekilde başlıyoruz, ardından uygulamayı ölçeklendiriyoruz.
  1. 1

    Değerlendirme ve temel

    1-2. Hafta

    Mimarinin haritasını çıkarın, kararlı durumu tanımlayın ve aday deneyleri belirleyin.

  2. 2

    İlk kontrollü deneyler

    3-4. Hafta

    Düşük patlama yarıçaplı deneyleri önce hazırlık aşamasında, ardından üretim aşamasında dikkatli bir şekilde gerçekleştirin.

  3. 3

    Sertleştirin ve otomatikleştirin

    2. ay

    Sorunları düzeltin ve ardışık düzeninizde yinelenen deneyleri otomatikleştirin.

  4. 4

    Sürekli pratik

    devam ediyor

    Kaos, ekibinizin sahip olduğu rutin, planlanmış bir disiplin haline gelir.

Ne Kazanırsınız
Dayanıklılığı sadece söz vermekle kalmayıp kanıtlayabilirsiniz.

Daha hızlı iyileşme

Ekibiniz gerçek başarısızlıkların provasını yaptığı için MTTR'yi düşürün.

Daha az sürpriz

Testlerde kesintiler değil, tek arıza noktaları bulunur.

Çağrı sırasında kendinden emin

Mühendisler sisteme güveniyor çünkü iyileşmesini izlediler.

Tasarım gereği dayanıklı

Sertleşme tek seferlik bir proje değil, sürekli bir alışkanlık haline gelir.

Mühendislik Ekipleri Ne Diyor?
Takımlar umut etmeyi bırakıp kanıtlamaya başladı.
Yük devretmemizin işe yaradığını düşündük. İlk deney, düzeltmenin ucuz olduğu sahnelemede öyle olmadığını kanıtladı.
Mühendislik Lideri
SaaS platformu
Çağrı üzerine ekip senaryoları fiilen uyguladığında MTTR'miz neredeyse yarı yarıya düştü.
SRE Müdürü
E-ticaret
Kaos günleri kaygıyı güvene dönüştürdü. Kurtarma yollarımıza güvendiğimiz için artık daha hızlı gönderim yapıyoruz.
CTO
Teknolojiyi büyütme
Sıkça Sorulan Sorular
Kaos mühendisliğini benimsemeden önce mühendislik ekiplerinin sorduğu sorular.

Vaka Çalışması
Northwave Cloud logo
Cloud / SaaS
Dosya KOR-2024-C002

Zorluk

Northwave's SaaS platform had grown fast and passed every functional test, but nobody knew how it behaved under real failure. Load testing showed healthy averages, yet the team had a nagging suspicion that the green dashboards were hiding fragile dependencies.

Çözümümüz

Korur designed a series of controlled chaos experiments against a production-like environment: killing instances, injecting network latency, throttling the database connection pool and severing third-party dependencies one at a time. Each experiment had a clear hypothesis and a defined blast radius so nothing ran uncontrolled.

12
Failure modes identified
12 of 12
Fixed before production
0
Launch-day incidents
3x
Sustained traffic increase absorbed

Arızalarınızı üretim ortamından önce öğrenin

Her sistem bir yerde bozulur. Kontrollü kaos içinde kırılma noktalarınızı güvenle buluruz. Ekibiniz öğrenir. Güveniniz tavan yapar. Müşterileriniz kesinti görmez.