QEMU,KVM,libvirt: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(→KVM) |
(→KVM) |
||
| Zeile 7: | Zeile 7: | ||
*genau genommen nur die Kernelmodule | *genau genommen nur die Kernelmodule | ||
*Erst in Kombination mit anderen Komponenten wird daraus eine Virtualisierungslösung | *Erst in Kombination mit anderen Komponenten wird daraus eine Virtualisierungslösung | ||
| − | *Typ | + | *Typ 1 Hypervisor (umstritten Red Hat sagt es ist ein Typ 1) |
*Hardware Virtualisierung INTEL-VT und AMD-V | *Hardware Virtualisierung INTEL-VT und AMD-V | ||
*Paravirtualisierung mit virtio-Treibern | *Paravirtualisierung mit virtio-Treibern | ||
Version vom 4. Dezember 2023, 09:15 Uhr
QEMU
- Emulationsprogramm QEMU
- emuliert verschiedene CPUs und elementare Hardware Komponenten Rechners
- kann auch fremde CPUs emulieren
- Ist dann aber sehr langsam
KVM
- genau genommen nur die Kernelmodule
- Erst in Kombination mit anderen Komponenten wird daraus eine Virtualisierungslösung
- Typ 1 Hypervisor (umstritten Red Hat sagt es ist ein Typ 1)
- Hardware Virtualisierung INTEL-VT und AMD-V
- Paravirtualisierung mit virtio-Treibern
- Hostsystem nur Linux
- Guestsysteme Linux, Windows, BSD usw.
KVM und QEMU
- KVM ist ein relativ kleines Kernelmodul
- IN Kombination mit QEMU wird KVM zu einem Hardware-Virtualisierungssystem.
KVM Detail
- Grundlegende Funktionen wie die Speicher-, Prozessverwaltung etc sind direkt im Virtualisierungssystem implementiert
- KVM greift auf die im Linux Kernel vorhandenen Funktionen zurück.
- Besonders schlanken Virtualisierungssystem durch aufsetzen an den optimierten Linux Kernel
- führt standardmäßig eine vollständige Virtualisierung durch
- Gäste brauchen keine angepassten Treiber
- Unterstützt aber auch paravirtualisierte Treiber (virtio)
- KVM-Funktionen werden über die Device-Datei /dev/kvm genutzt
- Es reicht aus Mitglied der Gruppe kvm zu sein.
Native Linux KVM Tool
- soll QEMU ersetzen
- schlankerer Ansatz
- https://github.com/kvmtool/kvmtool
- Project ist scheinbar nicht mehr aktiv
libvirt
- Programmierschnittstelle (API) zur Ansprache der virtuellen Maschinen.
- Man kann diese steuern und verwalteten werden.
- Kommandozeilen und grafische Werkzeuge
- Mit libvirt kann man auch andere VM System steuern (XEN, VMware ...)
VirtIO-Treiber
- Spezielle Treiber für Gastsysteme
- Abgestimmt auf den Hypervisor
- Eine Art Paravirtualisierung
- Ermöglicht schnelleren Zugriff auf Resouren
- Treiber, wenn nicht vorhanden, eventuell auf dem Gastsystem einspielen