Anton Lindstrom (about, @twitter, @github)

Virtualization

Published:

I have tested out a few different virtualization techniques in the latest year. I have since this summer used VMware ESXi to virtualize my lab environment and a server for my own webserver. Unfortunately I would like to try out some of the more advanced features and those are not included in the free version of ESXi. I am a fan of Open Source and want to support it as much as possible and I have chosen to change plattform from ESXi to Xen.

Xen does, in paravirtualization, not support virtualization of systems like Windows or BSD if you are using a Linux host as a Dom0. That means that my Windows server either has to be migrated to a separate host or it is possible to use Hardware-assisted virtualization.

When using Xen I am able to do easy backups and do live migration of virtual guests. It does require some extra time in building the Xen templates but after that it is as fast as copying and booting up a new, freshly installed server. I have used debootstrap to install an Ubuntu server on a CentOS one. It works as a charm and is quite fast. Next step is to use an iSCSI target and a secondary fail-over Dom0. The definition of a VM looks like the following:

name = "ubuntu"
uuid = "053b0ed9-e985-82b7-0659-fc9f4c8b3aef"
maxmem = 512
memory = 512
vcpus = 1
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "destroy"
disk = [ "tap:aio:/srv/xen/ubuntu.img,xvda1,w" ]
vif = [ "mac=00:16:36:ff:ff:ff,bridge=xenbr0,script=vif-bridge" ]
bootloader = "/usr/bin/pygrub"