Server fails to boot after migration from Nutanix hypervisor (AHV) to Vmware virtual machine

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux (RHEL) 7
  • Red Hat Enterprise Linux (RHEL) 8
  • Red Hat Enterprise Linux (RHEL) 9

Issue

  • Migrated virtual machine from Nutanix hypervisor to Vmware virtual machine.
  • Copied disk of VM from Nutanix (AHV) to vmdk disks on Esxi , created a VM on esxi and attached vmdk to new VM created on esxi. After this tried to boot server but it failed to boot.

Resolution

  • Boot server in rescue mode.

  • Check if vmw_pvscsi ( driver used for scsi controller) and vmxnet ( driver for virtual network devices ) etc. exists in initramfs image.

# lsinitrd /boot/initramfs-<kernel version>.img |egrep "vmw_pvscsi|vmxnet"
  • If it does not contain drivers required for virtual devices on Vmware guests, take a backup of initramfs image and rebuild it from rescue mode.

    How to rebuild the initial ramdisk in linux rescue mode

  • Check if vmw_pvscsi and vmxnet drivers are inserted in updated initramfs image. If YES, reboot the server with boot disk and check if it comes up.

# lsinitrd /boot/initramfs-<kernel version>.img |egrep "vmw_pvscsi|vmxnet"
  • If still there is an issue, contact Red Hat technical support.

Root Cause

RHEL virtual machines on Nutanix (AHV) hypervisor has different drivers to detect virtual hardware such as storage controller and virtual network interface card (NIC) than those virtual machines running on esxi hypervisor. Customer copied disks from Nutanix to virtual disks (vmdk) on vmware and attached those disks to newly created Vmware virtual machine and booted. Boot disk on vmware virtual machine contained initramfs image and it's contents (drivers) from VM on Nutanix hypervisor which could not detect disks in early boot process and systemd timed out for disks. Hence system failed to boot and entered into emergency mode.

Diagnostic Steps

  • check if vmw_pvscsi ( driver used for scsi controller) and vmxnet ( driver for virtual network devices ) etc. exists in initramfs image.
# lsinitrd /boot/initramfs-<kernel version>.img |egrep "vmw_pvscsi|vmxnet"

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments