Eigene domU erstellen
(Letztes Text-Update: 8.11.2006)
Es gibt viele verschiedene Wege, einen Xen-Gast (domU) einzurichten.
Im folgenden beschreiben wir ein P2V (physical-to-virtual) Verfahren: Wir kopieren ein bestehendes Linux Betriebssystem in ein Dateiimage und nutzen es als Basis für eine virtuelle Xen Maschine.
1. Das bisherige Linux-System am besten in den Single-User-Mode runterfahren oder zumindest so viele Dienste wie möglich beenden.
init S
2. Als root auf dem bisherigen System eingeben
cd /
mkdir /rootfs
3. Eine Datei /rootfs/exclude.txt anlegen mit folgendem Inhalt:
./boot
./rootfs
./sys
./etc/mtab
./proc
Eventuell noch weitere auszuschließende Verzeichnisse/Dateien angeben.
4. Eingeben:
cd /
tar -c -v -z -f /rootfs/mydomU.tar.gz \
--exclude-from=/rootfs/exclude.txt \
--numeric-owner .
5. Das System wieder in den ursprünglichen Run-Level hochfahren, das geht zum Beispiel unter eisfair so:
init 2
Auf anderen Distris ist der normale-Runlevel meist 3 oder 5. Das kann man im Eintrag "initdefault" in /etc/inittab nachschauen.
6. Das tar-Archiv mydomU.tar.gz auf eisXen unter /data/xen/templates übertragen. Hier ist zu beachten, dass der nackte eisXen-Rechner lediglich einen ftp-Client zur Verfügung stellt.
Besser wäre die Übertragung über scp, also über den ssh-Dienst. Dazu muss man auf dem eisXen in der dom0 das inet-Package installieren und dabei die fette Warnung einfach ignorieren. Dann hat man sowohl ssh-Client als auch ssh-Server zur Verfügung, um das tar-Archiv auf eisXen zu übertragen.
(Update eisXen Beta 2: Seit Beta 2 ist auch ein ssh-Server und ein ssh-Client vorinstalliert, so dass die Übertragung zum eisXen-System direkt auch über das ssh-Protokoll geschehen kann.)
Dann geht das so:
cd /rootfs
scp mydomU.tar.gz root@eisxen:/data/xen/templates
Den Rechnernamen "eisxen" evtl. ersetzen, z.B. durch die IP-Adresse des eisXen-Rechners.
6a. Nachdem mydomU.tar.gz auf /data/xen/templates kopiert wurde,
müssen noch die Kernel-Module in den Baum integriert werden.
Das geht folgendermaßen auf eisXen:
cd /data/xen/templates
mkdir mydomU
cd mydomU
tar -x -p -z -f ../mydomU.tar.gz
mkdir -p proc sys
cp -au /lib/modules/2.6.16-xen lib/modules
Bei dieser Gelegenheit kann man auch noch etwas aufräumen im lokalen
Dateibaum. Dann wird alles wieder eingepackt:
tar -c -v -z -f ../mydomU.tar.gz --numeric-owner *
cd ..
rm -rf mydomU
Nun ist das Template fertiggestellt.
7. Das Template auf eisXen über das Setup als mydomU installieren.
8. Auf dem bisherigen Server aufräumen:
rm -rf /rootfs
Hier _kein_ Blank zwischen / und rootfs eingeben!