Exploring KVM with CentOS 5.5

Since VMware have nearly abandoned VMware Server (Not all my servers can/will run VMware ESXi), I start to explore KVM with CentOS 5.5 and also migration tools from vmware based virtual machine image to kvm

After a day of testing, I found KVM on CentOS 5.5 is still not a vital alternative to VMware Server. First, it lack live snapshot which I consider vital when I need to backup a running Linux VM. Second, CentOS 5.5’s KVM lack SCSI emulation in the guest VM which made the direct migration of VMware guest to KVM nearly impossible. The support is added after kennel version 2.6.24 or later. KVM is presented as a serious alternative to VMware by RedHat. However, without the live snapshot and SCSI emulation, I don’t see this will happen….

Respect of free server virtualization solution, I will try Xen server 5.6 Free edition in the next few weeks, it is time to look at virtualization solution other than vmware ( I used vmware solution for over TEN years starting from GSX server 1.0).

Another site’s instruction of migrating VMware image to KVM

1. Make a backup of all the VMware Virtual Machine files in case you need to backout;

2.Remove VMware Tools;

3.Disable the screen saver;

4.Download mergeide.reg from:

5.Install mergeide.reg;

6.Convert the original VMDK file to a growable VMDK file using the following as a template: (note: it is dash t space zero):
sudo vmware-vdiskmanager -r win2003.vmdk -t 0 win2003-grow.vmdk

7.Convert the growable VMDK image in to a QEMU file using the following as a template:
sudo qemu-img convert -f vmdk win2003-grow.vmdk -O qcow2 win2003.img

8.Follow the standard procedures to import QEMU image into Virtual Machine Manager or run from command line.

Prcoedure to change the disk type from SCSI to IDE on a vmware linux guest :

  • Step 1: Delete the Virtual SCSI disk and remove SCSI from the system – This may sound like a very drastic measure, but removing SCSI disk does not destroy the virtual disk images. This can be done by doing: Edit Virtual Machine Settings -> Select the SCSI disk -> Press the “Remove” button
  • Step 2: Edit the .vmx file and .vmdk file of the guest OS – For example, in my guest OS, Linux, it will have a Linux.vmx file. Inside this file would contain the following entries: scsi0.present = “TRUE” and scsi0.virtualDev = “lsilogic” Set the “TRUE” to “FALSE” and remove the scsi0.virtualDev line. After this, edit the Linux.vmdk file, and change: ddb.adapterType = “lsilogic” to ddb.adapterType = “ide”
  • Step 3: Add the modify virtual disk image – Goto Edit virtual machine settings again, this time use Add to add a new disk, and make sure we select Use an existing disk and browse the the modified Linux.vmdk that we had done in step 2.
  • Step 4: Make the guest OS boot from hda instead of sda – First, use the Slackware installer CD or ISO image to boot up. After boot up the system using the installer disk, mount the virtual disk partition to /mnt. From here, edit /etc/lilo.conf and /etc/fstab, make sure we change all the entry of sda to hda. Once this is done, run ‘lilo -r /mnt’. Create the hda* device file in /mnt/dev if required.

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>