We moved this page to our Documentation Portal. You can find the latest updates here. |
Issue
After upgrading compute resources to Xen >= 4.8, some virtual servers keep crashing or a kernel panic occurs in a few minutes after they are started.
Similar issues:
Virtual Servers Do Not Boot After Kernel Upgrade on Xen
Environment
OnApp 6.x with computer resources based on Xen >=4.8 hypervisors
The following are some of the affected distributions and their kernel versions:
- Debian 8.x kernel version 3.16.*
- CentOS 7.x kernel kernel version 3.10.*
- Ubuntu 14.x kernel version 3.13.*
- Ubuntu 13.x kernel version 3.8.*
Resolutions:
1) Edit guest's GRUB configuration file adding the 'mce=off ' boot option to the kernel parameters.
GRUB Legacy:
Edit the bootloader config file and append this option to the kernel line
- /boot/grub/menu.lst on Debian
- /boot/grub/grub.conf on CentOS
GRUB2:
- Edit /etc/default/grub and append this option between the quotes in the GRUB_CMDLINE_LINUX_DEFAULT line.
- Then re-generate the grub.cfg file with grub2-mkconfig -o /boot/grub/grub.cfg
- Or just edit /boot/grub/grub.cfg and append this option to the linux line
When the above is not possible to apply while the VS is running then boot the VS in Recovery mode and perform these changes from there. Please follow this article which helps to determine the VS's block devices that need to be accessed:
https://help.onapp.com/hc/en-us/articles/222045568-How-to-use-Recovery-Console-
If you would like to have the VS's disk to be mounted on the computer resources then follow this article:
When being in Recovery mode you want to run grub2-mkconfig -o /boot/grub/grub.cfg then first you need to prepare an environment and chroot there.
This article will help you with this https://help.onapp.com/hc/en-us/articles/222051288-Manually-Reset-Linux-root-Password-via-Recovery
2) Make the changes on the hypervisors level.
These changes will be applied to all Linux based Virtual Servers that start on this hypervisor.
Edit the pygrub bootloader script /usr/lib64/xen/bin/pygrub and add 'mce=off ' in the following line:
grubcfg = { "kernel": None, "ramdisk": None, "args": "mce=off " }
(! spare space "mce=off<SPACE>" does matter)
Additional Information
That is a known issue and you can find more information about the issue at: