Convirt: transform a VM from HVM to PV

We recently reinstalled our main server. It’s a Xen 4.0.1 host, based on Debian Squeeze. We don’t have many VM on it, it’s basically to save some power and have a sandbox for some test installations. Can be useful, quite often.

Instead of using plain CLI tools (xen-tools basically), I decided to give a try to one of the most well known interfaces for Xen: Convirt. Formerly xenman, born some years ago, at some time it moved to a commercial software, with open source base. Can be installed on custom host, as in my case, or downloaded as VM appliance!
Beside all considerations, it’s quite cool, even if I find documentation a bit lacking, the forum has some nice people. Not really as much as I’d like, but useful.

Our main VM is an Ubuntu 10.04 64-bit server. Convirt comes with templates for Centos 5.4 and Fedora. Not really a rich choice! 🙂 So I installed it as Hardware Virtualization (HVM), but this means very poor performances, expecially when talking about disk IO. And since we use Zimbra, that’s a critical point! So it was mandatory to convert the machine to ParaVirtualization (PV).

There is no clear documentation about that, but the steps are pretty quick and straightforward. Supposing you created the domU using the standard Linux_CD_Install, proceed as follows:

  1. shutdown your HVM instance
  2. login to Convirt admin interface, and edit settings of the VM
  3. under storage tab, for each disk entry change the VM device attribute from hd* to xvd*
  4. under boot params, the dom0 kernel must be passed, so in my case:
    Kernel: /boot/vmlinuz-2.6-xenU
    Ramdisk: /boot/initrd-2.6-xenU
    Root device: /dev/xvda1
  5. under miscellaneous tab, remove builder and vncunused items
  6. if you have VNC configured in your VM, add
    vfb: [‘type=vnc,vncunused=1’]
  7. if your guest fstab was not configured using UUIDs, adjust it accordingly, as per step 3
  8. start your VM, and you should be done!

Lascia un commento

Il tuo indirizzo email non sarĂ  pubblicato. I campi obbligatori sono contrassegnati *

Solve : *
28 × 26 =

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.