RedHat has dropped the ball on supporting the Xen based virtualisation technologies and due to commercial reasons will not fix their recently introduced kernel bug on Xen PV platforms.
So the fix is to switch to the “CentOS Plus” kernel, which has been updated by the CentOS Team to correct the issue introduced by RedHat.
The way to do this is:
a) Boot your CentOS 7 Xen based VPS onto an older kernel that still works (not in the 611 version stream)
b) Change your
/etc/yum.repos.d/CentOS-Base.repo file to be:
name=CentOS-$releasever - Plus
c) Edit your
/etc/sysconfig/kernel file to list:
(instead of DEFAULTKERNEL=kernel )
d) Run “
yum install kernel-plus” as root.
e) Reboot on the CentOS Plus kernel, which should be the new default kernel in your Grub.
Note: If you still get a kernel crash on the latest CentOS Plus kernel (kernel-plus), the a recent (Dec 2017) working kernel is installed with:
yum remove kernel-plus
rpm -iv http://mirror.centos.org/centos/7/centosplus/x86_64/Packages/kernel-plus-3.10.0-693.11.1.el7.centos.plus.x86_64.rpm