Xen Verwaltung · 4 min read · Oct 23, 2025

Xen mit Xen-Tools, Xen-Shell und Argo verwalten

Xen mit Xen-Tools, Xen-Shell und Argo verwalten

Version 1.0
Autor: Falko Timme

Dieser Leitfaden beschreibt, wie man xen-tools, xen-shell und Argo auf einem Debian-System installiert und verwendet. Alle drei Pakete bieten nützliche Werkzeuge zur Verwaltung virtueller Xen-Maschinen. Xen-tools ist eine Sammlung von Perl-Skripten, die es Ihnen ermöglichen, Xen-Gastdomänen einfach zu erstellen, zu aktualisieren und zu löschen. Die xen-shell bietet eine Befehlszeilenschnittstelle für Besitzer von Xen-Domänen, damit sie ihre Xen-Domänen ohne Hilfe des Serveradministrators verwalten können. Mit Argo können Sie Xen-Domänen über eine Weboberfläche oder über ein Menü in der Befehlszeile steuern. Alle drei Pakete wurden für Debian-Systeme entwickelt, könnten aber auch auf anderen Distributionen funktionieren.

Ich möchte zuerst sagen, dass dies nicht der einzige Weg ist, ein solches System einzurichten. Es gibt viele Möglichkeiten, dieses Ziel zu erreichen, aber dies ist der Weg, den ich wähle. Ich gebe keine Garantie, dass dies für Sie funktioniert!

1 Vorbemerkung

Ich gehe davon aus, dass Sie bereits Xen 3 auf Ihrem Debian-System installiert haben (es funktioniert nicht mit Xen 2!), zum Beispiel aus den Quellen, wie in Kapitel 4 dieses Tutorials gezeigt: https://www.howtoforge.com/debian_sarge_xen_3.0.3. Ich konnte xen-tools nicht mit der binären Xen-Installation zum Laufen bringen (wie in Kapitel 5 gezeigt), aber es könnte bei Ihnen funktionieren. Aber xen-tools funktionieren bei mir hervorragend mit einer Xen-Installation aus den Quellen.

Der Hostname meiner Xen dom0-Domäne ist server1.example.com in diesem Tutorial, seine IP-Adresse ist 192.168.0.100, und das Gateway ist 192.168.0.1. Ich möchte meine Gastdomänen im Verzeichnis /vserver/images speichern. Diese Werte könnten bei Ihnen anders sein.

Bitte stellen Sie sicher, dass Sie eine Zeile wie diese in /etc/hosts haben:

vi /etc/hosts

| [...] 192.168.0.100 server1.example.com server1 [...] |

2 Xen-Tools

Obwohl es Debian-Pakete für xen-tools und xen-shell auf http://www.steve.org.uk/apt/ gibt, habe ich mich entschieden, xen-tools und xen-shell aus den Quellen zu installieren, da das Debian-Paket von xen-tools ungültige Xen-Konfigurationsdateien für mich geschrieben hat, was nicht passierte, als ich die Quellen verwendete.

Zuerst installieren wir einige Voraussetzungen für xen-tools:

apt-get install libtext-template-perl perl-doc

Dann installieren wir xen-tools so:

cd /tmp  
wget http://xen-tools.org/software/xen-tools/xen-tools-2.7.tar.gz  
tar xvfz xen-tools-2.7.tar.gz  
cd xen-tools-2.7  
make install

Als nächstes bearbeiten wir /etc/xen-tools/xen-tools.conf. Diese Datei enthält die Standardwerte, die vom Skript xen-create-image verwendet werden, es sei denn, Sie geben andere Werte in der Befehlszeile an. Ich habe die folgenden Werte geändert und den Rest unverändert gelassen:

vi /etc/xen-tools/xen-tools.conf

| [...] gateway = 192.168.0.1 netmask = 255.255.255.0 passwd = 1 kernel = /boot/vmlinuz-2.6-xenU #initrd = /boot/initrd.img-2.6.16-2-xen-686 mirror = http://ftp2.de.debian.org/debian/ [...] |

Die Zeile passwd = 1 ermöglicht es Ihnen, ein Root-Passwort anzugeben, wenn Sie eine neue Gastdomäne erstellen. In der Kernel-Zeile müssen Sie den domU-Kernel angeben, den Sie für Ihre Gastdomänen verwenden möchten. Wenn Ihre Gastdomänen keinen Ramdisk zum Booten benötigen, kommentieren Sie die initrd-Zeile aus (ich musste dies bei meiner Installation tun), andernfalls geben Sie die korrekte Ramdisk an. In der Mirror-Zeile geben Sie einen Debian-Mirror in Ihrer Nähe an.

Stellen Sie sicher, dass Sie ein Gateway und eine Netzmaske angeben. Wenn Sie dies nicht tun und kein Gateway und keine Netzmaske in der Befehlszeile angeben, wenn Sie xen-create-image verwenden, haben Ihre Gastdomänen keine Netzwerkverbindung, selbst wenn Sie eine IP-Adresse angegeben haben!

Jetzt erstellen wir unsere erste Gastdomäne, vm03.example.com, mit der IP-Adresse 192.168.0.103:

xen-create-image --hostname=vm03.example.com --ip=192.168.0.103 \  
--netmask=255.255.255.0 --gateway=192.168.0.1 --dir=/vserver/images \  
--dist=sarge --debootstrap

Die –netmask- und –gateway-Schalter sind hier nicht notwendig, da wir dieselben Details in /etc/xen-tools/xen-tools.conf angegeben haben, aber es zeigt, dass Sie die gewünschten Einstellungen entweder in der Befehlszeile oder in /etc/xen-tools/xen-tools.conf angeben können.

Dieser Befehl erstellt nun die Gastdomäne vm03.example.com mit Debian Sarge darin, indem das debootstrap-Tool von Debian verwendet wird. Dies wird einige Minuten dauern, also haben Sie Geduld. In der Zwischenzeit können Sie ein weiteres Shell-Fenster öffnen und ausführen

tail -f /var/log/xen-tools/vm03.example.com.log

um zu sehen, was im Hintergrund passiert.

Nachdem die neue Gastdomäne erstellt wurde, überprüfen Sie /etc/xen/vm03.example.com.cfg. Es sollte jetzt so aussehen (ich habe die Kommentare hier entfernt):

vi /etc/xen/vm03.example.com.cfg

| kernel = '/boot/vmlinuz-2.6-xenU' memory = '128' root = '/dev/sda1 ro' disk = [ 'file:/vserver/images/domains/vm03.example.com/disk.img,sda1,w', 'file:/vserver/images/domains/vm03.example.com/swap.img,sda2,w' ] name = 'vm03.example.com' vif = [ 'ip=192.168.0.103' ] on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' |

Wir können unsere neue virtuelle Maschine so starten:

xm create -c /etc/xen/vm03.example.com.cfg

Mit dem Befehl xen-create-image können Sie fast alle Einstellungen in der Befehlszeile angeben. Werfen Sie einen Blick auf

man xen-create-image

um mehr zu erfahren. Hier ist ein weiteres Beispiel:

xen-create-image --size=2Gb --swap=128Mb --hostname=vm04.example.com \  
--ip=192.168.0.104 --netmask=255.255.255.0 --gateway=192.168.0.1 --dir=/vserver/images \  
--dist=sarge --debootstrap --fs=ext3 --kernel=/boot/vmlinuz-2.6-xenU --memory=32Mb \  
--image=sparse --mirror=http://ftp2.de.debian.org/debian/ --passwd

Dies wird die virtuelle Domäne vm04.example.com erstellen. /etc/xen/vm04.example.com.cfg sollte danach so aussehen (wieder habe ich die Kommentare entfernt):

vi /etc/xen/vm04.example.com.cfg

| kernel = '/boot/vmlinuz-2.6-xenU' memory = '32' root = '/dev/sda1 ro' disk = [ 'file:/vserver/images/domains/vm04.example.com/disk.img,sda1,w', 'file:/vserver/images/domains/vm04.example.com/swap.img,sda2,w' ] name = 'vm04.example.com' vif = [ 'ip=192.168.0.104' ] on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' |

Sie können die neue virtuelle Maschine so starten:

xm create -c /etc/xen/vm04.example.com.cfg

Es gibt auch drei andere Skripte, die mit xen-tools geliefert werden:

xen-update-image ermöglicht es Ihnen, die Pakete in Gastdomänen zu aktualisieren, z.B. so:

xen-update-image --dir=/vserver/images vm03.example.com

xen-list-images zeigt alle Gastdomänen an, die mit xen-create-image erstellt wurden:

xen-list-images

Die Ausgabe sieht so aus:

server1:~# xen-list-images  
Name: vm03.example.com  
Memory: 128   
IP: 192.168.0.103
Name: vm04.example.com  
Memory: 32  
IP: 192.168.0.104

Mit xen-delete-image können Sie Gastdomänen entfernen, die mit xen-create-image erstellt wurden:

xen-delete-image --dir=/vserver/images vm03.example.com
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.