Um XEN zu nutzen, ist es am Besten wenn man grub benutzt, je nachdem also zuerst lilo oä Bootmanager deaktivieren und grub installieren.

apt-get remove lilo
apt-get install grub
grub-install /dev/sda
grub-install /dev/sdb

Jetzt muss man per apt-get die nötigen Kernel und Pakete installieren, die fuer XEN benötigt werden. Ich installiere hier zusätzlich die xen-tools, weil man mit diesem Tool sehr leicht xen Instanzen erstellen kann.

Wenn man amd64 Kernel nutzen will ist folgender Befehl notwendig:

apt-get install linux-image-2.6-xen-vserver-amd64 xen-hypervisor-3.0.3-1-amd64 xen-tools xen-linux-system-2.6.18-4-xen-vserver-amd64 linux-headers-2.6-xen-vserver-amd64

Ansonsten folgende Befehlszeile:

apt-get install linux-image-2.6-xen-vserver-686 xen-hypervisor-3.0.3-1-686 xen-tools xen-linux-system-2.6.18-4-xen-vserver-686 linux-headers-2.6-xen-vserver-686

Jetzt muss man mit nano /boot/grub/menu.lst die Bootmanager konfiguration öffnen, die Zeile:

kernel /boot/xen-3.0.3-1-amd64.gz

muss z.B in

kernel /boot/xen-3.0.3-1-amd64.gz dom0_mem=128000

geändert werden. Je nachdem wieviel Ram der xen dom0 Instanz ( der Root Instanz, in der die VM’s laufen ) zugewiesen werden soll. In diesem Fall knapp 128MB.

Die grundsätzliche Installation von XEN ist jetzt fertig, nun muss man mit reboot das System rebooten.

Nachdem Neustart kann man mit uname -a schauen, ob der XEN Kernel läuft.

xen1:~# uname -a
Linux xen1 2.6.18-4-xen-vserver-amd64 #1 SMP Mon Mar 26 12:49:59 CEST 2007 x86_64 GNU/Linux

Jetzt kann man die oben bereits genannten xen-tools nutzen um XEN Instanzen zu erstellen.

Zuerst öffnet man mit nano /etc/xen-tools/xen-tools.conf die Konfiguration der Tools und passt wie folgt an:

Zuerst entfernt man die # vor der folgenden Zeile und aendert diese so ab, das die XEN Instanzen in den passenden Ordner installiert werden.

# dir = /home/xen

Als nächstes kann man das Betriebssystem auswählen sowie die Ram und HDD größe anpassen.

size = 8Gb # Disk image size.
memory = 256Mb # Memory size
swap = 2048Mb # Swap size
# noswap = 1 # Don’t use swap at all for the new system.
fs = ext3 # use the EXT3 filesystem for the disk image.
dist = etch # Default distribution to install.
image = sparse # Specify sparse vs. full disk images.

Zuletzt muss noch der Debian Mirror und der Ort des Kernels angepasst werden:

kernel = /boot/vmlinuz-2.6.18-4-xen-vserver-amd64
initrd = /boot/initrd.img-2.6.18-4-xen-vserver-amd64
mirror = http://ftp.de.debian.org/debian/

Jetzt kann man eine erste Instanz erstellen.

xen-create-image –hostname vm1 –ip=88.198.xxx.yyy –gateway=88.198.xxx.yyy –netmask=255.255.255.248

Je nach Netzwerkkonfiguration muss man jetzt noch in der /etc/xen/xend-config z.B routing aktivieren. Wenn man z.B jeder XEN Instanz eine richtige existierende öffentliche IP zuweisen möchte, ist dies die richtige Wahl.

(network-script network-route)
(vif-script vif-route)

Bei meinem Provider Hetzner muss zusätzlich folgender Befehl ausgeführt werden:

echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp

Nun kann man die vorher erstelle Instanz starten und sich an die lokale Console einhängen:

xm create vm1.cfg
xm console vm1

Das wars soweit, nun hat man ein funktionierendes XEN System.

Related posts:

  1. Howto: PHP Session mit memcached
  2. Software Raid5 mit Debian
  3. Datenbank Replikation mit MySQL unter Debian
  4. Macbook Ramerweiterung
  5. Monitoring mit Munin