Xen and the art of DNS

I’ve been following Xen, the newest of the Linux Virtual Machine (VM) technologies for awhile. I’ve been using UML to run a few services, mainly DNS and Nagios. Each has it’s own UML instance, which lives as a file on the hard disk of another machine. It means I can safely give access to these VM to friends without having to give them access to any real hardware. It also means if it gets screwed up, I just restore the file from my backups.

Xen works alot like UML, but you end up running a customized kernel on the host. This ‘hypervisor’ controls the resources of the host, and allocates/shares them to the guest VM’s as needed. It’s a pretty standard, boring architecture dating back to the 70’s and IBM mainframes. But Xen’s performance on x86 is much better than UML’s, and the ability to migrate a live VM from one physical piece of hardware to another is new and something I’d like to be able to do. It means I can migrate all the VM’s to another machine for 20 minutes while I upgrade the primary host, and no-one will notice.

Thanks to the Fedora Xen Quickstart guide, it was pretty painless to take a UML and move it over my Xen server. Just had to remember to edit /etc/fstab as the partition names change (/dev/ubd/0 -> /dev/sda1, etc…) and kill my static arp entires on the UML server.

First server migrated was, you guessed it, the DNS server. It’s now happily running on the Xen server, and I’m in the progress of moving over a web server and the nagios server. If I can cut out a few more physical machines, maybe I can even drop the hydro bill :)

Comments

Comments are closed.