gestreift.net  
Home arrow News arrow Anleitungen für Linux arrow Einrichtung von Xen 2.0
Einrichtung von Xen 2.0 Drucken
Xen ist ein Softwarepaket zur Virtualisierung eines physikalischen Computers. Dies ist eine kurze Anleitung ohne viele Kommentare und Anspruch auf Vollständigkeit.

Xen anpassen und selbst compilieren

notwendige Pakete:
libcurl3-dev zlib1g-dev python2.3-dev wget bzip2

Auspacken und Compilieren:
tar -xzf xen-2.0-src.tgz
cd xen-2.0
make world

Die Linux-Kernel v2.4.30 und v2.6.11 werden dabei automatisch heruntergeladen und in einer Standardkonfiguration übersetzt.

Kernel anpassen:
cd linux-2.6.11-xen0 # oder cd linux-2.6.11-xenU für die Gastsysteme
make ARCH=xen menuconfig
cd ..
make kernels

Hinweis:
Um wie unten angegeben XFS als Dateisystem in den Gastsystemen zu nutzen, sollte dieses hier aktiviert werden.

Einfache Installation

notwendige Pakete:
libcurl3 bridge-utils python-twisted iproute

Auspacken und Installieren:
tar xvfz xen-2.0.x-install.tgz
cd xen-2.0.x
sh install.sh

Xen starten

Bootmanager (Grub!) anpassen:
title Xen 2.0 / XenLinux 2.6.11
  kernel /boot/xen.gz dom0_mem=131072
  module /boot/vmlinuz-2.6.11-xen0 root=/dev/sda4 ro console=tty0

Nach dem Neustart Xen starten:
/etc/init.d/xend start

Virtuelle Maschinen anlegen

Loop-Devices anlegen (10GB für / und 500MB für swap):
dd if=/dev/zero of=guest.root bs=1k count=10M
dd if=/dev/zero of=guest.swap bs=1k count=500k
mkfs.xfs guest.root
mkswap guest.swap

Grundsystem auf guest.root installieren:
mount -o loop guest.root /mnt
debootstrap --include=udev,hotplug,libreadline4,xfsprogs,ssh \
    --arch i386 sarge /mnt http://ftp.<countrycode>.debian.org/debian

System-Konfiguration editieren:
/etc/hostname
/etc/fstab
/etc/network/interfaces
/etc/apt/sources.list

Xen 2.0 kann nicht so recht mit TLS, darum:
mv /mnt/lib/tls /mnt/lib/tls.disabled

Wenn schon die Maschine virtuell ist, kann man deren Konsolen nicht noch virtueller machen. Also, schalten wir das Feature in der /mnt/etc/inittab ab:
1:2345:respawn:/sbin/mingetty tty1
#2:2345:respawn:/sbin/mingetty tty2
#3:2345:respawn:/sbin/mingetty tty3
#4:2345:respawn:/sbin/mingetty tty4
#5:2345:respawn:/sbin/mingetty tty5
#6:2345:respawn:/sbin/mingetty tty6

Xen-Konfiguration erstellen (/etc/xen/guest, wenigstens die fetten Werte sollten angepaßt werden):
#  -*- mode: python; -*-

kernel = "/boot/vmlinuz-2.6.11-xenU"
memory = 256
name = "guest"

disk = [ 'file:/srv/xen/guest.root,sda1,w','file:/srv/xen/guest.swap,sda2,w' ]

hostname = "guest"
root = "/dev/sda1 ro"
extra = "4"

... und starten:
umount /mnt
xm create -f guest -c
base-config