Definition Paravirtualisierung
Paravirtualisierung ist eine Art von Virtualisierung, bei der ein Gastbetriebssystem neu kompiliert, in einer virtuellen Maschine installiert und auf einem Hypervisor-Programm ausgeführt wird, das auf dem Host-Betriebssystem ausgeführt wird. Im Vergleich zur herkömmlichen vollständigen Virtualisierung kann die Paravirtualisierung den Overhead reduzieren und die Systemleistung verbessern.
Virtualisierungstechologien Übersicht:
- 1. Teil: Was ist Virtualisierung & Vergleich von Virtualisierungstechnologien
- 2. Teil: Was ist Hardware Emulation?
- 3. Teil: Was ist Hardware Virtualisierung?
- 4. Teil: Was ist Paravirtualisierung?
- 5. Teil: Was ist Betriebssystemvirtualisierung bzw. Containerisierung?
Besonderheiten
In der Virtualisierung wird eine Ressource durch die Anwendung von Technologien (die Emulation, Maschinensimulation, Hardware- und Softwarepartitionierung umfassen können) in mehrere Ausführungsumgebungen unterteilt.
In Unternehmen wird Paravirtualisierung unter anderem zum Ausführen mehrerer Betriebssysteme auf einem Computer gleichzeitig oder zur Segmentierung großer Systeme in kleinere Teile für einen effizienteren Einsatz physischer Hardware verwendet.
Des weiteren kann die Paravirtualisierung zum Isolieren von Programmen eingesetzt werden, die in einer virtuellen Maschine ausgeführt werden, um sie vor Prozessen zu schützen, die auf einer anderen virtuellen Maschine auf demselben Host stattfinden. Wenn beispielsweise eine virtuelle Maschine ausfällt, können andere virtuelle Maschinen aktiv bleiben.
Vor- und Nachteile
Die Paravirtualisierung wurde entwickelt, um die Systemleistung zu verbessern und den Overhead zu minimieren, wodurch die Unterauslastung von virtuellen Maschinen verhindert wird. Zu den Vorteilen gehören
- einfachere Sicherungen,
- schnelle Migrationen,
- eine verbesserte Systemauslastung,
- Serverkonsolidierung und
- Energieeinsparung.
Obwohl die Technologie Leistungssteigerungen verspricht, sind diese Gewinne oft unberechenbar und schwer vorherzusagen. Die tatsächlichen Leistungsvorteile der Paravirtualisierung hängen nämlich von der Arbeitslast ab. Einige Anwendungen bieten eine bessere Leistung als andere.
Wesentliche Eigenschaften
Die Paravirtualisierung wurde entwickelt, um eine bessere Leistung als die softwaregestützte vollständige Virtualisierung zu erzielen, indem das Betriebssystem die Anwesenheit des Hypervisors erkennen und direkt mit dem Hypervisor kommunizieren kann. Sie stellt außerdem sicher, dass ein Gastbetriebssystem neu kompiliert wird, bevor es auf einer virtuellen Maschine installiert wird.
Im Allgemeinen erfordert die Paravirtualisierung, dass Gastbetriebssysteme geändert werden, um eine API für den Austausch von Befehlen zu implementieren, die vom Hypervisor an den Server gesendet werden. Im Gegensatz zur vollständigen Virtualisierung muss hier keine Hardware für virtuelle Maschinen emuliert werden. Stattdessen wird eine Schnittstelle zur virtuellen Maschine bereitgestellt, die der zugrunde liegenden Hardware etwas ähnlich ist.
Anwendungsbeispiele aus der Praxis
Die Paravirtualisierung ist die Kategorie der CPU-Virtualisierung, bei der Hypercalls für Vorgänge verwendet werden, um Anweisungen zur Kompilierungszeit zu verarbeiten. Dabei ist das Gastbetriebssystem nicht vollständig isoliert, sondern wird von der virtuellen Maschine teilweise von der Virtualisierungsschicht und der Hardware isoliert.
VMware und Xen sind einige Beispiele. Xen ist ein Open-Source-Hypervisor, der auf Paravirtualisierung basiert. Es ist gleichzeitig die beliebteste Anwendung dieser Art.
Fazit
Die Paravirtualisierung stellt sicher, dass alle Gastbetriebssysteme Systemressourcen gemeinsam nutzen. Sie versucht, die Probleme der vollständigen Virtualisierung zu beheben, indem den Gastbetriebssystemen der direkte Zugriff auf die zugrunde liegende Hardware ermöglicht wird. Der Virtualisierungsaufwand wird zwar erheblich verbessert, die Kompatibilität und Portabilität sind jedoch begrenzt.