update 2006-12-20: new xen version, more detailled instructions
Thanks to the tip of dobee who recommended to use XEN for Virtualization of Linux Servers in our company I’ve been toying with it today during the last weeks.
However – there were some pitfalls until i’ve been able to work with it.
We’re running Root-Servers at Schlund+Partner – in this case a RootPlus Server with a Dual-Core Opteron 175, 4GB RAM and a 250GB RAID1.
We don’t use the pre-installed SuSE 64bit but decided to install Debian Sarge 64bit (minimal) install. That’s pretty nice at Schlund+Partner.
The Init-Tool
You can easily reset the machine to a default setup – half an hour later it’s finished :)

after that i tried to install the default XEN-installer, but the machine didn’t boot afterwards.
The Serial Console
Yes, the machine is in a Rackspace 300km away – but the Console Servers at Schlund allow to connect the machine through the serial console.
you just:
ssh uxxxxxxxxxx@sercon.rootmaster.info
and you are connected to your server through the serial port.
it seems like xen has no serial console support, at least there are problems with it – that’s the reason why i had no way to debug the boot-process
The Rescue-System
In case the Serial Console doesn’t help (because you have no kernel support for it :)) – you can power-cycle the server via Web-Interface.
But it’s more than power-cycle. Actually you can boot the machine (netboot/bootp) with a fail-safe ramdisk image.

After trying to create a initrd (to make sure all modules to access the boot-disk) are available at kernel load time i decided to build my own xen-kernel (I still suspect there were troubles with the 3ware SCSI RAID driver)
Installing necessary Debian Packages
sudo apt-get install bittornado
sudo apt-get bridge-utils
sudo apt-get install hotplug
sudo apt-get install udev
sudo apt-get install grub
sudo apt-get install gcc
sudo apt-get install bzip
sudo apt-get install zlib1g-dev
sudo apt-get install python2.3-dev
sudo apt-get install python2.4-dev
sudo apt-get install libncurses-dev
Getting the XEN Source
btdownloadcurses http://tx.downloads.xensource.com/torrents/xen-3.0.2-src.tgz.torrent
Building the Kernel
to make sure we compile the kernel with all necessary options i took the Schlund+Partner Kernel config as base:
cp /boot/config-2.6.16-rc6-060317a .config
make oldconfigmake linux-2.6-xen-config CONFIGMODE=menuconfig
make linux-2.6-xen-build
sudo make linux-2.6-xen-install
That’s it :) the machine booted! The serial console isn’t working atm. Now i’ll try to get the first host running :)