Xen 3 unter Debian Etch installieren
So, habe mir mal die Zeit genommen, eine kleine XEN Anleitung für Debian zu schreiben. Bei XEN handelt es sich um eine freie Software die unter Linux die sogenannte Paravirtualisierung emöglicht. Dadurch lassen sich verschiedene Betriebssysteme unter Linux virtualisieren. Folgende Linux Distributionen sind getestet und freigegeben:
- Debian (Sid)
- Debian (Sarge)
- Debian (Etch)
- Ubuntu (Dapper)
- CentOS 4
- Fedora Core 4
Um mit XEN ein Windows System zu virtualiseren, benötigt man allerdings einen Prozessor mit Virtualisierungsunterstützung.
- Intel VT (Vanderpool)
- AMD-V (Pacifica)
Installation
Für die installation habe ich ein Debian Etch (minimal) verwendet. Als erstes müssen wir dann natürlich unsere Paketlisten sowie unser System aktualisieren.
Dann ermitteln wir die aktuell verfügbare XEN Kernel-Image version:
Dann Kernel Installieren:
Installieren der tools, etc.:
So, nun müssen wir noch die aktuell verfügbare version des XEN Pakets rausfinden:
Dann installieren:
Konfiguration
Xen bietet mehrere Möglichkeiten um die Gäste (DomU) in ein Netzwerk zu integrieren. Da wären z.B.: folgende:
- via Bridge
- via Routing
- via NAT
Ich werde hier im HowTo nur auf das Bridge setup eingehen, das dieses Setup gerade für Anfänger am einfachsten zu realisieren ist.
Hinweis:
Wer Xen auf einem RootServer in einem Rechenzentrum einsetzen möchte, um verschieden Dienste zu trennen, kann eine der folgenden varianten nutzen.
Variante 1: via Bridge Setup
Wie gerade schon angesprochen, ist dies die einfachste Variante. Ist aber für ein Setup in einem Rechenzentrum nicht unbedingt die sauberste. Das Problem ist, das die virtualisierten Gäste mit Ihrem Xen Adapter Pakte über die Switche eures Anbieters versenden. Diese Xen Adapter haben jeweils verschiedene MAC Adressen, dieser MAC-Bereich ist auch offiziell Registriert. Wenn jetzt eurer Anbiter die Switche so eingerichtet hat, das an eurem Port nur die MAC Adressen von eurem RootServer akzeptiert wird, funktioniert das ganze natürlich nicht. Deswegen, bevor Ihr euch für dieses Setup entscheidet, fragt vorher bei eurem nbieter nach, ob das so funktioniert!
Variante 2: via NAT Setup
Das ist die etwas schwierigere Variante, ist dafür aber sauber gelöst und kann auch bei jedem Anbieter eingesetzt werden. Dabei werden im Prinzip die öffentlichen (statischen) IP-Adressen auf das externe Interface gelegt. Die Xen Adapten bekommen dann IP-Adressen aus einem privaten Bereich. Jetzt müssen "nur" noch die Ports von den öffentlichen zu den privaten IP-Adressen genattet werden, und umgekehrt.
Sprich:
statische_ip:25 - private_ip:25
andere_statische_ip:80 - andere_private_ip:25
Nun gut, zurück zu unserem "Bridge" Setup, dazu bearbeiten wir die "/etc/xen/xend-config.sxp":
Die beiden Einträge aktivieren für logging:
(loglevel DEBUG)
Aktivieren des Bridge Setup:
(vif-script vif-bridge)
Speicher für dom0 reservieren:
Reboot, um den neuen Xen Kernel zu booten:
Nun müssen wir noch die Xen-Tools konfigurieren, dazu editieren wir die "/etc/xen-tools/xen-tools.conf":
Wo sollen die Gäste abgelegt werden (mkdir nicht vergessen):
Installation-Methode:
Distribution:
Netzwerksetup:
netmask = 255.255.255.0
dhcp = 1
Kernel-Version auf die vorher installierte Version anpassen:
initrd = /boot/initrd.img-2.6.18-5-xen-686
Size, Memory, Swap, FS nach bedarf anpassen!
Xen host einrichten
xen-create-image --hostname=test --ip 192.168.1.10 --netmask=255.255.255.0 --gateway=192.168.1.1
Xen host verwenden
Gast starten:
Gast Konsole: