Osegi
Yazılım·1 dk okuma

kmorph: Linux çekirdek çökmesinden saniyeler içinde kurtarma

Multikernel ekibi, çökme veya güncelleme sonrası Linux çekirdeğini yedek çekirdekle değiştirip sunucuyu yaklaşık iki saniyede ayağa kaldıran açık kaynaklı kmorph'u duyurdu.

Server rack with a terminal showing a Linux kernel switching to a standby kernel after a crash.
Görsel: Хабр

Multikernel projesinin geliştiricileri, Linux çekirdeği çöktüğünde sistemi hızla toparlayan açık kaynaklı kmorph'u tanıttı. Araç, çekirdeği tam yeniden başlatma yapmadan canlı olarak değiştirmek için de kullanılabiliyor. Geliştiricilerin testlerinde nginx çalıştıran bir sunucu, çekirdek çökmesinden yaklaşık iki saniye sonra yeniden hizmet vermeye başladı.

Projeyi, Linux çekirdeğindeki trafik kontrolü alt sisteminin (TC, Traffic Control) bakımcısı Cong Wang geliştiriyor.

Yedek çekirdek nasıl devreye giriyor

Bugün Linux çekirdeği çöktüğünde bilgisayar ya da sunucuyu tamamen yeniden başlatmak, donanımın ilklendirilmesi, sistem ortamının yüklenmesi ve kdump ile bellek dökümünün kaydedilmesi nedeniyle birkaç dakikayı bulabiliyor. kdump aslında iki çekirdek açılışı demek: önce kexec ile dökümü kaydedecek ayrı bir çekirdek yükleniyor, ardından çalışma çekirdeği ve sistem servisleri başlatılıyor.

kmorph'ta ise yedek Linux çekirdeği ve asgari sistem ortamı önceden belleğe yüklenir, ayrı bir işlemci çekirdeğine bağlanır ve ana çekirdeğin durumunu izler. Ana çekirdek kilitlenir ya da panic durumuna düşerse yedek ortam kontrolü devralır, çöken çekirdeğin bellek dökümünü kaydeder; işlemci çekirdeklerini, belleği, aygıtları, ağ yapılandırmasını ve dosya sistemini üzerine alır.

İşi iki program koordine ediyor: etkin ortamda çalışan kmorph, yedek ortamın içeriğini hazırlıyor ve ağ durumunu eşitliyor; yedek ortamda çalışan kmorphd ise etkin ortamı izliyor. Bekleme sırasında nginx gibi yaygın servisler de yedekte çalıştırılabiliyor; geçiş anında nginx zaten bellekte olduğundan ağ kartı devredilip yapılandırma etkinleştirilir etkinleştirilmez istekleri karşılıyor.

Güncelleme ve destek

Yaklaşım, geleneksel yeniden başlatma olmadan çekirdek güncellemesi için de geçerli. Linux çekirdeğinde Kexec HandOver (KHO) ve Live Update Orchestrator (LUO) mekanizmaları zaten var; ancak bunlar çalışan çekirdeğin durumunu gerektirdiğinden çökme durumunda kullanılamıyor. Yeni çekirdek kexec ile yüklenmek zorunda olduğu için geçişte kmorph'tan daha yavaşlar.

kmorph şu an x86_64 ve ARM64 mimarilerini destekliyor, RISC-V desteği üzerinde çalışılıyor. Dağıtımlara entegrasyon kdump'a benzer şekilde dracut, initramfs-tools, kernel-install ve systemd üzerinden yapılıyor. Ekip, ileride geçişin bağlı istemciler fark etmeden, anlık gerçekleşmesini hedefliyor.

Göz atmaya değer uygulamalar

SUMO: sayı bulmacası

Doğru kareleri seçin, toplayın, hedefe ulaşın. Öğrenmesi kolay, ustalaşması zor. Ücretsiz, her yaşa uygun.

Dialo: konuşarak dil öğrenin

Yapay zekâ sohbet partneriyle konuşun; her cümleniz düzeltilip kendi dilinizde açıklanarak geri gelsin. 9 dil, A1'den C2'ye.

Etiketler:linuxkmorphmultikernelkernelkdumpopen source

Aynı günden diğer haberler

Tümünü gör →

Daha fazla: Yazılım

Tümünü gör →