GitHub, resmi blogu aracılığıyla 21. "kapat" olayının bir analizini yayınladı.
GitHub, bu olayın sebebinin 21 Ekim saat 22:52 UTC'de günlük bakım olduğuna dikkat çekti - hatalı 100G optik ekipmanın değiştirilmesi ABD Doğu Kıyısı Ağ Merkezi ile ABD Doğu Kıyısı Veri Merkezi arasındaki bağlantının kesilmesine neden oldu.
Daha spesifik olarak GitHub, iki yer arasındaki bağlantının 43 saniye içinde yeniden kurulmasına rağmen, bu kısa kesintinin bir dizi olayı tetiklediğini ve bunun da 24 saatlik 11 dakikalık bir hizmet bozulmasına yol açtığını analiz etti.
Performansı büyük ölçekte artırmak için GitHub'ın uygulaması doğrudan her kümenin ilgili ana veritabanına yazacak, ancak çoğu durumda okuma isteklerini bir kopya sunucuları alt kümesine devredecektir. GitHub, MySQL küme topolojisini yönetmek ve otomatik yük devretmeyi yönetmek için Orchestrator'ı kullanır Orkestratör bu süreçte birçok değişkeni dikkate alır ve Raft fikir birliği mekanizması üzerinde bir fikir birliğine varır. Orkestratör, uygulamaların destekleyemediği topolojileri uygulayabilir, bu nedenle Orkestratör yapılandırmasını uygulama düzeyi beklentilerle uyumlu hale getirmeye özen gösterilmelidir.
Ancak söz konusu ağ bölümünün 21. gününde Orkestratör ana veri merkezinde aktif olmuş ve Raft'ın fikir birliği mekanizmasına göre liderlik seçimini iptal etme sürecini başlatmıştır. ABD Batı Kıyısı Veri Merkezi ve ABD Doğu Kıyısı Genel Bulut Orkestratörü düğümleri, uyumlu bir numara oluşturabilmiş ve yazma işlemlerini ABD Batı Kıyısı veri merkezine yönlendirmek için kümenin yük devretmesini başlatabilmiştir. Orkestratör, ABD Batı Kıyısı veritabanı küme topolojisini düzenlemeye devam etti ve bağlantı yeniden kurulduğunda, uygulama katmanı, trafiği hemen yeni seçilen Batı Yakası sitesine yönlendirmeye başladı.
ABD Doğu Kıyısı Veri Merkezindeki veritabanı sunucusu kısa bir yazma süresi içeriyordu, ancak henüz ABD Batı Kıyısındaki tesislere kopyalanmadı. Her iki veri merkezindeki veritabanı kümeleri diğer veri merkezlerinde bulunmayan yazmalar içerdiğinden, birincil veritabanını ABD Doğu Kıyısı veri merkezine güvenli bir şekilde devretmek imkansızdır.
Sorunu bulduktan sonra GitHub mühendisleri bir dizi kurtarma önlemi gerçekleştirdi: " Hiçbir kullanıcı verisi kaybolmaz, Ancak, birkaç saniyelik veritabanı yazma işlemlerinin manuel koordinasyonu halen devam etmektedir. "
GitHub, etkilenen tüm kullanıcılardan özür diledi ve "Dersimizi aldık ve bir dizi ilk yardım önlemi aldık. Benzer durumların bir daha yaşanmamasını daha iyi sağlamayı umuyoruz." Dedi.
Aynı zamanda GitHub, ortaya çıkan veri tutarsızlığını daha da çözeceğini belirtti.
Ayrıntılı analiz ve etkinlik zaman çizelgesi için lütfen tıklayın " daha fazlasını anla "GitHub duyurusuna göz atın.