| |
Geschichte der Virtualisierung
Es begann alles Ende der fünfziger Jahre, als
Christopher Strachey sich mit der Rechenzeit beschäftigt und forscht, wie man sie optimal nutzen kann. Zudem dachte er sich die Lösung, dass man Programme auf einer logischen CPU starten kann, wie sie auch auf einer physikalischen CPU gestartet werden. Dies waren die ersten Ideen des Multitaskings. In den darauffolgenden Jahren wurde das Prinzip der Hardware-Virtualisierung verwendet, um bestehende Probleme zu lösen.
Anfang der sechziger Jahre
wurde beim ATLAS Computer der Speicher virtualisiert, um Kosten für Hauptspeicher zu sparen. Die erste virtuelle Maschine entstand durch die Zusammenarbeit von IBM und dem MIT mitte der sechziger Jahre.
Das Potenzial von Virtualisierung erkannte man jedoch erst viele Jahre später. So entstanden in den achtziger Jahren
eine Reihe von VM Produkten unter der Regie von IBM.
Zunächst ging man davon aus, dass nicht alle Hardwarearchitekturen virtualisierbar sind. Vor allem Intelarchitekturen machten Probleme. Dies war jedoch vorüber als 1999 die Firma VMware Inc. zeigte, dass Virtualisierungen auch mit Intelarchitkturen möglich ist.
Was ist Virtualisierung?
Grob gesagt erlaubt Virtualisierung die Aufteilung der Ressourcen eines Computers. Dabei wird dem Nutzer eine abstrakte Ebene zur Verfügung gestellt, die ihn von der eigentlichen Hardware und Rechenleistung vom Betriebssystem abkapselt. Diese logische Schicht wird zwischen Anwender und den Ressourchen eingefügt. Dabei wird dem Nutzer sozusagen vorgemacht, dass er der alleinige Nutzer einer Ressource sei. Die für den Nutzer unsichtbare Verwaltung ist Aufgabe des Betriebssystems.
Die Vorteile der Virtualisierung sind, dass durch Partitionierung mehrere Anwender und Betriebssysteme auf einem physischen System unterstützt werden. Desweiteren sind die virtuellen Maschinen vollständig von anderen virtuellen Maschinen isloiert. Kommt es bei einer Maschine zum Ausfall, sind die anderen davon nicht betroffen. Es können keine Daten auf andere Maschinen ausweichen und somit ist eine Übertragung von zum Beispiel Viren oder Trojanern unmöglich. Das Kommunizieren über die Maschinen ist nur über eine angepasste Netzwerkverbindung möglich.
Die gesamte virtuelle Maschinenumgebung wird in einer Datei gespeichert und ermöglicht dadurch einfaches Sichern, Verschieben und Kopieren. Somit ist ein sehr schneller Datenaufruf möglich.
Virtualisierung von Betriebssystemen
Virtualisierung von Betriebssystemen ist die gleichzeitige Nutzung von mehreren Betriebssystemen auf einer zur Verfügung gestellten Hardwareumgebung. Es gibt verschiedene Arten der Virtualisierungen.
Die Hardware Emulation, die Native Virtualisierung und die Paravirtualisierung:
Bei der Hardware Emulation wird die komplette Hardware eines Computers simuliert und somit die Ausführung von Betriebssystemen ermöglicht, die für andere Prozessoren konzipiert sind.
Die Native Virtualisierung, auch Hardware Virtualisierung genannt, stellt dem Gast-Betriebssystem nur Teilbereiche der physikalischen Hardware in Form von virtueller Hardware zur Verfügung. Diese virtuelle Hardware ist, in Zusammenarbeit mit physikalischen Komponenten, in der Lage einen kompletten PC nachzubilden und ein unverändertes Betriebssystem isoliert auszuführen. Bei dieser Art der Virtualisierung ist es zwingend notwendig, dass das Gastsystem für den CPU Typ ausgelegt ist, der über die physikalische Hardware zur Verfügung steht.
Die Paravirtualisierung bietet nur eine ähnliche Schnittstelle an. Deswegen müssen die Gast-Betriebssysteme abgeändert werden, um mit Paravirtualisierung zu arbeiten. Wesentlich bei dieser Architektur ist der Hypervisor, der die Scheduling-Aufgaben für die Ressourcen der "Virtuellen Maschinen" übernimmt. Alle diese Virtualisierungsansätze arbeiten mit einer Indirektstufe, um eine Schnittstelle, zwischen den Gast-Betriebssystemen und dem Host-Betriebssystem oder der Hardware direkt, zu realisieren.
Was ist VMware
VMware Software ist die führende Virtualisierungsplattform, die von großen und kleinen Unternehmen eingesetzt wird, um die IT-Effizienz zu steigern, Kosten zu senken und schneller auf wechselnde geschäftliche Anforderungen zu reagieren. VMware Infrastructure nutzt die Speicher-, Netzwerk- und Datenverarbeitungsressourcen des Unternehmens, indem die Software virtuelle Dienste aus der physischen Infrastruktur erstellt und so eine bedarfsgerechte Ressourcenzuordnung ermöglicht. Mehr Informationen auf www.vmware.de
VMware Standards
Mit der Virtualisierungskomponente Hypervisors kann die Partitionierung von Computer-Systemen durchgeführt werden. Zum Beispiel die Partitionierung von CPU oder Speicher. Aufgrund der Entwicklung und der Verbesserung der Hardware kann die Hypervisor-Funktion in einem alleinstehenden Software-Layer untergebracht werden.
VMware trägt mit dem bestehenden Framework aus Schnittstellen - den sogenannten Virtual Machine Hypervisor-Schnittstellen (VMHI) - das auf den wirtschaftlich erfolgreichen Virtualisierungsprodukten basiert, dazu bei, die Entwicklung dieser Standards in einer industrieneutralen Weise zu unterstützen. Diese Frameworks und Schnittstellen werden nun beschrieben.

Hypercall-Schnittstelle
In einer virtualisierten Umgebung geben die Betriebssysteme Hardware-Anweisungen aus, welche durch die Virtualisierungssoftware entgegengenommen werden. Es kann jedoch von Nutzen sein, wenn das Betriebssystem mit der darunterliegenden Virtualisierungssoftware kommunizieren kann. Die Hypercall-Schnittstelle beschreibt den Mechanismus für das Zustandekommen einer solchen Kommunikation. Mittels dieser Anweisungen kann die Software die Computerressourcen effektiv nutzen und Aufgaben übernehmen, die innerhal der virtuellen Maschine ausgeführt werden. Zum Beispiel das Verwalten von Speicherressourcen
Management-Schnittstelle
Mit dieser Schnittstelle ist es möglich der Management Software die Bereitstellung, Steuerung und Überwachung von in unterschiedlichen Virtualisierungsumgebungen ausgeführten Maschinen durchzuführen. Das Gute dabei ist, dass die Management-Software von allein anfallende Aufgaben im Rechenzentrum ausführt. Daraus folgen niedrigere Kosten und eine höhere Zuverlässigkeit.
Virtuelle Festplattenschnittstelle
Diese Schnittstelle wird von allen Virtualisierungsplattformen verwendet. Die virtuellen Festplatten enthalten die normalerweise "sichtbaren" und vom Betriebssystem einer virtuellen Maschine genutzten Festplatten. Die Festplatten können auf eine vielfache Weise in verschiedene Speichersysteme gespeichert werden, wie zum Beispiel auf einem Netzwekspeicher oder als Datei im Host-Betriebssystem. Dank gemeinsamer Formate ist es möglich, dass man die gleichen Tools für Backups, Patch-Management und Migration virtueller Maschinen verwenden kann. Die Anzahl der vorhandenen Lösungen steigt stetig auf dem Markt an. Zudem kann man durch die Formate auch Speichersysteme auf virtuellen Festplattendaten optimieren.
Voraussetzungen für Virtualisierung
Eine Virtuelle Maschine besteht aus mehreren Komponenten: Die vier Grundkomponenten sind die CPU, der Speicher, die Festplatte und eine Netzwerkkarte, welche für die jeweiligen virtuellen Maschinen aufgeteilt werden..
Dabei dient die CPU zur Ressourcenreservierung und -limitierung, welcher an die physische CPU angebunden ist. Beim Speicher kann man die größere variabel einstellen, wobei die Kapazität des Hauptspeichers nicht überschritten werden sollte. Ebenfalls wie die CPU dient der Speicher auch zur Ressourcenreservierung und -limitierung. Die Festplatte wird als ein Dateiimage bereitgestellt, wobei verschiedene Controller möglich sind, wie IDE oder SCSI. Die Netzwerkkarte ist über virtuelle Switchs verbunden, wodurch die virtualisierte Hardware mit den benötigten Treibern für das Gastsystem zur Verfügung gestellt werden.
Einsatzbeispiele
Virtualisierung findet im Desktopbereich sowie im Serverbereich Anwendung, wofür hier jeweils ein Beispiel erläutert wird:
Desktop
In der Desktopanwenung findet Virtualisierung statt, wenn man weitere Betriebssysteme auf dem System ausführen möchte.
Dazu benötigt man den kostenlosen VMware Player.
Dieser konfiguriert ein virtuelles Gastsystem auf dem Rechner
mit einerm Linux oder Windows Betriebssystem vor. Dabei werden die Nutzung von lokalen Komponenten, wie Floppy, CDROM oder USB unterstützt. Ebenfalls können verschiedene Netzwerkszenarios durchgeführt werden, wie Host-only, Bridged, NAT usw. Es können wie bisher Ordner freigegeben werden, um vom Wirtssystem darauf zuzugreifen (alternativ Sambaserver).
Das Erstellen und Konfigurieren von virtuellen Gastsystemen ist jedoch nur mit der kostenpflichtigen VMware Workstation möglich. Dieses geht nicht mit dem dem VMware Player. Mit der Workstation können Sicherungen von verschiedenen Installationsstufen gemacht werden und Anwendungen entwickelt und evaluiert werden.
Server
Um Server zu virtualisieren, benötigt man das kostenfreie Programm VMware Server. Dieses ist sowohl auf Linux- als auch auf Windowsbetriebssystemen lauffähig und weist keinerlei Einschränkungen in der Hardwareunterstützung auf. Der Zugang erfolgt über die Managementsoftware (Konsole) oder über ein Web-Portal, welches von jedem Arbeitsplatz aus erreichbar ist. Die Umleitung von lokalen Geräten, wie Floppy oder CDROM ist kein Problem. Mit diesem Programm kann man Anwendungen entwickeln und evaluieren. Auch die Snapshot-Technik für das Sichern verschiedenen Installationsstufen ist vorhanden. Bedingt ist es auch zur Serverkonsolidierung geeignet.
Ein Beispiel:
Angenommen Sie haben einen AMD64 Dual Core 4200x mit 4GB RAM und 240GB HDD (SATA). Als Betriebssystem läuft Linux.
Es wären bis zu 20 virtuellen Maschinen verfügbar, wobei 3 bis 6 gleichzeitig aktiv sein können. Als Beispiel können Sie Windows XP oder aber Windows 2003 auf den virtuellen Maschinen laufen lassen. Diese können Sie dazu nutzen, um zum Beispiel Testinstalltionstechnologien oder andere Testsysteme darauf laufen zu lassen ohne dass es für Sie eine Gefährund des Wirtssystems darstellt.

Desweiteren gibt es noh das kostenpflichtige VMware ESX Server welches zur Konsolidierung von Anwendungen und Infrastruktur-Services für Niederlassungen und Rechenzentren auf wenigen Servern (Enterprise-Klasse) dient. Ebenso kann man hiermit Blade Server virtualisieren. Man kann eine verbesserte Auslastungsrate für x86-Server von bis zu 60 % bis 80 % erreichen. Dadurch werden die Gesamtberiebskosten. Durch eine maximale Hardwareauslastung werden Systeme nicht nur hald genutzt, wodurch sich die Anzahl der Server verringert. Die Bereitstellung von Programmen sinken auf nur wenige Sekunden und die Reaktionszeit auf Änderungsanforderungen betragen nur noch Minuten.
Eine weitere kostenpflichtige Virtualisierungssoftware ist VMware Infrastructure. Mit dieser Virtualisierungssoftware können die eine komplette IT-Infrastruktur optimieren und managen. Durch die virtualisierung von Server, Speicher und Netzwerke ermöglichen Sie die Verwendung von mehreren unmodifizierten Betriebssystemen und deren Anwendungen. Das Paket beinhaltet umfassende Funktionen für die Virtualisierung, Management, Ressourcenoptimierung, Anwendungsverfügbarkeit und operative Automatisierung.
Die Hardware-Auslastung kann bis zu 50 % bis 70 % gesteigert werden, wobei die Kosten für Hardware und Software gesenkt werden.
|