I took a development box running Xen 3.3 on Ubuntu 8.04 and upgraded in to Ubuntu 10.04 and installed Xen 4.1.0 from source. I still believe Xen is the best open source virtualization solution. At some point I’ll have to write up my experiments testing KVM + libvirt but suffice if to say the performance and stability were unacceptable. However, while the performance of Xen is great, I have noticed some issues with Xen 4.1.0.
- rebooting from inside a DomU causes it to be destroyed. This may be a problem with xl or with pygrub but I get the following error when rebooting: “failed to run bootloader: -3”
- confusion over xl/xm and xencommons/xend. I’ve learned that I should run xencommons and use xl and not use xend and xm. Running both xend and xencommons seemed to lead to stability issues. Using xm was useless as my existing configurations would not work (problems with blktap2 and qcow2). However xl worked fine as long as I removed any python code from the config files.
- pvgrub does not work. While pvgrub seems like a much better alternative to pygrub I found that it would give me an error about the disk not being available. This may just require a change to grub but that’s not ideal. I want a drop-in secure replacement for pygrub.
- configuring the Dom0 kernel takes time. You have to be somewhat careful on the options and there is extremely little documentation on the various Xen options. I found that “CONFIG_XEN_DEV_EVTCHN=y” was better than a module since you need evtchn on the Dom0 always.
- problems with xenpm. running “xenpm get-cpufreq-states” led to an unkillable hung process and shortly thereafter a system lockup. See: xenpm bugs.
Helpful information:
- Xen 4.1 on Ubuntu 10.04 64bit » ZeroAccess (helpful info on compiling Xen 4.1.0 and a Dom0 kernel)
- Performance difference between Xen versions | Xen | Devel (information on performance and power saving)
- xenpm – Xen Wiki
- PvGrub – Xen Wiki
- PyGrub – Xen Wiki