Neben den diesjährigen MRMCDs habe ich mich dieses Wochenende endlich auch mal mit XEN befasst. Dazu habe ich auf meinem alten Rechner ein Lenny mit SoftRAID und LVM installiert.

Die Kombination mag Grub nicht so 100%-ig – man sollte 3 md’s anlegen – /boot, swap und eines für LVM – ansonsten lässt einem der Debian-Installer gleich gar keine Wahl und bietet nur LILO zur Installation an. Leider Verträgt sich LILO nicht so gut mit XEN (->frickel).

Nach der Installation habe ich als erstes XEN und brauchbare Tools dazu installiert:

aptitude install xen-hypervisor xen-linux-system-2.6.26-2-xen-amd64 xenwatch xen-shell

Anschließend noch die /etc/xen/xend-config.sxp etwas modifiziert:

[...]
(network-script network-bridge)
[...]
#(network-script network-dummy)
[...]

Einen Reboot später sagt uname -r auch schon: „2.6.26-2-xen-amd64“

Danach noch schnell die /etc/xen-tools/xen-tools.conf angepasst:

dist = lenny
arch=amd64
dhcp = 1
mirror = http://ftp.de.debian.org/debian/

Ausserdem finde ich es ganz nett, wenn bei neu erstellten XEN-VMs auch gleich mein Public Key für SSH mitinstalliert wird:

mkdir -p /etc/xen-tools/skel/root/.ssh
chmod -R 700 /etc/xen-tools/skel/root
# Key in /etc/xen-tools/skel/root/.ssh/authorized_keys einfügen
chmod 644 /etc/xen-tools/skel/root/.ssh/authorized_keys

Zum Abschluss gleich noch eine XEN-VM erstellen:

xen-create-image --hostname=couch1 --role=udev

clocksource/0: Time went backwards

Um den Fehler „clocksource/0: Time went backwards“ zu beheben muss in der /etc/sysctl.conf innerhalb der VMs folgende Zeile ergänzt werden:

xen.independent_wallclock=1

Damit wir das nicht bei jeder neuen VM erneut machen müssen, kopieren wir auf der dom0 die /etc/sysctl.conf in das skel-Verzeichnis und ergänzen dort dann auch die obige Zeile:

cp /etc/sysctl.conf /etc/xen-tools/skel/etc/sysctl.conf

Ausserdem müssen die Konfigurationsdateien für die VMs (/etc/xen/*.cfg) um folgende Zeile ergänzt werden:

extra="clocksource=jiffies"

Zusätzlich installieren wir auf der dom0 und innerhalb der VMs ntp damit die Zeit stimmt:

aptitude install ntp

Starting periodic command scheduler: crond.

Damit die console nicht nach „Starting periodic command scheduler: crond.“ hängen bleibt, müssen wir die extra-Zeile etwas erweitern:

extra="clocksource=jiffies console=hvc0 xencons=tty"