Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2006  »  04  »  Der eigene Mini-Mainframe  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

Treiberprobleme

Der Grund für den Textmodus liegt darin, dass der Vesa-Framebuffer-Treiber unter Xen nicht funktioniert. Da der Hypervisor den Kernel im Protected Mode des Prozessors startet, kann der Kernel nicht die Real-Modus-Routinen des VGA-Bios aufrufen, um den Bildschirmmodus einzustellen.

Es gibt weitere Hardwaretreiber, die die Zusammenarbeit unter Xen verweigern. Dazu zählen einzelne Wireless-Treiber sowie die proprietären 3D-Treiber von Nvidia und ATI - die freien Treiber funktionieren. Weiterhin gibt es Probleme mit ISA-Karten, die DMA-Transfers benutzen. Ursache ist oft eine fehlerhafte Umsetzung von physischen in so genannte Maschinenadressen, die in manchen Fällen nicht der Hypervisor, sondern der Treiber leisten muss. Portabel programmierte Gerätetreiber haben damit kein Problem.

Wenn Probleme mit Hardwaretreibern auftreten, funktioniert im besten Fall der Treiber nicht - im schlimmsten Fall stürzt der »dom0«-Kernel ab. Passiert Letzteres nützt die Virtualisierung leider nichts, da der Hypervisor ohne den »dom0«-Kernel hilflos ist - er hat ja keine eigenen Treiber für Tastatur oder Bildschirm, über die man dann eventuell Debugversuche unternehmen könnte.

Kommt es zu einem solchen Absturz, ist es das Einfachste, den schuldigen Treiber zu deaktivieren - in der Regel wird das der letzte sein, von dem man Meldungen zu Gesicht bekam. Die häufigste Ursache ist ein 3D-Treiber für X11 - hier hilft es, einfach im Textmodus zu starten.

Ging alles gut, läuft nun ein Linux System in der »dom0«, welches sich von einem nativen System kaum unterscheidet. Dies ist der Idealfall: Alles funktioniert wie gehabt. Bei genauem Hinschauen sieht man, dass etwa 50 MByte weniger Speicher verfügbar sind, die sich Xen beim Start reserviert.

Die Init-Skripte sollten beim Booten der »dom0« auch Xend gestartet haben. Das ist ein Daemon, der die Kontrolle über andere virtuelle Maschinen innehat. Wenn er läuft, kann man als Root über das »xm«-Tool Informationen über virtuelle Maschinen abfragen, neue virtuelle Maschinen starten, existierende anhalten, migrieren, zerstören und so weiter. Xend ermöglicht auch die Kontrolle über die Menge Arbeitsspeicher, die virtuelle Maschinen zugeordnet bekommen, sowie deren CPU-Priorität.

Einen Überblick über die grundlegenden »xm«-Befehle liefert »xm help«. Informationen über die laufende Xen-Version kann man mit »xm info« erhalten. »dm dmesg« listet die Bootmeldungen des Hypervisors. Der Befehl »xm list« kommt häufig zum Einsatz: Er zeigt eine Liste der laufenden virtuellen Maschinen sowie deren Speicherbelegung an. Ein Beispiel ist im Listing 1 zu sehen.

Listing 1: »xm
list«

01 root@tpkurt:~ [0]# xm list
02 Name          ID Mem(MiB) VCPUs State  Time(s)
03 Domain-0      0      364     1 r-----   421.3
04 iSCSI0        1      128     2 ------   111.5

Virtuelle Maschinen

Die Xend-Konfiguration steuert die Konfigurationsdatei »/etc/xen/xend-config.sxp«. Die Netzwerkeinstellungen dort sind normalerweise auf Bridging voreingestellt. »dom0« nutzt dabei eine Linux-Bridge in. Diese Bridge »xenbr0« leitet dabei einfach Netzwerkpakete, die ein Interface einspeist, an alle anderen Netzwerkinterfaces weiter.

Die Einstellung wird dadurch komplizierter, dass Xen die Netzwerkinterfaces beim Starten umbenennt. Aus dem Interface »eth0« wird »peth0«. Die Hardware-(MAC-)Adresse und die IP-Adresse kopiert Xen auf das Interface »veth0« und benennt es in »eth0« um. »veth0« ist intern mit »vif0.0« verbunden, welches an der Bridge hängt, ebenso wie »peth0«. Pakete von Anwendungen in »dom0« gehen über das neue (virtuelle) »veth0« über »vif0.0« an die Bridge »xenbr0« und von dort über das physikalische Interface »peth0« aufs Netzwerkkabel.

Warum die komplizierten Einstellungen? Sobald weitere Domains starten, koppeln einfach weitere virtuelle Interfaces an die Bridge an und haben damit so-

wohl Zugang zum echten Netzwerk als auch zur »dom0«. Abbildung 2 veranschaulicht diese Einstellungen.


Abbildung 2: Die Geräte »(v)ethX« und »vif0.X« sind intern wie eine Pipe verbunden. Der Hypervisor Xen transferiert Pakete vom »eth0« der »domU«s an das Gerät »vifU.0«, welches auch mit der Bridge »xenbr0« verbunden ist. Dadurch kommen Pakete der »domU« sowohl aufs Netzwerkkabel (über »peth0«) als auch in andere Domains.

Bridging ist relativ kompliziert - Xen lässt sich auch so einstellen, dass das Umbenennen der Netzwerkinterfaces entfällt und keine Bridge entsteht, indem man etwa Routing benutzt. Dies ist auch ratsam, wenn ein WLAN-Interface im Spiel ist - Ethernet-Pakete kann man nicht einfach über eine Bridge als WLAN-Pakete versenden, weil die Formate unterschiedlich sind.

In Abbildung 2 ist bereits eine weitere Domain eingezeichnet, die jetzt auch praktisch starten soll. Da ein eigener Kernel gebootet wird, benötigt der auch ein eigenes Dateisystem. Um an ein solches zu gelangen, kommen mehrere Wege in Frage:

  • Wiederbenutzung einer existierenden Installation. Der Admin
    sollte lediglich den paravirtualisierten Kernel nachinstallieren,
    sodass er auch passende Module zum Kernel laden kann - dann
    lässt sich eine vorhandene Linux-Partition unter Xen
    booten.
  • Herunterladen eines existierenden Image. Solche Images lassen
    sich über das Xen-Wiki finden, andere bietet [4] an.
  • Installation auf eine eigene Partition oder in ein Verzeichnis,
    in dem »kernel-xen« anschließend den Kernel
    austauscht und die Installation so in eine Xen.Installation
    verwandelt.
  • Distributionsspezifische Installationsmethoden, beispielsweise
    das Yast-Modul, über welches sich Xen installieren
    lässt.

Die Dateisystemimages sollten immer nur eine virtuellen Maschine gleichzeitig benutzen, sonst droht Datenkorruption, genau wie dies bei echten Maschinen der Fall wäre.

Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Butterbrot-Geschäft Intels Atom-Prozessor 230 und das Atom-Bord D945GCLF
Virtuelle Werkzeuge Nach dem Hype: Die richtigen Tools für effektive Virtualisierung
Senkrechtstarter KVM verzeichnet Geländegewinne
Was ist schon real? PCI-Devices des Hosts an die Kernel Virtual Machine (KVM) durchreichen
Große Kiste, kleine Kosten Der Mainframe-Emulator Hercules
Heißes Eisen Management für virtualisierte Umgebungen mit Virtual Iron
Whitepaper
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele (Folge 2)

Der zweite Teil des Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele White Papers beleuchtet anhand weiterer ausgewählter Case Studies die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
Usage Landscape Enterprise Open Source Data Integration

Die Nachfrage nach Datenintegrationslösungen für Unternehmen ist zunehmend gestiegen und vor allem das Interesse an Open Source Technologien wird immer größer. Doch wie und von wem werden Open Source Datenintegrationslösungen genutzt und welches Nutzungsverhalten lässt sich daraus ableiten? Das vorliegende White Paper präsentiert die Erfahrungswerte von über 1000 Open Source Nutzern und liefert fundierte Antworten auf diese Fragen.

Download PDF (Registrierung erforderlich)
Kommentare (0)