Einordnung der Virtualisierungssysteme: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(38 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
−
=Einordnung=
+
=Grundlagen=
−
==Typ-1-Hypervisor==
+
*Ein Hypervisor bildet eine abstrahierende Schicht zwischen der tatsächlich vorhandenen Hardware und den Gast-Betriebssystemen.
−
*nativer oder Bare-Metal Hypervisor
+
*Er erlaubt es, eine virtuelle Umgebung zu definieren.
−
*wird direkt auf der Host-Hardware ausgeführt
+
*Diese dient unabhängig von der tatsächlich vorhandenen Hardware als Basis für die Installation von (Gast-)Betriebssystemen.
−
*Guest-Betriebssysteme zu verwalten
+
*Zwei Arten sind möglich:
−
*Er hat die Rolle des Host-Betriebssystems
+
**Typ-1-Hypervisoren
−
*VM-Ressourcen werden direkt von der Hardware abberufen.  
+
**Typ-2-Hypervisoren
 +
**Es gibt Mischformen.
  
−
[[Datei:kvm-102.jpg|400px]]
+
=Emulation vs. Virtualisierung=
−
==Typ-2-Hypervisor==
+
==Emulation==
−
[[Datei:kvm-103.jpg|400px]]
+
*Bei der Emulation baut das Hostsystem die Plattform des Gastes vollständig in Software nach.
−
*Von Qingqing Chen - Eigenes Werk, Gemeinfrei, https://commons.wikimedia.org/w/index.php?curid=1354683
+
*Das umfasst die Hardware, die CPU-Befehle und die Firmware.
−
=Einordnung nach RedHat=
+
*Jeder Befehl des Gastes wird gelesen und in mehrere Befehle für die echte CPU übersetzt.
 +
*Vorteil: Host- und Gastplattform sind unabhängig, z. B. ein ARM-Gast auf einem x86-Host.
 +
*Nachteil: Dieser Ansatz ist sehr langsam und ressourcenintensiv.
 +
*Beispiel: '''QEMU''' (Quick Emulator) ohne KVM emuliert alles, auch die CPU.
  
−
Dieser Hypervisor-Typ wird häufig in Rechenzentren von Unternehmen oder anderen serverbasierten Umgebungen eingesetzt.
+
==Virtualisierung (hardwareunterstützt)==
 +
*Der Gast-Code läuft direkt auf der echten CPU und wird nicht übersetzt.
 +
*Die CPU muss dies unterstützen: Intel VT-x oder AMD-V.
 +
*Dadurch ist sie fast so schnell wie ein System ohne VM.
 +
*Nachteil: Gast und Host müssen dieselbe Plattform verwenden.
 +
*Beispiel: '''QEMU-KVM''' reicht die CPU an den Gast durch, QEMU emuliert nur noch die Geräte (Festplatte, Netzwerkkarte, Grafik).
  
−
Beispiele für diesen Typ 1 sind KVM, Microsoft Hyper-V und VMware vSphere. KVM wurde 2007 in den Linux Kernel integriert. Wenn Sie also eine moderne Version von Linux verwenden, verfügen Sie bereits über einen solchen Hypervisor.  
+
==Ablauf: VM-Entry und VM-Exit==
 +
*'''VM-Entry:''' QEMU sagt zu KVM „Starte meine VM“ (<code>ioctl(KVM_RUN)</code> auf <code>/dev/kvm</code>). KVM richtet die CPU ein und übergibt ihr den Gast-Code.
 +
*'''Der Gast rechnet allein:''' Millionen Befehle laufen direkt auf der CPU. KVM ist in dieser Zeit gar nicht aktiv.
 +
*'''VM-Exit:''' Will der Gast etwas, das er nicht selbst darf (z. B. Festplatte, Ports, Interrupts), stoppt die CPU ihn und springt automatisch zu KVM zurück.
 +
*KVM erledigt Timer und Interrupts selbst und gibt Gerätezugriffe an QEMU weiter. Danach folgt wieder ein VM-Entry.
 +
*'''Merke:''' KVM steht nicht zwischen jedem Befehl, das wäre wieder Emulation. KVM steht nur am Anfang und bei den Sonderfällen.
 +
;Vergleich Fahrschule
 +
*Der Fahrschüler (Gast) fährt selbst.
 +
*Der Fahrlehrer (KVM) greift nicht bei jeder Lenkbewegung ein, hat aber eine eigene Bremse und übernimmt, sobald es kritisch wird.
 +
*Bei Emulation würde der Fahrlehrer jede Lenkbewegung selbst ausführen.
  
−
Typ 2
+
;Prüfen, ob die CPU Virtualisierung unterstützt
−
Ein Hypervisor vom Typ 2, auch als gehosteter Hypervisor bezeichnet, wird auf einem konventionellen Betriebssystem als Softwareschicht oder Anwendung ausgeführt.
+
grep -m1 -owE 'vmx|svm' /proc/cpuinfo
 +
*<code>vmx</code> = Intel VT-x, <code>svm</code> = AMD-V, keine Ausgabe = im BIOS/UEFI abgeschaltet oder nicht vorhanden.
  
−
Dieser abstrahiert die Guest-Betriebssysteme vom Host-Betriebssystem. VM-Ressourcen werden beim Host-Betriebssystem angefordert und über die Hardware abgerufen.  
+
=Einordnung=
 +
==Typ-1-Hypervisor==
 +
*Nativer oder Bare-Metal-Hypervisor.
 +
*Wird direkt auf der Host-Hardware ausgeführt.
 +
*Verwaltet die Gast-Betriebssysteme.
 +
*Übernimmt selbst die Rolle des Host-Betriebssystems.
 +
*VM-Ressourcen werden direkt von der Hardware abgerufen.
 +
*Einsatz in Rechenzentren von Unternehmen und anderen serverbasierten Umgebungen.
 +
{{#drawio:kvm-hyper-1}}
 +
;Beispiele
 +
*VMware ESXi
 +
*Microsoft Hyper-V
  
−
Ein Typ 2 Hypervisor eignet sich besser für individuelle Nutzer, die auf einem PC mehrere Betriebssysteme ausführen möchten.
+
==Typ-2-Hypervisor==
−
 
+
*Wird auch gehosteter Hypervisor genannt.
−
VMware Workstation und Oracle VirtualBox sind Beispiele für einen Typ 2 Hypervisor.  
+
*Läuft als Anwendung auf einem normalen Host-Betriebssystem.
−
 
+
*Trennt die Gast-Betriebssysteme vom Host-Betriebssystem.
−
Kostenlos in die Virtualisierung einsteigen
+
*VM-Ressourcen werden beim Host-Betriebssystem angefordert und von diesem über die Hardware abgerufen.
−
Container im Vergleich zu VMs
+
{{#drawio:kvm-hyper-2}}
−
Auf den ersten Blick betrachtet, scheinen Container und VMs sehr ähnlich. Bei beiden handelt es sich um paketierte Computing-Umgebungen, die verschiedene IT-Komponenten vereinen und vom Rest des Systems isolieren. Der entscheidende Unterschied liegt in der Skalierung und Portierbarkeit.  
+
;Beispiele
−
 
+
*VMware Workstation
−
Ein Container besteht aus einem oder mehreren Prozessen, die vom Rest des Systems isoliert sind. Der Container erlaubt dem Prozess nur den Zugriff auf die Ressourcenanforderungen, die spezifiziert wurden. Mit diesen Ressourcenbeschränkungen wird sichergestellt, dass der Container auf einem Knoten mit genügend Kapazität ausgeführt werden kann.
+
*Oracle VirtualBox
−
 
 
−
VMs enthalten ihr eigenes Betriebssystem, auf dem sie mehrere ressourcenintensive Funktionen auf einmal ausführen können. Dank der zahlreichen, ihnen zur Verfügung stehenden Ressourcen können VMs ganze Server, Betriebssysteme, Desktops, Datenbanken und Netzwerke abstrahieren, aufteilen, duplizieren und emulieren.  
 
−
 
 
−
Außerdem können Sie auf VMs mit einem Hypervisor mehrere Betriebssysteme ausführen. Container hingegen können nur eine Art von Betriebssystem ausführen. So kann ein Container auf einem Linux-Server zum Beispiel nur ein Linux-Betriebssystem ausführen.
 
−
 
 
−
Container werden zuweilen als äquivalent zum Hypervisor angesehen. Das stimmt nicht ganz, denn Container und Virtualisierung erfüllen unterschiedliche Anforderungen.
 
−
 
 
−
Weiterlesen
 
−
Hypervisoren und die Sicherheit
 
−
Eine VM liefert eine Umgebung, die vom Rest des Systems isoliert ist. Das heißt, all das, was in einer VM ausgeführt wird, kommt nicht mit anderen Daten auf der Hardware in Kontakt.
 
−
 
 
−
Dank dieser Trennung wirkt sich eine infizierte VM nicht auf das gesamte System aus.
 
−
 
 
−
Wenn allerdings der Hypervisor selbst gehackt wird, kann dies Probleme für alle mit ihm verwalteten VMs sowie eine Gefährdung der jeweils darin enthaltenen Daten bedeuten.
 
−
 
 
−
Je nach Typ des Hypervisors können Sicherheitsprotokolle und -anforderungen variieren.
 
−
 
 
−
Warum Red Hat für die Virtualisierung?
 
−
Ein Hypervisor bildet die Basis Ihrer Virtualisierungsplattform. Wir setzen uns schon viele Jahre für die Entwicklung der Virtualisierung ein – durch kontinuierliche Verbesserungen des KVM-Hypervisors sowie unsere Beiträge zu KVM und oVirt, und das seit Gründung der beiden Communities.
 
−
 
 
−
Red Hat® Virtualization ist eine softwaredefinierte Open Source-Plattform, mit der sich Linux- und Microsoft Windows-Workloads virtualisieren lassen.
 
−
 
 
−
Diese Technologie setzt auf Red Hat Enterprise Linux und der KVM auf und enthält Management-Tools, mit denen Ressourcen, Prozesse und Anwendungen virtualisiert werden können. So erhalten Sie eine stabile Basis für eine Zukunft, die sich mit Containern und in der Cloud abspielt.
 
  
−
Mit der schnellen und kostengünstigen Virtualisierung von Red Hat sind Sie für die Herausforderungen von heute besser gewappnet und schaffen gleichzeitig eine Basis für die Technologien von morgen.
+
==KVM (Typ 1)==
 +
*Die KVM-Module (<code>kvm</code>, <code>kvm_intel</code> bzw. <code>kvm_amd</code>) werden in den Linux-Kernel geladen.
 +
*Damit wird der Linux-Kernel selbst zum Hypervisor und sitzt direkt auf der Hardware.
 +
*Jede VM ist ein normaler QEMU-Prozess, den der Kernel wie jeden anderen Prozess einplant.
 +
*QEMU emuliert die Hardware der VM, die CPU reicht KVM durch.
 +
{{#drawio:kvm-hyper-3}}
 +
;Beispiele
 +
*KVM mit QEMU
 +
*Proxmox VE
  
−
Die Virtualisierung mit Red Hat kennenlernen
+
=Anmerkung=
−
Mehr über Virtualisierung erfahren
+
*Red Hat verortet KVM als Typ-1-Hypervisor.
−
Thema: Virtualisierung
+
*Weil Geräte über QEMU im Userspace laufen, wird KVM teilweise auch als Mischform gesehen.
−
Thema: Hyperconverged Infrastructure
 
−
Artikel: Was ist Virtualisierung?
 
−
Artikel: Was ist KVM?
 
−
Artikel: KVM im Vergleich zu VMware
 
−
Artikel: Was ist eine virtuelle Maschine (VM)?
 
−
Artikel: Cloud Computing im Vergleich zur Virtualisierung
 
−
Artikel: Was ist NFV (Network Functions Virtualization)?
 
−
Kostenloses Training
 
−
Virtualization and Infrastructure Migration Technical Overview (RH018)
 
−
Erlernen Sie die Grundlagen der Virtualisierung und Migrationsplanung auf Open Source-Basis.
 
−
Alles, was Sie für die Virtualisierung brauchen
 
−
Red Hat Virtualization logo
 
−
Mehr brauchen Sie nicht. Wirklich nicht. Sie können das Produkt überall installieren (auf Bare-Metal-Hardware, Open Source- oder proprietären Systemen) und Dutzende oder Hunderte von virtuellen Maschinen erstellen − mit einem Hypervisor, der all das bewältigen kann, und einer benutzerfreundlichen Management-Plattform.
 
  
−
Mehr erfahren
+
=Animation=
−
Red Hat Hyperconverged Infrastructure logo
+
*https://labs.xinux.net/hypervisor-schichten.html
−
Verwenden Sie Storage und Virtualisierung zusammen, selbst mit beschränkten Ressourcen. Nutzen Sie dieselbe Server-Hardware wie der Hypervisor und Controller, sodass Sie einen Cluster-Pool aus integrierten Computing- und Storage-Ressourcen erhalten.
 
  
−
Mehr erfahren
+
=Präsentation=
−
Virtualisierung hat noch viel mehr zu bieten
+
*https://hedgedoc.xinux.net/p/Fts3cYoYx#/
−
Jetzt testen
 
−
Sprechen Sie mit Red Hat
 
−
INFO
 
−
Red Hat, weltweit führender Anbieter von Open-Source-Software-Lösungen für Unternehmen, folgt einem community-basierten Ansatz, um zuverlässige und leistungsstarke Linux-, Hybrid Cloud-, Container- und Kubernetes-Technologien bereitzustellen. Mit vielfach ausgezeichneten Support-, Trainings- und Consulting-Services unterstützt Red Hat Kunden bei der Standardisierung in unterschiedlichen Umgebungen, der Entwicklung cloudnativer Anwendungen sowie der Automatisierung, Sicherung und Verwaltung komplexer Umgebungen.
 
  
−
Unternehmensinformation
+
=Quellen=
−
Jobs bei Red Hat
+
*https://www.redhat.com/de/topics/virtualization/what-is-a-hypervisor
−
Standorte
+
*https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/VMware_paravirtualization.pdf
−
Entwicklungsmodell
+
*https://www.datacenter-insider.de/typ-1-versus-typ-2-kvms-und-andere-hypervisoren-a-318394/
−
Veranstaltungen
+
*https://www.os-s.net/publications/thesis/Bachelor_Thesis_Ising.pdf
−
News
 
−
Blog
 
−
Cool Stuff Store
 
−
PRODUKTE
 
−
Red Hat Ansible Automation Platform
 
−
Red Hat Enterprise Linux
 
−
Red Hat OpenShift
 
−
Red Hat OpenShift Data Foundation
 
−
Red Hat OpenStack Platform
 
−
Alle Produkte anzeigen
 
−
TOOLS
 
−
Eigenes Konto
 
−
Kundensupport
 
−
Für Partner
 
−
Für Entwickler
 
−
Training & Zertifizierung
 
−
Red Hat Ecosystem Katalog
 
−
Bibliothek
 
−
TESTEN, KAUFEN, VERKAUFEN
 
−
Red Hat Store
 
−
Vertrieb kontaktieren
 
−
Schulungsteam kontaktieren
 
−
Consulting kontaktieren
 
−
Partner finden
 
−
Red Hat Marketplace
 
−
KOMMUNIZIEREN
 
−
Kontaktieren Sie uns
 
−
Feedback
 
−
Soziale Netzwerke
 
−
Red Hat Newsletter
 
−
Red Hat
 
−
Copyright ©2021 Red Hat, Inc.
 
−
Datenschutzerklärung
 
−
Nutzungsbedingungen
 
−
Alle Richtlinien und Leitlinien
 
−
Digitale Barrierefreiheit
 
−
Impressum
 
−
|Cookie-Präferenzen
 
−
Red Hat Summit
 

Aktuelle Version vom 11. Oktober 2026, 11:51 Uhr

Grundlagen

  • Ein Hypervisor bildet eine abstrahierende Schicht zwischen der tatsächlich vorhandenen Hardware und den Gast-Betriebssystemen.
  • Er erlaubt es, eine virtuelle Umgebung zu definieren.
  • Diese dient unabhängig von der tatsächlich vorhandenen Hardware als Basis für die Installation von (Gast-)Betriebssystemen.
  • Zwei Arten sind möglich:
    • Typ-1-Hypervisoren
    • Typ-2-Hypervisoren
    • Es gibt Mischformen.

Emulation vs. Virtualisierung

Emulation

  • Bei der Emulation baut das Hostsystem die Plattform des Gastes vollständig in Software nach.
  • Das umfasst die Hardware, die CPU-Befehle und die Firmware.
  • Jeder Befehl des Gastes wird gelesen und in mehrere Befehle für die echte CPU übersetzt.
  • Vorteil: Host- und Gastplattform sind unabhängig, z. B. ein ARM-Gast auf einem x86-Host.
  • Nachteil: Dieser Ansatz ist sehr langsam und ressourcenintensiv.
  • Beispiel: QEMU (Quick Emulator) ohne KVM emuliert alles, auch die CPU.

Virtualisierung (hardwareunterstützt)

  • Der Gast-Code läuft direkt auf der echten CPU und wird nicht übersetzt.
  • Die CPU muss dies unterstützen: Intel VT-x oder AMD-V.
  • Dadurch ist sie fast so schnell wie ein System ohne VM.
  • Nachteil: Gast und Host müssen dieselbe Plattform verwenden.
  • Beispiel: QEMU-KVM reicht die CPU an den Gast durch, QEMU emuliert nur noch die Geräte (Festplatte, Netzwerkkarte, Grafik).

Ablauf: VM-Entry und VM-Exit

  • VM-Entry: QEMU sagt zu KVM „Starte meine VM“ (ioctl(KVM_RUN) auf /dev/kvm). KVM richtet die CPU ein und übergibt ihr den Gast-Code.
  • Der Gast rechnet allein: Millionen Befehle laufen direkt auf der CPU. KVM ist in dieser Zeit gar nicht aktiv.
  • VM-Exit: Will der Gast etwas, das er nicht selbst darf (z. B. Festplatte, Ports, Interrupts), stoppt die CPU ihn und springt automatisch zu KVM zurück.
  • KVM erledigt Timer und Interrupts selbst und gibt Gerätezugriffe an QEMU weiter. Danach folgt wieder ein VM-Entry.
  • Merke: KVM steht nicht zwischen jedem Befehl, das wäre wieder Emulation. KVM steht nur am Anfang und bei den Sonderfällen.
Vergleich Fahrschule
  • Der Fahrschüler (Gast) fährt selbst.
  • Der Fahrlehrer (KVM) greift nicht bei jeder Lenkbewegung ein, hat aber eine eigene Bremse und übernimmt, sobald es kritisch wird.
  • Bei Emulation würde der Fahrlehrer jede Lenkbewegung selbst ausführen.
Prüfen, ob die CPU Virtualisierung unterstützt
grep -m1 -owE 'vmx|svm' /proc/cpuinfo
  • vmx = Intel VT-x, svm = AMD-V, keine Ausgabe = im BIOS/UEFI abgeschaltet oder nicht vorhanden.

Einordnung

Typ-1-Hypervisor

  • Nativer oder Bare-Metal-Hypervisor.
  • Wird direkt auf der Host-Hardware ausgeführt.
  • Verwaltet die Gast-Betriebssysteme.
  • Übernimmt selbst die Rolle des Host-Betriebssystems.
  • VM-Ressourcen werden direkt von der Hardware abgerufen.
  • Einsatz in Rechenzentren von Unternehmen und anderen serverbasierten Umgebungen.
Beispiele
  • VMware ESXi
  • Microsoft Hyper-V

Typ-2-Hypervisor

  • Wird auch gehosteter Hypervisor genannt.
  • Läuft als Anwendung auf einem normalen Host-Betriebssystem.
  • Trennt die Gast-Betriebssysteme vom Host-Betriebssystem.
  • VM-Ressourcen werden beim Host-Betriebssystem angefordert und von diesem über die Hardware abgerufen.
Beispiele
  • VMware Workstation
  • Oracle VirtualBox

KVM (Typ 1)

  • Die KVM-Module (kvm, kvm_intel bzw. kvm_amd) werden in den Linux-Kernel geladen.
  • Damit wird der Linux-Kernel selbst zum Hypervisor und sitzt direkt auf der Hardware.
  • Jede VM ist ein normaler QEMU-Prozess, den der Kernel wie jeden anderen Prozess einplant.
  • QEMU emuliert die Hardware der VM, die CPU reicht KVM durch.
Beispiele
  • KVM mit QEMU
  • Proxmox VE

Anmerkung

  • Red Hat verortet KVM als Typ-1-Hypervisor.
  • Weil Geräte über QEMU im Userspace laufen, wird KVM teilweise auch als Mischform gesehen.

Animation

Präsentation

Quellen