Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
Einleitung
1 Linux
2 Ubuntu Linux
3 Von »Warty« bis »Edgy«
4 Optimale Nutzung der beiliegenden DVDs
5 Ubuntu erleben – Die Installation
6 Erste Schritte
7 Ubuntu
8 Kubuntu
9 Xubuntu
10 Edubuntu
11 Hardwarekonfiguration
12 Ubuntu und aktuelle Hardware
13 Software
14 Programme installieren
15 Programmierung und Design
16 Migration von Windows zu Ubuntu
17 Netzwerktechnik
18 Kompilieren und Optimieren
19 Das System im Detail
20 Sicherheit
21 Virtualisierung
22 Übersicht: Software für (K)Ubuntu
23 Wo bekomme ich weitere Hilfe?
24 Befehlsreferenz Ubuntu Linux
A Häufig gestellte Fragen
B Glossar
C Mark Shuttleworth
D Deutsche Übersetzung der GPL
Stichwort

Download:
- ZIP, ca. 29,4 MB
Buch bestellen
Ihre Meinung?

Spacer
 <<   zurück
Ubuntu GNU/Linux von Marcus Fischer
Grundlagen, Anwendung, Administration
Buch: Ubuntu GNU/Linux

Ubuntu GNU/Linux
2., akt. und erw. Aufl., mit 2 DVDs
913 S., 39,90 Euro
Galileo Computing
ISBN 978-3-89842-848-4
gp 21 Virtualisierung
  gp 21.1 Überblick
    gp 21.1.1 Was ist Virtualisierung?
    gp 21.1.2 Konzepte
    gp 21.1.3 Hardwareunterstützte Virtualisierung
  gp 21.2 VMware
  gp 21.3 Ubuntu im VMware Player
    gp 21.3.1 Installation des VMware Players
    gp 21.3.2 Nutzung der virtuellen Maschine
    gp 21.3.3 Aufrüstung der virtuellen Maschine
    gp 21.3.4 Tipps für Windowsanwender
  gp 21.4 VMware-Server
    gp 21.4.1 VMware-Server installieren
    gp 21.4.2 Virtuelle Maschinen anlegen
    gp 21.4.3 Installation des Gastsystems
  gp 21.5 VMware Tools
    gp 21.5.1 Installation der VMware Tools
    gp 21.5.2 Konfiguration
  gp 21.6 QEMU
    gp 21.6.1 Installation
    gp 21.6.2 Gastsysteme installieren
    gp 21.6.3 Start des Gastsystems
    gp 21.6.4 Tastenkombinationen
    gp 21.6.5 Tipps und Tricks
  gp 21.7 XEN
    gp 21.7.1 Was ist XEN?
    gp 21.7.2 Systemanforderungen
    gp 21.7.3 XEN installieren
    gp 21.7.4 Anpassung der Bootkonfiguration zum Start von XEN
    gp 21.7.5 XEN-Dämonen automatisch starten
    gp 21.7.6 Installation von Gastsystemen
    gp 21.7.7 Gast-Linux installieren auf einer virtuellen Maschine
    gp 21.7.8 VM starten
    gp 21.7.9 Administration der virtuellen Maschinen


Galileo Computing

21.7 XEN  downtop

In diesem Abschnitt möchte ich Ihnen eine Virtualisierungssoftware vorstellen, die sich in ihrer kurzen Geschichte einen durchaus beachtlichen Ruf erarbeitet hat: XEN.

Abbildung 21.6    Die offizielle Homepage von XEN

XEN wird englisch ausgesprochen: »Zen« mit weichem »Z« und ging aus einem größeren Projekt, dem Xeno-Server, hervor. Inzwischen ist XEN eigenständig und wird von einer Arbeitsgruppe um Ian Pratt an der Universität Cambridge entwickelt.

Xen hatte in dieser kurzen Zeit schon einen derartigen Erfolg und Einfluß, dass die Prozessorhersteller die neueste Generation von Prozessoren mit bestimmten Techniken ausrüsten, um die Virtualisierung durch XEN zu unterstützen.

Die Technik wurde erstmals 2003 in einem Aufsatz mit dem Titel »Xen and the Art of Virtualization« beschrieben:

» Xen is an open-source hypervisor that enables increased server utilization and server consolidation by enabling multiple operating system images to simultaneously run on a single physical server.«

Sie erreichen die offizielle Homepage des XEN-Projektes unter der Adresse http://www.cl.cam.ac.uk/Research/SRG/netos/xen/ (Abbildung 21.6).


Galileo Computing

21.7.1 Was ist XEN?  downtop

XEN ist wie ich bereits beschrieben habe eine sehr effektive Methode zur Ausführung mehrerer Betriebssysteme auf einem Rechner. Es erfordert bei Prozessoren ohne Vanderpool- oder Pacifica-Technologie allerdings angepaßte Betriebssysteme. Daher ist man ohne diese Prozessoren auf Linux und einige BSD-Varianten eingeschränkt. Andererseits ist die Leistung der parallel laufenden Systeme geradezu phänomenal hoch, die Verluste liegen stets im einstelligen, meist sogar im niedrigen einstelligen Prozentbereich.

Die Entwicklung von XEN macht zurzeit sehr schnell große Fortschritte. Während die vollständige Integration in anderen Distributionen, z. B. in Fedora, schon sehr weit fortgeschritten ist, steht diese in Ubuntu erst am Anfang. Ehrlicherweise muss man sagen, dass es zum Zeitpunkt der Drucklegung dieses Buches mit Ubuntu weitaus schwieriger ist, ein funktionsfähiges XEN-System zu erreichen, als es dies mit anderen Distributionen möglich ist.

Der folgende Abschnitt über XEN soll lediglich einen einsteigenden Charakter besitzen und kann eine tiefere Beschäftigung mit dieser faszinierenden Technik nicht ersetzen. Fassen Sie die folgenden Schritte bistte deshalb nur als Hinweise auf, die Ihnen einen roten Faden geben sollen. Bitte beachten Sie, dass die folgende Anleitung auf der aktuellen Version 3 von XEN beruht (Stand Dezember 2006). XEN 3 ist inkompatibel zu Gästen aus der XEN-Version 2. Grundsätzlich sollten sich nur erfahrene Anwender an die Konfiguration eines XEN-Systems wagen, daher bitte ich um Verständnis, wenn die nachfolgenden Schritte nicht so detailliert sind wie sich ein Einsteiger dies wünschen würde.


Galileo Computing

21.7.2 Systemanforderungen  downtop

Wie bei allen Anwendungen gibt es einige Systemanforderungen zu beachten:

  • Das System muss GRUB verwenden. Dies ist bei Ubuntu der Standard-Bootloader und sofern Sie daran nichts geändert haben, ist die erste Voraussetzung leicht zu erfüllen.
  • Sie brauchen natürlich ausreichend Platz auf Ihrer Festplatte für die zu installierenden Gastsysteme. Während ein minimales System mit 600 BM auskommt, braucht eine vollständige graphische Linux-Installation leicht bis zu 3 GB Platz.
  • Sie brauchen als Faustregel ungefähr jeweils 256 MB Arbeitsspeicher für jedes Gastsystem.

Galileo Computing

21.7.3 XEN installieren  downtop

Der erste Schritt besteht darin, dass Sie sich die aktuelle XEN-Version vom Server des Projektes herunterladen. Das Verzeichnis hierfür befindet sich unter http://www.cl.cam.ac.uk/research/srg/netos/xen/downloads/. Dort finden Sie z. B. Pakete mit der Bezeichnung xen-3.0.2-install-x86_32.tgz.

Laden Sie sich dort einfach das aktuellste Paket passend für Ihren PC herunter und entpacken Sie dieses dann, z. B. durch rechten Mausklick auf das Archiv und dann den Menüpunkt Hier entpacken auswählen.

Öffnen Sie nun als nächstes ein Terminal und installieren die bridge-utils:

user$ sudo apt-get install bridge-utils

Nun wechseln Sie in das Verzeichnis, welches nach dem Entpacken des XEN-Archivs entstanden ist:

user$ cd /home/marcus/xen-3.0.2-install

Rufen Sie dort mit sudo ./install.sh die Installationsroutine auf. Sie erhalten einen Ausgabe wie folgt:

Installing Xen from './install' to '/'... 
All done. 
Checking to see whether prerequisite tools are installed... 
Xen CHECK-INSTALL  Fr 1 Dez 00:22:30 CET 2006 
Checking check_brctl: OK 
Checking check_hotplug: OK 
Checking check_iproute: OK 
Checking check_python: OK 
Checking check_zlib_lib: OK 
All done.

Als nächstes müssen Sie den XEN-Kernel in }gpkursiv{GRUB} eintragen.


Galileo Computing

21.7.4 Anpassung der Bootkonfiguration zum Start von XEN  downtop

Der eigentlich zu bootende Kernel ist der XEN-Kernel selbst. Der für die privilegierte Domäne zu verwendende Speicher ist als Option in kB anzugeben. Der Linux-Kernel der privilegierten Domäne wird wie sonst eine initrd mit dem Grub-Befehl module geladen. Eine initrd dieses Kernel erfordert einen weiteren module-Befehl.

Dies ist ein Beispiel für einen Eintrag in /boot/grub/menu.lst, in der der XEN-Kernel als Standard ausgewählt ist:

title  Xen(3.0)/Linux(2.6.15) 
kernel /boot/xen.gz dom0_mem=393216 
module /boot/vmlinuz-2.6-xen0 root=/dev/evms/root 
module /boot/evms-2.5.2-initrd.gz 
savedefault

Anschließend können Sie bereits xend starten:

user$ /etc/init.d/xend start

Nun brauchen Sie lediglich Ihren PC neuzustarten und den XEN-Kernel auswählen, sofern Sie ihn nicht als Standard ausgewählt haben.

Wenn das System korrekt gestartet ist, dann haben Sie das Gröbste überstanden. Überprüfen Sie zunächst mit Hilfe von uname -r, ob Sie gerade unter dem XEN-Kernel arbeiten. Die Ausgabe dieses Befehls sollte den momentan verwendeten Kernel anzeigen, z. B. 2.6.15.xen.

Mit

user$ xm list

erhalten Sie eine Übersicht über alle laufenden Betriebssysteme. Hier sollte zu Beginn nur ein Eintrag stehen: Domain-0. Dies ist das Betriebssystem, unter welchem SIe gerade arbeiten, der Host.

Bitte beachten Sie, dass in den Standardeinstellungen das Netzwerk für die installierten Gastsysteme gebrückt ist. Dies bedeutet, dass diese Systeme eine IP-Adresse aus dem gleichen Netzwerk, in welchem sich der Host befindet, benötigen. Wenn Sie einen DHCP-Server haben, müssen Sie dementsprechend sicherstellen, dass dieser den Gastsystemen solche Adressen zuweist. In der Datei /etc/xen/xend-config.sxp können SIe einen anderen Netzwerktyp festlegen.


Deaktivierung von TLS

TLS verwendet eine Art der Speicheradressierung, die in XEN umständliche Emulation erfordert. Das System wird daher wesentlich schneller, wenn man TLS deaktiviert. Dazu muß der Ordner /lib/tls umbenannt werden, z. B. nach /lib/tls-disabled.

Problemlösungen beim Start von dom0



Galileo Computing

21.7.5 XEN-Dämonen automatisch starten  downtop

Zwei Dienste müssen dazu gestartet werden:

  • xend
  • xendomains

Die Funktion von xend hatten wir bereits kennengelernt. xenddomains wird verwendet, um VMs automatisch zu starten und zu stoppen, wenn das Xen-Wirts-System (Domain 0) gestartet bzw. herunter gefahren wird. Damit die beiden Dienste nach jedem Neustart automatisch gestartet sind, müssen symbolische Links von den Init-Skripten in die entsprechenden rc-Verzeichnisse angelegt werden.

Unter Ubuntu kann dies geschehen mit dem Tool update-rc.d:

user$ update-rc.d xend defaults 20 21 
user$ update-rc.d xendomains defaults 21 20

Wenn das Verzeichnis /var/lock/subsys/ nicht gefunden werden kann, dann müssen Sie es eventuell manuell erstellen:

user$ mkdir /var/lock/subsys/

Galileo Computing

21.7.6 Installation von Gastsystemen  downtop

Gastsysteme können auf physische Partitionen oder in Imagedateien installiert werden. In beiden Fällen hat man die Wahl zwischen der Verwendung fertiger Systemimages und der manuellen Installation eines Gastsystems. Bei der Installation auf physischen Partitionen empfiehlt sich die Verwendung von evms. Das schafft nicht nur mehr Übersicht, sondern ermöglicht auch Partitionssnapshots der Gastsysteme, so dass eine besonders einfache Wiederherstellung möglich ist.


Galileo Computing

21.7.7 Gast-Linux installieren auf einer virtuellen Maschine  downtop

Es gibt grundsätzlich zwei Möglichkeiten, ein Gastsystem zu installieren:

  • In ein eigenes reales Dateisystem
  • In eine Image-Datei in das Dateisystem des Xen-Wirtsystems

In ein eigenes reales Dateisystem installieren

Ist auf der Festplatte noch Platz für weitere Partitionen, kann ein Linux für eine virtuelle Maschine ganz normal von bootfähiger CD in diese freien Bereiche installiert werden. Der Bootmanager darf allerdings NICHT in den MBR geschrieben werden, da ja XEN das virtuelle Linux startet, nicht GRUB. Für weitere VMs kann das so von CD installierte System kopiert werden.

Um ein /-Dateisystem-Image mit 1 GB und ein Swap-Image mit 256 MB zu erzeugen, ist folgendes einzugeben:

mkdir /var/images 
dd if=/dev/zero of=/var/images/vm1disk bs=1024k count=1024 
dd if=/dev/zero of=/var/images/vm1swap bs=1024k count=256 
mkfs.ext3 /var/images/vm1disk && mkswap /var/images/vm1swap

Mit count=''Zahl'' wird die Größe des Images im MB definiert. Das erstellte Image binden Sie in das UNIX-Dateisystem mit:

mkdir /mnt/disk 
mount -o loop /var/images/vm1disk /mnt/disk

Nun kann ein Betriebssystem in die Image-Datei kopiert werden. Ich möchte im Folgenden Debian als virtuelle Maschine einrichten. Hierzu nutze ich debootstrap.

Das Programm debootstrap muss natürlich auf dem XEN-System installiert werden:

user$ sudo apt-get install debootstrap

Nach der Einbindung eines Images in das Dateisystem wird z. B. ein Debian-Linux installiert mit:

user$ debootstrap --arch i386 sarge /mnt/disk 
 
http://debian.tu-bs.de/debian/

Hierbei ist die Quelle mit http:// nach eigenen Wünschen anzupassen.

Ist das Image nun erfolgreich erzeugt, kann dieses als Vorlage für weitere virtuelle Maschinen dienen. Für eine neue VM wird diese Datei einfach kopiert und angepasst. Dazu wechseln bitte zunächst aus Sicherheitsgründen in eine chroot-Umgebung

user$ chroot /mnt/disk /bin/bash

Anschließend den neuen virtuellen PC über die folgenden Dateien anpassen:

/etc/hostname => Hostnamen eintragen 
/etc/network/interfaces => Netzwerk konfigurieren, z.B. 
 
auto lo 
iface lo inet loopback 
auto eth0 
iface eth0 inet static 
        address 192.168.1.11 
        netmask 255.255.255.0 
        network 192.168.1.0 
        broadcast 192.168.1.255 
        gateway 192.168.1.1 
 
/etc/apt/sources.list => Quellen anpassen 
/etc/fstab => Dies z.B. anpassen wie folgt: 
 
/dev/sda1  /       ext3  errors=remount-ro 0 1 
/dev/sda2 none swap sw                           0 0 
proc          /proc proc  defaults                  0 0

Wie bei dem XEN-Wirtssystem ist auch auf dem Gastsystem abschließend TLS zu deaktivieren

user$ mv /lib/tls /lib/tls.disabled

Nun aus der chroot herausgehen und das Images aus dem Dateisystem entfernen

user$ exit 
user$ umount /mnt/disk

Nach starten der VM brauchen Sie nur noch die Debian-Grundkonfiguration durchzuführen:

user$ base-config

Galileo Computing

21.7.8 VM starten  downtop

Die Beispiel-Konfigurations-Datei /etc/xen/xmexample1 ist zu kopieren und anschließend an die eigene Umgebung anzupassen.

Beispiel der Einträge:

kernel = "/boot/vmlinuz-2.6.12-xenU" 
## RAM-Speicher Zuweisung (in Megabyte) für die neue Domain 
memory = 128 
## Name des virtuellen Servers 
name = "xenvm1" 
### Liste von zugewiesenen Partitionen oder Imagedateien 
## Eintrag für oben genannte debootstrap-Beispiel mit Image. 
disk = [ 'file:/var/images/vm1disk,sda1,w', 'file:/var/images 
 
/vm1swap,sda2,w' ] 
## Beispiel für reale Partitionen 
#disk = [ 'phy:hda7,sda1,w', 'phy,sda2,w' ] 
root = "/dev/sda1 ro"

Um eine VM starten zu können, muss, falls dem nicht schon so ist, der Xen-Dämon xend gestartet werden

user$ xend start

Wenn die Konfigurationsdatei z. B. xenvm1 genannt wurde, kann die VM gestartet werden mit

user$ xm create -c xenvm1 vmid=1

Das -c bewirkt, dass man nach dem Start der VM gleich auf der Konsole von dieser landet. Die Boot-Meldungen sollten beim create über den Bildschirm laufen, abschließend sollte der Login-Prompt erscheinen.

Um virtuelle Maschinen automatisch nach einem Reboot des Xen-Wirtssystem zu starten, muss die Konfigurations-Datei in das korrekte Verzeichnis /etc/xen/auto verlinkt werden. Für eine Beispiel-Konfigurations-Datei mit Namen xenvm1 ist folgendes einzugeben:

user$ ln -s /etc/xen/xenvm1 /etc/xen/auto/

Galileo Computing

21.7.9 Administration der virtuellen Maschinen  toptop

Das Haupt-Programm zur Verwaltung von Xens Gast-VMs ist xm. Sie haben es im vorigen Abschnitt schon einmal benutzt, um die VMs zu starten. xm kann aber wesentlich mehr. Zum Beispiel zeigt der Aufruf des Befehls xm list eine Liste aller laufenden VMs an (inklusive des Hosts):

# xm list 
Name        ID Mem(MiB) VCPUs State  Time(s) 
Domain-0  0       64             1      r-----   112.0 
vm1          3      128            1      ------    27.4

Die folgende Tabelle gibt die Bedeutung der einzelnen Punkt wieder. Eine erheblich detailliertere Ausgabe wird durch xm list -l erreicht.


Tabelle 21.3    Übersicht der Ubuntu-Releases
egriff Bedeutung
Name Name der VM
ID Identifikationsnummer der VM
Mem(MiB) Arbeitsspeicherzuweisung in Megabyte
VCPUs Anzahl der zugewiesenen Prozessoren
Status (State) r running – laufend
Status (State) b blockiert
Status (State) p pausierend
Status (State) s shutdown – heruntergefahren
Status (State) c crashed – abgestürzt
Time(s) Verbrauch von CPU-Rechenzeit in Sekunden

Dieses dient dem Zugriff auf die Konsole. Damit erscheint genau das vor einem, was man sehen würde, als wenn man vor einem realen PC sitzen würde. Hierbei benutzen Sie die Identifikationsnummern der VMS, z. B. xm console 3.

Um sich wieder von der VM-Konsole abzumelden, muss bei deutscher Tastatur (CTRL) + (5) eingegeben werden.

Einige Befehle

Mit dem Kommando

user$ xm shutdown <Domänen-Id>

wird das Betriebssystem der VM angewiesen, herunterzufahren. Über das Kommando

user$ xm mem-set <Domänen-Id> <Hauptspeicher>

kann die Speicherzuweisung für eine VM angepasst werden. Soll die Speicherzuweisung auf Dauer verändert werden, ist in der VM-Konfigurations-Datei der Wert memory anzupassen



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






 <<   zurück
  
  Zum Katalog
Zum Katalog: Ubuntu GNU/Linux






Ubuntu GNU/Linux
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 3 Stunden
 Ubuntu-Training
In 28 kostenlosen Video-Lektionen macht Sie Rainer Hattenhauer mit Ubuntu GNU/Linux vertraut.
Zu den Videos

 Buchtipps
Zum Katalog: Ubuntu GNU/Linux - Das Video-Training für Einsteiger und Umsteiger






 Ubuntu GNU/Linux
 Das Video-Training


Zum Katalog: Linux






 Linux


Zum Katalog: Debian GNU/Linux Etch






 Debian GNU/Linux


Zum Katalog: OpenOffice.org 2.0 - Einstieg und Umstieg






 OpenOffice.org 2.0
 Einstieg und Umstieg


Zum Katalog: OpenOffice.org 2.0 - Video-Training






 OpenOffice.org 2.0
 Video-Training


Zum Katalog: Shell-Programmierung






 Shell-Programmierung


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2007
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de