QEMU,KVM,libvirt: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=QEMU=
= QEMU =
*Emulationsprogramm QEMU
* Emulator
*emuliert verschiedene CPUs und elementare Hardware Komponenten Rechners
* Emuliert verschiedene CPU-Architekturen und elementare Hardware-Komponenten
*kann auch fremde CPUs emulieren
* Unterstützt vollständige Emulation fremder Architekturen (z. B. ARM, MIPS)
*Ist dann aber sehr langsam
* Ohne Hardwarevirtualisierung (KVM) sehr langsam
=KVM=
 
*genau genommen nur die Kernelmodule
= KVM =
*Erst in Kombination mit anderen Komponenten wird daraus eine Virtualisierungslösung
* Kernel-Module zur Hardwarevirtualisierung (seit 2007 im Linux-Kernel enthalten)
*Typ 2 Hypervisor
* Typ-1 Hypervisor (umstritten, Red Hat klassifiziert als Typ-1)
*Hardware Virtualisierung INTEL-VT und AMD-V
* Nutzt Intel VT-x / AMD-V für native Ausführung von Gastbetriebssystemen
*Paravirtualisierung mit virtio-Treibern
* Unterstützt Paravirtualisierung über VirtIO
*Hostsystem nur Linux
* Läuft nur unter Linux als Host
*Guestsysteme Linux, Windows, BSD usw.
* Unterstützt Linux, Windows, BSD uvm. als Gäste
=KVM und QEMU=
 
*KVM ist ein relativ kleines Kernelmodul
= KVM + QEMU =
*IN Kombination mit QEMU wird KVM zu einem Hardware-Virtualisierungssystem.
* KVM stellt die Virtualisierungsfunktionen bereit (CPU, RAM)
=KVM Detail=
* QEMU übernimmt die Geräteemulation (Netzwerk, Grafik, Peripherie)
*Grundlegende Funktionen wie die Speicher-, Prozessverwaltung etc sind direkt im Virtualisierungssystem implementiert
* Zusammenspiel ergibt ein vollständiges Virtualisierungssystem
*KVM auf die im Linux Kernel vorhandenen Funktionen zurück.
* Kombination bietet vollständige und paravirtualisierte Virtualisierung
*Besonders schlanken Virtualisierungssystem durch aufsetzen an den optimierten Linux Kernel
 
*führt standardmäßig eine vollständige Virtualisierung durch
= KVM Architekturdetails =
*Gäste brauchen keine angepassten Treiber
* KVM nutzt vorhandene Linux-Kernel-Funktionen (Speicherverwaltung, Scheduler)
*Unterstützt aber auch paravirtualisierte Treiber (virtio)
* Sehr schlankes Virtualisierungssystem durch Integration in den Kernel
*KVM-Funktionen werden über die Device-Datei /dev/kvm genutzt
* Gäste benötigen keine angepassten Kernel
*Es reicht aus Mitglied der Gruppe kvm zu sein.
* Optional: VirtIO-Treiber verbessern die Performance
=Native Linux KVM Tool=
* Zugriff auf KVM über die Device-Datei /dev/kvm
*soll QEMU ersetzen
* Nutzer in der Gruppe "kvm" dürfen virtuelle Maschinen starten
*schlankerer Ansatz
 
*https://github.com/kvmtool/kvmtool
= libvirt =
*Project ist scheinbar nicht mehr aktiv
* Verwaltungsschicht und API für Virtualisierungssysteme
Aus welchen Bestandteilen besteht die Kernel-based Virtual Machine?
* Unterstützt verschiedene Backends (KVM, QEMU, Xen, VMware...)
Das Gesamtpaket KVM besteht aus mehreren Komponenten:
* Ermöglicht Steuerung über CLI und GUI (z. B. virt-manager)
=libvirt=
* Standardlösung für viele KVM-basierte Virtualisierungsumgebungen
*Programmierschnittstelle (API) zur Ansprache der virtuellen Maschinen.
 
*Man kann diese steuern und verwalteten werden.
= VirtIO =
*Kommandozeilen und grafische Werkzeuge
* Paravirtualisierte Treiber für Gäste
*Mit libvirt kann man auch andere VM System steuern (XEN, VMware ...)
* Ermöglicht schnellen Zugriff auf Netzwerk, Speicher und weitere Ressourcen
* Gäste ohne VirtIO-Unterstützung müssen die Treiber nachinstallieren
 
=Präsentation=
*https://hedgedoc.xinux.net/p/an_TShg2i#/8
[[Kategorie:Virtualisierung]]

Aktuelle Version vom 12. Oktober 2026, 09:12 Uhr

QEMU

  • Emulator
  • Emuliert verschiedene CPU-Architekturen und elementare Hardware-Komponenten
  • Unterstützt vollständige Emulation fremder Architekturen (z. B. ARM, MIPS)
  • Ohne Hardwarevirtualisierung (KVM) sehr langsam

KVM

  • Kernel-Module zur Hardwarevirtualisierung (seit 2007 im Linux-Kernel enthalten)
  • Typ-1 Hypervisor (umstritten, Red Hat klassifiziert als Typ-1)
  • Nutzt Intel VT-x / AMD-V für native Ausführung von Gastbetriebssystemen
  • Unterstützt Paravirtualisierung über VirtIO
  • Läuft nur unter Linux als Host
  • Unterstützt Linux, Windows, BSD uvm. als Gäste

KVM + QEMU

  • KVM stellt die Virtualisierungsfunktionen bereit (CPU, RAM)
  • QEMU übernimmt die Geräteemulation (Netzwerk, Grafik, Peripherie)
  • Zusammenspiel ergibt ein vollständiges Virtualisierungssystem
  • Kombination bietet vollständige und paravirtualisierte Virtualisierung

KVM Architekturdetails

  • KVM nutzt vorhandene Linux-Kernel-Funktionen (Speicherverwaltung, Scheduler)
  • Sehr schlankes Virtualisierungssystem durch Integration in den Kernel
  • Gäste benötigen keine angepassten Kernel
  • Optional: VirtIO-Treiber verbessern die Performance
  • Zugriff auf KVM über die Device-Datei /dev/kvm
  • Nutzer in der Gruppe "kvm" dürfen virtuelle Maschinen starten

libvirt

  • Verwaltungsschicht und API für Virtualisierungssysteme
  • Unterstützt verschiedene Backends (KVM, QEMU, Xen, VMware...)
  • Ermöglicht Steuerung über CLI und GUI (z. B. virt-manager)
  • Standardlösung für viele KVM-basierte Virtualisierungsumgebungen

VirtIO

  • Paravirtualisierte Treiber für Gäste
  • Ermöglicht schnellen Zugriff auf Netzwerk, Speicher und weitere Ressourcen
  • Gäste ohne VirtIO-Unterstützung müssen die Treiber nachinstallieren

Präsentation