Kdump service is getting fail, ConditionKernelCommandLine=crashkernel was not met. Beberapa waktu lalu saya baru mendapati salah satu VPS (virtual machine) saya dengan sistem operasi CentOS 8 terdapat error pada salah satu service-nya yaitu kdump dengan pesan error ConditionKernelCommandLine=crashkernel was not met.
● kdump.service - Crash recovery kernel arming Loaded: loaded (/usr/lib/systemd/system/kdump.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Sat 2020-11-14 23:52:50 WITA; 1 years 0 months ago Condition: start condition failed at Sat 2021-11-20 13:00:28 WITA; 1min 39s ago └─ ConditionKernelCommandLine=crashkernel was not met Main PID: 1292 (code=exited, status=1/FAILURE) Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
Kdump adalah mekanisme dumping crash tingkat lanjut. Saat diaktifkan, sistem akan di-boot dari konteks kernel lain. Kernel kedua ini menyimpan sejumlah kecil memory, dan satu-satunya tujuannya adalah untuk mengcapture core dump image jika sistem mengalami crash. Karena mampu menganalisis core dump ini, kdump sangat membantu secara signifikan untuk menentukan penyebab pasti kegagalan sistem, jadi sangat disarankan untuk mengaktifkan service ini.
Solusi atas kasus ini adalah memastikan bahwa kernelopts variable terkonfirugasi secara benar pada file grub.cfg yaitu dengan mengalokasikan sejumlah memory untuk parameter crashkernel pada kernel option. Untuk melakukannya edit file /etc/default/grub kemudian tambahkan parameter crashkernel=128M pada baris GRUB_CMDLINE_LINUX.
# nano /etc/default/grub
GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap crashkernel=128M" GRUB_DISABLE_RECOVERY="true" GRUB_ENABLE_BLSCFG=true
Selanjutkan jalankan perintah
# grub2-mkconfig -o /boot/grub2/grub.cfg
Kemudian reboot / restart agar kernel option yang sudah ditambahkan dapat dijalankan saat sistem boot up.
# reboot
Periksa kembali service kdump telah berjalan dengan baik.
# systemctl status kdump
● kdump.service - Crash recovery kernel arming Loaded: loaded (/usr/lib/systemd/system/kdump.service; enabled; vendor preset: enabled) Active: active (exited) since Sat 2021-11-20 13:20:06 WITA; 26min ago Process: 1339 ExecStart=/usr/bin/kdumpctl start (code=exited, status=0/SUCCESS) Main PID: 1339 (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 204714) Memory: 0B CGroup: /system.slice/kdump.service
Terlihat service kdump telah berjalan, semoga bermanfaat.