Ders 12.1: Son görev: gece 2'deki çağrı
Tek bir makinede eksiksiz bir olay; her bölümden araçlarla çözülüyor: uyarıları okumak, kontrolden çıkmış süreci bulup durdurmak, başarısız bir hizmetin durumunu ve günlüğünü okumak, diski neyin doldurduğunu bulmak ve kaldırmak, yapılandırmayı sed ile düzeltmek, hizmeti yeniden başlatıp doğrulamak, erişim günlüğündeki sunucu hatalarını bir düzenli ifadeyle ölçmek, bir sağlık denetimi betiği çalıştırıp cron ile zamanlamak ve olay notunu yazmak.
25 dk
Bu derste öğreneceklerin
- Bir olayı sakin bir sırayla çözmek: bak, nedeni bul, düzelt, doğrula, önle
- ps, kill, systemctl, journalctl, du, find, sed, grep, betikleri ve cron'u birleştirmek
- Her düzeltmeyi işe yaradığını varsaymak yerine doğrulamak
- Geride otomatik bir denetim ve yazılı bir not bırakmak
Temel terimler
- Olay (incident)
- Bir hizmetin plansız kesintisi ya da bozulması: mağaza kapalı, disk dolu, girişler başarısız.
- Nöbetçi (on-call)
- Belirli bir süre boyunca, gece de dahil, uyarılara müdahale etmekle sorumlu kişi.
- Belirti ve kök neden (root cause)
- Belirti fark ettiğin şeydir (connection refused); kök neden bunun neden olduğudur (açık bırakılmış hata ayıklama günlüğü). Yalnızca belirtileri düzeltmek, sorunun geri gelmesi demektir.
- Sağlık denetimi (health check)
- Düzenli çalışan ve bir hizmetin çalışıp çalışmadığını söyleyen küçük, otomatik bir test: çalışıyor mu, ulaşılabiliyor mu, disk yeterli mi.
- Olay sonrası not (post-mortem)
- Kısa, yazılı bir anlatım: zaman çizelgesi, neden, düzeltme ve bir dahaki sefere neyin önleyeceği. Suçlamasız: kişiyle değil sistemle ilgilidir.
← İşlevler ve gerçek bir yedekleme betiği · Tüm dersler · Kapanış: artık neler yapabiliyorsun, sırada ne var →