Bagaimana server Linux memperbarui kernel mereka tanpa me-reboot
13
Menurut informasi saya, meningkatkan kernel linux membutuhkan reboot. Mem-boot ulang komputer di rumah bukan masalah, tapi saya rasa itu tidak sama untuk server.
Jadi apakah server yang menggunakan distribusi Linux reboot setelah memutakhirkan kernel, atau apakah mereka menggunakan semacam trik untuk menghindari boot ??
Perubahan kernel harus mendapatkan reboot. Anda dapat menginstal kernel, dan dalam beberapa kasus Anda dapat memasukkan dan menghapus modul dari kernel yang berbeda, tetapi saya tidak akan menyarankannya.
Server dapat di-boot ulang dan layanan tidak akan terpengaruh jika server merupakan bagian dari sebuah cluster. Anda dapat membuat cluster firewall / router juga, sehingga tidak ada titik pusat kegagalan (SPOF). Untuk melakukan ini, Anda menggunakan apa yang disebut IP Virtual (VIP) yang dibagi di lebih dari satu sistem.
Jika Anda ingin bereksperimen dengan ide ini, Anda dapat menggunakan QEMU atau VirtualBox dan lainnya untuk membuat jaringan virtual.
Pertanyaannya tidak khusus untuk perbaikan kecil tetapi menyebutkan 'peningkatan' yang akan saya maksudkan dengan peningkatan versi utama. Oleh karena itu, untuk 'meningkatkan' dari 2,6 -> 3,0 saya akan merekomendasikan menjatuhkan mesin dari beban sebelum memulai pekerjaan peningkatan. Posting perubahan kernel saya akan reboot. Karena grub / lilo kemungkinan akan membutuhkan perubahan, saya tetap menyarankan untuk boot ulang dengan sopan.
Ed Neville
15
Ya, mereka melakukan "reboot", tetapi bisa melakukan panggilan sistem kexec_load untuk memuat kernel baru.
Ada kemungkinan menambal kernel yang berjalan juga, redhat kpatch misalnya. Semua hal yang saya ketahui tidak dapat mengubah struktur data.
Tentu saja mesin lisp dulu mampu menambal kernel yang berjalan di abad terakhir.
Ada juga vanilla kexec, untuk langsung mem-boot kernel baru. Tergantung pada definisi Anda tentang "reboot", ini mungkin memenuhi syarat sebagai upgrade kernel non-reboot.
Ya, mereka melakukan "reboot", tetapi bisa melakukan panggilan sistem kexec_load untuk memuat kernel baru.
Ada kemungkinan menambal kernel yang berjalan juga, redhat kpatch misalnya. Semua hal yang saya ketahui tidak dapat mengubah struktur data.
Tentu saja mesin lisp dulu mampu menambal kernel yang berjalan di abad terakhir.
sumber
kexec
, untuk langsung mem-boot kernel baru. Tergantung pada definisi Anda tentang "reboot", ini mungkin memenuhi syarat sebagai upgrade kernel non-reboot.