Search

Language:  
Search for:

Available article translations:

How to configure kernel crash dumps on a Linux server

APPLIES TO:
  • Parallels Cloud Server 6.0
  • Parallels Virtuozzo Containers for Linux
  • Parallels Server

Symptoms

Sometimes it is useful to configure kernel crash dumps in order to troubleshoot panics on hardware servers with Parallels Cloud Server, Parallels Server Bare Metal, or Parallels Virtuozzo Containers for Linux.

Resolution

  1. Install kexec-tools on the Hardware Node:

    [root@pvcfl46x64 ~]# yum install kexec-tools
    

    NOTE: In RHEL 6.x-based distributions, kexec-tools is installed automatically and the rest of the configuration is applied as well. These steps can be used to check the configuration.

  2. Append the GRUB configuration with the kernel option crashkernel=128M@16M for i386 or x86_64 and with crashkernel=256M@256M for Itanium for PVC versions prior to 4.7. For versions more recent than 4.7, consider using crashkernel=129M@0M for i386 and x86_64 architectures.

    [root@pvcfl46x64 ~]# grep crash /etc/grub.conf
    kernel /boot/vmlinuz-2.6.18-028stab070.14 ro root=LABEL=/1 debug console=ttyS0,115200 console=tty crashkernel=128M@16M
    

    NOTE: For 2.6.32-042stabXXX kernels and newer releases, be sure to use the "crashkernel=129M@0M" option in p.2.

  3. Reboot HW.
  4. Enable Kdump on HW:

    [root@pvcfl46x64 ~]# chkconfig kdump on
    [root@pvcfl46x64 ~]# chkconfig --list kdump
    kdump 0:off 1:off 2:on 3:on 4:on 5:on 6:off
    
  5. Start Kdump on HW:

    [root@pvcfl46x64 ~]# service kdump start
    No kdump initial ramdisk found. [WARNING]
    Rebuilding /boot/initrd-2.6.18-028stab070.14kdump.img
    Starting kdump: [ OK ]
    

    NOTE: If you are configuring crash dumps on a Parallels Server Bare Metal machine, then it is necessary to disable Parallels Hypervisor before creating the initrd image:

    # service parallels-server stop
    # touch /etc/kdump.conf
    # service kdump restart
    
  6. If you want to store dumps on the external server, then additional steps are required. Edit "/etc/kdump.conf" to use the appropriate server:

    [root@pvcfl46x64 ~]# cat /etc/kdump.conf
    net root@10.55.63.11
    path /var/crash/pvcfl46x64/
    

    Note: Make sure that the partition is specified and that the "path" is big enough to store kernel dumps. The amount of available free space should be big enough to store several dumps of a size equal to the RAM.

  7. Propagate settings:

    [root@pvcfl46x64 ~]# service kdump propagate
    Generating new ssh keys... done.
    root@10.55.63.11's password:
    /root/.ssh/kdump_id_rsa.pub has been added to ~root/.ssh/authorized_keys2 on 10.55.63.11
    [root@pvcfl46x64 ~]#
    
  8. Restart Kdump:

    [root@pvcfl46x64 ~]# service kdump restart
    Stopping kdump: [ OK ]
    Detected change(s) the following file(s):
    /etc/kdump.conf
    Rebuilding /boot/initrd-2.6.18-028stab070.14kdump.img
    Starting kdump: [ OK ]
    [root@pvcfl46x64 ~]#
    

Now, when the kernel crashes, the dump can be found under "/var/crash/pvcfl46x64/."

On a non-production server, you can test the configuration as follows. For a production server, ensure that critical services are stopped to avoid possible data loss:

# echo 1 > /proc/sys/kernel/sysrq
# echo c > /proc/sysrq-trigger

If everything is OK, you should see an output on the server console that looks similar to that displayed below:

Console screen with a kernel crash

The crash dump should appear as follows:

[root@pvcfl46x64 ~]# ls -la /var/crash/2011-03-03-05\:55/
total 649940
drwxr-xr-x 2 root root 4096 Mar 3 05:56 .
drwxr-xr-x 3 root root 4096 Mar 3 05:55 ..
-r-------- 1 root root 2018588492 Mar 3 05:56 vmcore

Additional information

Parallels Containers user guide:

Dedoimedo.com also has a lot of useful information about kernel crash troubleshooting:

In case of using Ksplice Uptrack solution for rebootless security updates, the generated crash dumps are not appropriate for analysis by Parallels Support. Such dumps should be forwarded to Ksplice Team.

Also see

10055 How to configure memory dump generation on Windows

Search words:

lpfc abort handler timed out waiting for abortng I/O to complete

Kernel panic - not syncing: Watchdog detected hard LOCKUP on cpu 14

virtuozzo crash

kernel panic

hardware node hang

update cloud server

container causes hostserver to crash

server crash

Crash after vzup2date and new kernel

jkj

There is no solution

TCP: time wait bucket table overflow

crashed node

crash




ca05eaf5b843fbd53589c90d7228a6df eb0ea3b827d18de2329b6477e24c1d59 909d99074e442b52ce54cc7b31cf065d 2897d76d56d2010f4e3a28f864d69223 bf1c3a170005eae151f49ba2720abde9 3d9560cc94370f9e1bd9256d230e5ee8

FEEDBACK
Was this article helpful?
Tell us how we may improve it.
Yes No
 
 
 
 
 
 
Desktop Virtualization
- Parallels Desktop 8 for Mac
- Parallels Transporter
- Parallels Desktop Switch to Mac Edition
- Parallels Desktop for Mac Enterprise Edition
- Parallels Management-Mac for Microsoft SCCM
Server Virtualization
- Parallels Cloud Server
- Parallels Containers for Windows 6.0 Beta
- Parallels Virtuozzo Containers
Automation
- Parallels Automation
- Parallels Automation for Cloud Infrastructure
- Parallels Business Automation Standard
- Parallels Virtual Automation
- Parallels Plesk Panel Suite
- Web Presence Builder
- Parallels Plesk Automation
- Parallels Small Business Panel
- Value-added Services for Hosters
- Parallels Partner Storefront
Services & Resources
- Cloud Acceleration Services
- Professional Services
- Support Services
- Training & Certification