Protokoll Treffen 26. 1. 2006
Ulrich Rieke
ulrich.rieke at onlinehome.de
Fr Jan 27 21:02:58 CET 2006
Hallo Tuxe,
im Folgenden kurz das Wichtigste zum Lugravtreffen am 26. 1. 2006
um 19 Uhr in der Schule am M�llerstift in Brackwede :
1)Erfreulicherweise konnten in einem Kreis von 12 Anwesenden 3 neue
Besucher begr��t werden, so dass sich jeder , der
Gruppentradition entsprechend, einmal kurz vorstellte.
2)Rasch konnte man sich darauf einigen, dass das n�chste Treffen in
14 Tagen aller Voraussicht nach wiederum in der Schule am
M�llerstift stattfinden kann.
3)Im Mittelpunkt des Abends stand der Vortrag von Peter Voigt �ber
Xen. Damit besteht die M�glichkeit, mehrere Betriebssysteme
parallel laufen zu lassen. Insgesamt gibt es eine F�lle von
Ans�tzen, verschiedene Betriebssystem- und auch
Hardwarearchitekturen gewisserma�en nachzuahmen. Xen wurde im
Computer Laboratory der University of Cambridge entwickelt, sein
Umfeld ist noch nicht ganz klar.
Um zu erl�utern, welche verschiedenen Ans�tze es gibt, um sich
unterschiedliche Architekturen verf�gbar zu machen, stellte Peter
ein Schichtenmodell eines Rechnersystem mit ( von "innen" nach
"au�en" Treiber, Kernel , Bibliotheken , Systemdiensten und
Anwendungen ) vor. Man kann nun auf unterschiedlichen Schichten
aufsetzen: so kann man versuchen , Hardwaretreiber zu portieren,
sie ggf. zu simulieren oder, je nach vorhandener Codebasis ,
auch ein Reengineering vorzunehmen. Schlie�lich bleibt noch die
M�glichkeit, einen vorhandenen Treiber mit einem Wrapper zu
umgeben.
Setzt man auf der Kernelebene auf, so werden sogenannte Co-Kernel
wie etwa CoLinux eingesetzt.
Ferner kann man API's auf der Ebene der Systembibliotheken
portieren, man ist dann dadurch in der Lage , Software auf
unterschiedlicher Hardwarebasis auf der "Bibliotheksschicht" laufen
zu lassen. Dieser Ansatz erfreute sich in den vergangenen Jahren
gro�er Beliebtheit, Beispiele sind etwa die Virtual Machine von
Java oder die von Perl 6 mit Namen Parrot.
Geht man in der genannten Schichteinteilung weiter nach au�en, so
kann man auch Betriebssystempartitionen auf der Ebene der
Systemdienste anlegen und so etwa bei Einbr�chen in das System von
au�en unter bestimmten Umst�nden Partitionen lauff�hig erhalten.
Konzeptionell handelt es sich dabei um eine �nderung der
Systemdienste.
Geht man in die Anwendungsschicht, so gibt es sogenannte userland
kernel oder auch Hardwareemulationen. Bei Letzterem wird somit
Hardware als Anwendungsprogramm simuliert, darauf l�uft dann ein
Betriebssystemkernel mit einem beliebigen Betriebssystem, was einen
Parallelbetrieb und Multitasking erlaubt. Ein Beispiel daf�r ist
Qemu. Daneben gibt es Ans�tze zur Softwarevirtualisierung wie etwa
UsermodeLinux; hier l�uft ein Linuxkernel wie ein
Anwendungsprogramm und darauf ein Linuxsystem.
Nach dieser Einf�hrung zu verschiedenen Ans�tzen des Zugangs zu
Hardware- und OS-Umgebungen stellte Peter dann Xen vor. Dabei
handelt es sich um einen Ansatz zur Paravirtualisierung. Xen l�sst
es zu, dass mehrere Kernel unabh�ngig voneinander im
Parallelbetrieb laufen, zus�tzlich gibt es , gewisserma�en als
Schicht "darunter", einen sogenannten Monitor und eine Nulldomain.
Bei Xen gibt es eigene Prozess- und Speicherr�ume f�r die
verschiedenen Kernel, allerdings muss beachtet werden , dass hinter
Monitorschicht und Nulldomain auch ein Kernel steht. Vorstellbar
ist es, so Peter, dass bei einem Einbruch in ein System oder bei
einer DoS-Attacke jeweils nur eine Kernelinstanz lahmgelegt werde
und so , etwa f�r einen Internet Provider, zus�tzliche
Systemsicherheit geschaffen werden k�nne. Xen lasse es zu, dass im
laufenden Betrieb Kernel ausgetauscht werden.
Bei Xen sei Treibersoftware in die Nulldomain integriert, es gibt
einen Xen Daemon namens xend, mit dem es m�glich ist , Gastsysteme
zu starten, sowie eine Anwendung namens xm als
Benutzerschnittstelle. In den Gastsystemen laufen dann User
Domains.
Beim Bootprozess startet grub den Xenmonitor, dieser l�dt den
Kernel der Nulldomain, die dann ihr Betriebssystem hochf�hrt und
den Xen Daemon xend l�dt. �ber die Anwendungsschicht der Nulldomain
wird dann mit xm das Gastsystem gestartet. Ein vorhandenes System
kann gewisserma�en zum Wirtssystem gemacht werden ; um dies zu
erm�glichen, gibt es etwa bei Debian bereits fertige Pakete. Nach
Start des Xenkernel �ber grub k�nnen Gastsysteme installiert
werden, etwa �ber chroot. Nach der Installation k�nnen �ber eine
Configfile dann noch sp�ter Einstellungen nachgeholt werden.
Anfangs m�sse man , so Peter, mit einer F�lle von Fehlermeldungen
beim Booten rechnen. Die Performance k�nne man verbessern, indem
man einige Bibliotheken verschiebe. Aus Sicherheitsgr�nden k�nne
man den Zugriff auf den Xen Daemon von au�en sperren.
Peter wies darauf hin, dass es in den Userdomains unter Xen keinen
X-Server gebe. PCI-Karten werden von Xen nicht virtualisiert. Dies
geschieht hingegen mit Block Devices und Konsolen.
Ein echtes mehrfaches read-write ist nicht m�glich, weil
schlie�lich der Xenkernel sich gewisserma�en "alleine w�hnt" und
dies im Rahmen seiner kerneltypischen Synchronisierungsfunktion
verhindert.
Peter zeigte schlie�lich die Configfile von Xen und stellte die
Optionen der Benutzerschnittstelle xm vor:
So kann man mit
xm list die Userdomains zeigen ,
xm create userdomain eine neue Domain anlegen,
xm shutdown userdomain eine D. schlie�en,
xm migrate <ipaddresse> userdomain ein System �ber das Netz
verschieben, was allerdings voraussetzt, dass dasselbe
Filesystem vorliegt.
Xen erlaubt es, Kernel und Hardware live auszutauschen. So kann
man etwa Hardware gleichm��ig auslasten. Man hat die M�glichkeit,
andere Systeme kennenzulernen und ggf. weiterzuentwickeln und kann
mit mehreren Betriebssystemen ohne Reboot arbeiten.
Von Frank wurde darauf hingewiesen, dass Hardwarefirmen wie Intel
die Xen-Entwicklung mit viel Geld unterst�tzt haben, um die
Hardwarevirtualisierung voranzubringen.
Schlie�lich f�hrte Peter Xen konkret im Einsatz vor. Er startete
insgesamt 4 Kernelinstanzen und nutzte eine davon , um �ber
vncviewer und Webmin letztendlich Skolelinux zu starten, so dass sehr
eindrucksvoll deutlich wurde, wie eine eigenst�ndige Umgebung als
Gastsystem gestartet werden kann.
Zum Schluss verteilte Peter noch eine Linkliste mit weiterf�hrenden
Informationen zum Thema:
Vielen Dank an Peter f�r diese sehr anschauliche Darstellung eines
schwierigen Themas, bei dessen Darstellung letztendlich die
"Systemanatomie" aufgebohrt werden muss, um darzustellen, wie die
verschiedenen Virtualisierungs- und Simulationsans�tze arbeiten!
4)Zum Schluss wurden kurz noch Fragen gestellt. So wurde �ber
Probleme beim Brennen von DVD's mit k3b berichtet. Leider lagen
keine konkreten Fehlermeldungen vor, so dass die Runde hier nicht
konkret weiterhelfen konnte.
Auch ein Problem in der Umlautdarstellung im Desktop bei Kubuntu
konnte bei bereits fortgeschrittener Zeit nicht abschlie�end gel�st
werden. Ein letzter Interpretationsansatz war, dass evtl. die
Codepages des Kernels nicht stimmen.
So, dies war aus meiner Sicht das Wesentliche des letzten Treffens.
Wie immer bitte ich um Kommentare und bestimmt auch notwendige
Korrekturen, die letztendlich dazu dienen k�nnen, ein Thema ggf.
noch weiter zu vertiefen.
Macht's gut, bis bald, viele Gr��e!
Ulrich