Centos 6 Kernel Dump Config

Add Software

yum --enablerepo=debug install kexec-tools crash kernel-debug kernel-debuginfo-`uname -r`

A kernel argument must be added to /etc/grub.conf to enable kdump. It’s called crashkernel and it can be either auto or set as a predefined value e.g. 128M, 256M, 512M etc. These values define the amount of memory reserved for the capture kernel. I chose 128M for my testing.

crashkernel=128M

kernel /vmlinuz-2.6.32-279.22.1.el6.x86_64 ro root=/dev/mapper/vg_centos6-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_LVM_LV=vg_centos6/lv_swap rd_NO_MD SYSFONT=latarcyrheb-sun16 rd_LVM_LV=vg_centos6/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM crashkernel=128M
initrd /initramfs-2.6.32-279.22.1.el6.x86_64.img

Enable KDump

chkconfig kdump on
service kdump start
No kdump initial ramdisk found. [WARNING]
Rebuilding /boot/initrd-2.6.32-279.22.1.el6.x86_64kdump.img
Starting kdump:

A reboot is necessary for the kernel to know the crashkernel is set

Ensure Kdump is setup and active

service kdump status
Kdump is operational
cat /sys/kernel/kexec_crash_loaded
1

 

cat /proc/iomem | grep Crash
03000000-12ffffff : Crash kernel

Crash Kernel settings
most used is crashkernel=auto
but if you need to specify

Memory crashkernel=
0 – 12 GB 128M
13 – 48 GB 256M
49 – 128 GB 512M
129 – 256 GB 1G *(896M, 768M or 512M)