Hypervisor

Ein Hypervisor ist die Software, die Virtualisierung möglich macht. Er sitzt zwischen der Hardware und den virtuellen Maschinen, teilt Prozessorkerne, Arbeitsspeicher, Speicher und Netzwerk auf und sorgt dafür, dass keine Maschine auf die Ressourcen einer anderen zugreifen kann. Ein anderer Name ist Virtual Machine Monitor (VMM).

Der Rechner, auf dem der Hypervisor läuft, heißt Host oder Wirt, die virtuellen Maschinen darauf Gäste.

Typ 1 und Typ 2

Die Einteilung geht auf einen Aufsatz von Gerald Popek und Robert Goldberg aus dem Jahr 1974 zurück, der die Bedingungen für Virtualisierung formal beschrieb.

Typ 1 (Bare Metal)Typ 2 (Hosted)
Läuft aufdirekt auf der Hardwareals Programm auf einem Betriebssystem
EinsatzServer im Rechenzentrum, CloudArbeitsplatzrechner, Test und Entwicklung
Leistunghoch, wenig Zwischenschichtgeringer, das Wirtsbetriebssystem kostet mit
Ausfall des Wirtskein Wirtsbetriebssystem, das abstürzen kannstürzt das Betriebssystem ab, stürzen alle Gäste mit
Verwaltungeigene Verwaltungsoberfläche, oft zentral für viele Hostsim Programmfenster

Die Grenze ist in der Praxis unscharf. Der in den Linux-Kern eingebaute Hypervisor KVM macht aus einem normalen Linux-System einen Typ-1-Hypervisor, obwohl auf demselben Rechner ein vollwertiges Betriebssystem läuft. Bei anderen Lösungen läuft das Verwaltungssystem selbst als privilegierter Gast.

Verbreitete Hypervisoren

HypervisorHerkunftGrundlageTypischer Einsatz
VMware ESXiVMware, seit 2023 Teil von Broadcomeigener KernUnternehmensrechenzentren, lange Marktführer
Hyper-VMicrosoftRolle in Windows Server, auch in Windows-ArbeitsplatzversionenUmgebungen mit Windows-Servern
KVMOpen Source, Teil des Linux-KernsLinuxClouds, Hoster, Grundlage vieler anderer Produkte
Proxmox VEProxmox Server Solutions, Wien; Open SourceDebian Linux mit KVM, dazu Containerkleinere und mittlere Umgebungen, Hoster
Nutanix AHVNutanixKVMhyperkonvergente Systeme, bei denen Rechner und Speicher in einem Verbund laufen
XenOpen Sourceeigener Kern mit privilegiertem VerwaltungsgastClouds und Hoster, früher weiter verbreitet

Seit der Übernahme von VMware durch Broadcom und den geänderten Lizenzmodellen wechseln viele Betreiber zu Proxmox VE, Nutanix oder anderen Lösungen auf Basis von KVM.

Was ein Hypervisor tut

Prozessor. Er verteilt die Rechenzeit der physischen Kerne auf die virtuellen Kerne der Gäste. Dank Virtualisierungserweiterungen im Prozessor laufen die meisten Befehle der Gäste direkt auf der Hardware; nur bestimmte Befehle fängt der Hypervisor ab.

Arbeitsspeicher. Jeder Gast sieht einen eigenen, zusammenhängenden Speicher. Der Hypervisor bildet ihn auf den physischen Speicher ab. Manche Hypervisoren teilen identische Speicherseiten zwischen Gästen oder vergeben mehr Speicher, als physisch vorhanden ist (Overcommitment).

Geräte. Gäste sehen virtuelle Netzwerkkarten, Festplatten und Grafikkarten. Für hohe Leistung lassen sich physische Geräte auch direkt an einen Gast durchreichen (Passthrough), etwa Grafikkarten für KI-Anwendungen.

Netz. Ein virtueller Switch im Hypervisor verbindet die Gäste untereinander und mit dem physischen Netz.

Live-Migration

Hypervisoren in einem Verbund können eine laufende virtuelle Maschine von einem Host auf einen anderen verschieben, ohne sie anzuhalten. Der Arbeitsspeicher wird im Hintergrund kopiert, am Ende wird die Maschine für Sekundenbruchteile angehalten und auf dem neuen Host fortgesetzt. So lassen sich Server warten, ohne die Dienste darauf zu unterbrechen.

Sicherheit

Der Hypervisor ist die Grenze zwischen den Gästen. Gelingt es einem Angreifer, aus einer virtuellen Maschine auszubrechen (VM Escape), hat er Zugriff auf alle anderen Maschinen auf dem Host. Solche Lücken sind selten, aber besonders schwerwiegend. Hypervisoren und ihre Verwaltungsoberflächen gehören deshalb zu den Systemen, die zuerst aktualisiert werden müssen und nur aus einem getrennten Managementnetz erreichbar sein sollten. Für Ransomware-Angreifer sind sie ein bevorzugtes Ziel: Wer den Hypervisor verschlüsselt, legt alle Server darauf auf einmal lahm.

Abgrenzung

KVM. Der Linux-Hypervisor heißt Kernel-based Virtual Machine. Im Rechenzentrum steht KVM auch für Keyboard, Video, Mouse: einen Umschalter, über den sich mehrere Server mit einer Tastatur und einem Bildschirm bedienen lassen. Beides hat nichts miteinander zu tun.

Emulator. Ein Emulator bildet einen anderen Prozessortyp in Software nach, etwa um Programme für eine fremde Architektur auszuführen. Das ist deutlich langsamer. Ein Hypervisor dagegen lässt Gäste auf dem gleichen Prozessortyp direkt laufen.

Erstellt: