Virtualisierung

Aus PC-WELT-Wiki

Wechseln zu: Navigation, Suche


Inhaltsverzeichnis

Grundlagen
der Virtualisierung

Viele Anwender setzen bereits Virtualisierungs-Software ein.
Was sich hinter dieser Technik verbirgt und wie sie sich sinnvoll nutzen lässt, erfahren Sie in in diesem Artikel.

Ein virtueller PC besteht nicht aus Hauptplatine, Grafikkarte und RAM, und Sie benötigen auch keinen Schraubendreher, um eine neue Festplatte einzubauen. Stattdessen übernimmt spezielle Software die Aufgabe der Hardware-Komponenten und spiegelt einem Betriebssystem oder einer Anwendung vor, auf einem tatsächlichen PC zu laufen. Wir erklären, wie Virtualisierung funktioniert, wie sie sich einsetzen lässt und was die Zukunft bringen kann.

So funktioniert ein virtueller Rechner

Virtualisierung: Schematische Darstellung von Systemen mit und ohne Virtualisierung
Host-Architektur: VM-Ware Server oder Virtual PC 2004 virtualisieren ein Gast-System auf dem laufenden Host-Betriebssystem

Bei einem virtuellen PC spielt die Hardware-Virtualisierung eine entscheidende Rolle. Bei der Virtualisierung bildet Software unter einem Betriebssystem (Host-System) einen kompletten Rechner mit allen Komponenten nach. Auf diesem läuft das Gast-System. Einem System unter VM-Ware Server stehen unter anderem ein Intel-440-BX-Chipsatz, eine ES1371-Soundkarte (Soundblaster PCI128), eine SVGA-Grafikkarte und eine Pcnet32-Netzwerkkarte zu Verfügung. Erfolgt im Gast-System (dem System innerhalb von VM-Ware Server) ein Zugriff beispielsweise auf das Netzwerk, läuft dieser über einen virtuellen Netzadapter und das Host-System (das System unter dem VM-Ware Server läuft) zur physikalisch vorhandenen Netzwerkkarte. Anwendungen, die direkt unter dem installierten Betriebssystem des Hosts laufen (siehe linken Teil der Grafik "Virtualisierung"), kommunizieren weiterhin über die Treiber dieses Systems mit der Hardware. Eine schematische Darstellung dieser Abläufe sehen Sie in der Grafik „Host-Architektur“.

Mit Virtualisierung: Eine Variante der Virtualisierung stellt die Abbildung „Mit Virtualisierung“ dar. Hier liegt eine Virtualisierungs-Schicht (auch Monitor, Virtual Machine Monitor oder Hypervisor genannt) zwischen Hardware, virtualisierter Hardware und Betriebssystem. Durch den direkten Zugriff auf die Hardware, arbeitet dieses Verfahren effizienter als die Host-Architektur. Es kommt beispielsweise beim VM-Ware-ESX-Server und ähnlich auch beim Open-Source-Projekt Xen (http://www.xensource.com) zum Einsatz.

Diese Vorteile hat Virtualisierung für den Anwender

Der Markt für Virtualisierungs-Produkte ist hart umkämpft. Auch Microsoft hat inzwischen – wenn auch sehr spät – die Zeichen der Zeit erkannt und will mit Virtual Server 2007 dem Platzhirschen VM-Ware Marktanteile abringen. Sie als Anwender profitieren von dieser Entwicklung. Microsoft und VM-Ware bieten einige ihrer Produkte (siehe Seite XX und XX) kostenlos an. Mit einer virtuellen Maschine können Sie sich eine sichere und saubere Surfumgebung einrichten, neue Software probieren oder mit anderen Betriebssystemen experimentieren. Über gebrauchsfertige Images lassen sich entsprechend vorbereitete Systeme und Anwendungen schnell und einfach in Betrieb nehmen. In Zukunft wird es sicher vermehrt Anbieter geben, die Anwendungen auf diese Weise ausliefern. Software, die unabhängig vom Betriebssystem und der tatsächlich installierten Hardware läuft, erspart dem Anwender Ärger bei der Installation und dem Hersteller Support-Kosten.

Das bringt die Virtualisierung in Unternehmen

Virtualisierung spart Geld und gleichzeitig lässt sich viel Geld damit verdienen. Scheinbar ein Widerspruch, aber er lässt sich schnell auflösen: In den meisten Unternehmen stehen viele Server, auf denen die unterschiedlichsten Betriebssysteme und Anwendungen installiert sind. Teilweise laufen Systeme und Software nur auf älterer Hardware, und ein Update ist technisch nicht möglich. Diese Systeme zu warten verschlingt Unsummen, denn Sie brauchen rund um die Uhr zusätzliche Administratoren. Ein ideales Einsatzgebiet für Virtualisierungs-Software: Sie hilft, Geräte einzusparen, so dass man weniger Energie verbraucht, weniger Personal benötigt und die Ausfallsicherheit erhöht. Auf wenigen, besonders leistungsfähigen Servern laufen parallel mehrere Betriebssysteme und die dazugehörigen Anwendungen. Statt in teure Hardware investiert die Firma also in vergleichsweise preisgünstige Software. Die entscheidenden Vorteile sind: Virtuelle Systeme sind von der Hardware weitestgehend unabhängig, lassen sich leicht kopieren, bei Bedarf auf andere Rechner verschieben und sind aufgrund der einheitlichen virtuellen Hardware einfach zu warten.

Virtualisierung mit Hardware-Unterstützung

Gleich welche Methode zur Virtualisierung zum Einsatz kommt, eins ist allen gemeinsam: Einige Befehle, die das Gast-System an die CPU sendet, müssen über die Virtualisierungs-Schicht abgefangen werden. Die Ursache liegt im Design der x86-CPUs. Betriebssysteme dürfen privilegierte CPU-Instruktionen (Ring 0, direkter Zugriff auf Hardware und Speicher) verwenden, Anwendungen dagegen nicht (Ring 3). Ein Problem ergibt sich daraus, dass in der Virtualisierung System und Anwendungen gleichgestellt sind – also beide auf Ring 3 laufen – und bestimmte Befehle sich in Ring 3 anders verhalten als in Ring 0. Da das System in der Annahme programmiert ist, dass es auf Ring 0 läuft, arbeitet es überhaupt nicht oder nur instabil.

Damit die Virtualisierung trotzdem funktioniert, bedienen sich VM-Ware & Co. eines Tricks: Beim Start einer virtuellen Maschine analysiert die Software jeden Befehl und baut ihn so um, wie das Gast-System ihn erwartet. Dank ausgefeilter Mechanismen geht das ausreichend schnell, so dass sich der Leistungsverlust in Grenzen hält. Allerdings sind für jedes Betriebssystem spezielle Anpassungen nötig. Bei Virtual PC und den VM-Ware-Produkten zum Beispiel müssen Sie daher immer das gewünschte Gast-System angeben, wenn Sie einen neuen virtuellen PC erstellen.

Neue CPUs: Das Verhalten der x86-Prozessoren lässt sich aus Kompatibilitätsgründen nicht mehr ändern. Intel und AMD haben sich daher eine Befehlserweiterung ausgedacht, über die ihre CPus die Virtualisierung besser unterstützen und auf Leistung hin optimieren. Bei Intel heißt sie Virtualization Technology (kurz "VT", Codename „Vanderpool“), das Pendant des Konkurrenten ist die AMD Virtualization (kurz AMD-V, Codename „Pacifica“). Enthalten ist die Zukunfts-Technik in den meisten aktuellen Prozessoren, etwa dem Intel Core 2 Duo oder dem Athlon 64 (seit Juni 2006). Microsofts Virtual PC, Parallels Workstation und Xen können die Hardware-Unterstützung schon jetzt nutzen. VM-Ware Produkte verwenden die Befehlserweiterungen bisher nur auf 64-Bit-Systemen. Eine Liste von Prozessoren mit Unterstützung für Virtualisierung finden Sie unter Prozessoren/Virtualisierung.


Begriffswirrwarr: Emulation, Simulation & Co.

Rund um das Thema Virtualisierung begegnen Ihnen häufig Begriffe, die zwar Ähnliches meinen, aber etwas anderes bedeuten. So sind beispielsweise Virtual PC (für Windows) oder VM-Ware-Workstation keine PC-Emulatoren. Wir machen Schluss mit der Verwirrung.

Emulation: Ein Emulator ermöglicht es Betriebssystemen, auf anderen Rechnerarchitekturen zu laufen, als die, für die Sie ursprünglich programmiert wurden. Prominente Vertreter dieser Gattung sind etwa ein C64- oder Playstation-Emulator für den PC. Und Microsofts Virtual PC wird ebenfalls zu einem Emulator, wenn es auf einem Macintosh-System (Power-PC-Prozessor) eine x86-Plattform (Intel Mikroprozessor-Architektur) emuliert.

Simulation: Hier werden lediglich einzelne Befehle aus einem Programm für das jeweilige Zielsystem umgesetzt. Ein Vertreter dieser Klasse ist das Programm Wine (www.winehq.org), dessen Name sinnigerweise „WINE Is Not an Emulator“ bedeutet (rekursives Akronym). Damit lässt sich Windows-Software unter Linux ausführen.

Virtual Machine: Ein enger Verwandter der virtuellen PCs sind JVM (Java Virtual Machine) oder Microsofts .NET Framework. Hier geht es darum, Programmcode unabhängig von einer Plattform auszuführen und Aufrufe von Systemfunktionen (Dateizugriff, Netzwerk) durch die Virtual Machine zu leiten. Auch wenn hier keine Hardware, sondern nur Software virtualisiert wird, ist das Verfahren sehr ähnlich.


Im Überblick: Sofort einsetzbare virtuelle Maschinen ("Appliances")

Programm Kategorie Preis Internet (Download) Sprache
Browser Appliance Gastsystem für VM-Ware gratis http://www.pcwelt.de/b5c (254 MB) englisch
Debian Sarge full Desktop german/deutsch Gastsystem für VM-Ware gratis http://www.pcwelt.de/9bd (962 MB) deutsch
Kanotix Gastsystem für VM-Ware gratis http://www.pcwelt.de/037 (977 MB) deutsch
Microsoft Exchange Server 2007 Gastsystem für Virtual PC gratis http://www.pcwelt.de/e59 (1,4 GB) englisch
Windows Server 2003 R2 Enterprise Edition Gastsystem für Virtual PC gratis http://www.pcwelt.de/016 (1,5 GB) englisch
Windows XP mit IE6 Gastsystem für Virtual PC gratis http://www.pcwelt.de/b87 (500 MB) englisch