Friday, May 25

opensolaris x86 fast reboot

ini adalah salah satu materi yang dipresentasikan pada kernel conference australia dibrisbane.
dibawakan oleh sherry q moore, salah satu kernel developer dari sun microsystem. cewek bo! tumben ada…

Q: kenapa OS perlu reboot?
– karena adanya patches/update. reboot diperlukan supaya patch/update tersebut bisa dijalankan dengan baik. ini adalah alasan yang paling sering dari vendor OS/apllication untuk merestart mesin. mis: microsoft, ubuntu, sun.
– OS overload/crash/hang.
– untuk mengganti/upgrade hardware. meskipun untuk server2 gede (mis: sunfire) ada fasilitas untuk mereplace hardware tanpa mematikan mesin.
Q: solaris kan stabil, jarang hang. kenapa perlu dibuat fast reboot?
1. karena proses reboot yang sekarang tidak fast, lama banget. apalagi untuk server2 yang punya banyak service dan loadnya tinggi, bisa makan waktu sampai 20 menit untuk reboot.
2. fast reboot sangat berguna untuk developer. kerjaan mereka kan emang sering bikin mesin hang. testing bo! hehehe :-p

Q: sejak kapan ada feature fast reboot?
udah dimasukkan ke distro opensolaris 2008.11

Q: dah lama dunk?
iya. jadi ini feature udah ada lumayan lama, cuman blom banyak yang tau. jarang reboot sih…
hehehe

Q: ok back again. jadi ini feature untuk developer aja?
ngak. ini buat semua. intinya kita ngak perlu nunggu lama untuk reboot.

Q: maksudnya interval reboot?
adalah waktu dari selesainya “sync disk” sampai kernel menulis /var/log/messages untuk pertama kalinya. catatan ini dapat dilihat di /var/adm/messages.

Q: kenapa bisa fast reboot?
karena men-skip beberapa tahap ketika booting.

Q: emang tahap2 booting apa aja? dan mana saja yang di-skip?
– power on (pencet tombol) –> skip
– Power On Shelf Test (POST), checking hardware –> skip
– loading GRUB –> skip
– load kernel & driver yang baru
– nulis di /var/adm/messages

Q: command yang dipake?
reboot -f

Q: penjelasan lebih teknis?
kernel & driver lama tetap ada di memory. trus setelah command “reboot -f” maka kernel & driver baru akan dilokasi RAM yang baru. kemudian system akan diswitch untuk memakai kernel baru.
jika hasilnya nge-hang, bisa fallback ke kernel yang lama. asyik kan? 🙂 untuk mendukung fast reboot, driver yang ada harus mendukung quiesce (baca: kuasi). sehingga ketika load driver baru, ngak perlu assign IRQ lagi.

Q: kalo drivernya ngak mendukung quiesce?
ngak bisa fast reboot

Q: indikator driver yang tidak mendukung quiesce?
ketika kamu execute “reboot -f” maka akan muncul:
reboot: not all drivers have implemented quiesce(9E)

kalo ternyata yang tidak mendukung quiesce hanya driver VGA doang. gimana supaya bisa fast reboot?
# echo “force_fastreboot/W 1″ | mdb -kw
# echo “set force_fastreboot = 1″ >> /etc/system

Q: kalo yang tidak mendukung quiesce adalah NIC card?
# ifconfig nic-interface unplumb
# reboot -f

Q: kalo OS panic, rebootnya gimana?
pake uadmin. uadmin di desain untuk mendukung fast reboot

Q: emang seberapa cepat sih fast rebootnya?
dari 5 – 35 detik!! source: dari demo presentasi sherry q moore
wow, cepet banget! iya, saya juga takjub ketika liat demonya. cuman 5 seconds!!!

cara lihat hasilnya?
amati /var/adm/messages.
lihat dibawah lihat jarak dari “done” sampai “SunOS Release 5.11 …”
Sep 8 15:00:19 beaver genunix: [ID 672855 kern.notice] syncing file systems…
Sep 8 15:00:19 beaver genunix: [ID 904073 kern.notice] done
Sep 8 15:01:16 beaver genunix: [ID 540533 kern.notice] SunOS Release 5.11 Version snv_111b 32-bit

baris “done” –> 15:00:19
baris “SunOS Release…” –> 15:01:16

berarti proses reboot memerlukan waktu:
= 15:01:16 – 15:00:19
= 57 detik!!

One Comment

Leave a Reply

Your email address will not be published. Required fields are marked *