Vergleich zwischen VMware- und KVM-Hypervisoren
Virtualisierung wird heutzutage aufgrund ihrer Vorteile häufig eingesetzt: effektive Ressourcennutzung, Skalierbarkeit und Komfort. Mit Hypervisoren können Sie mehrere isolierte Umgebungen, sogenannte Virtuelle Maschinen (VMs), auf einer physischen Maschine ausführen. Bei der Vielzahl der heute verfügbaren Hypervisoren ist die Auswahl des richtigen Hypervisors entscheidend für eine erfolgreiche Bereitstellung.VMware- und KVM-Hypervisoren sind beide leistungsstarke Lösungen mit interessanten Funktionen. Nicht alle ESXi-Alternativen bieten denselben Bereich an Funktionen wie das Produkt von VMware. In diesem Blogbeitrag vergleichen wir KVM und VMware, um Ihnen die Unterschiede zwischen diesen Hypervisoren und die Vorteile der jeweiligen Virtualisierungsplattform näherzubringen, wobei wir uns auf VMware vSphere mit dem ESXi-Hypervisor und KVM für den Einsatz in Unternehmen konzentrieren. WichtigDieser Beitrag behandelt die Funktionen von KVM auf Kernel-Version 5.4 mit QEMU 6.1.0 und VMware ESXi Version 7.0 und kann mit nachfolgenden Software-Updates veraltet sein.
Was ist KVM?
KVM, kurz für „Kernel-based Virtual Machine“, ist ein Open-Source-Hypervisor. Der KVM-Hypervisor wird von großen Unternehmen wie Amazon und Oracle (in der Oracle Cloud Infrastruktur) verwendet. Ursprünglich wurde KVM von Qumranet entwickelt, später erwarb Red Hat die Rechte daran. Oracle vertreibt KVM ebenfalls. KVM bietet umfassende Virtualisierungsfunktionen, wobei jede Virtuelle Maschine mithilfe eines Prozessors und virtueller Geräte eine physische Maschine vollständig simuliert.Anmerkungen:
- Verwechseln Sie den KVM-Hypervisor nicht mit dem KVM-Switch (Abkürzung für Keyboard, Video und Mouse), der mehrere Computer an einen Monitor, eine Tastatur und eine Maus verbindet. Ein KVM-Splitter/Multiplexer ist ein physisches Gerät, das nichts mit Virtualisierung zu tun hat.
- Das vmware-kvm.exe Die Datei im Verzeichnis von VMware Workstation, das unter Windows installiert ist, steht in keinem Zusammenhang mit dem KVM-Hypervisor. Diese vmware-kvm.exe Die Anwendung arbeitet als virtueller KVM-Switch zum Verbinden mit der Schnittstelle von Gastbetriebssystemen (OS), die auf VMware-VMs installiert sind.
Was ist VMware?
VMware ist der Name des Unternehmens, das hinter dem ESXi-Hypervisor steht, der als Teil der Virtualisierungsplattform VMware vSphere angeboten wird, sowie hinter Host-Hypervisoren wie VMware-Workstation, Spieler und FusionVMware-Hypervisoren sind proprietär, und viele ihrer Virtualisierungsfunktionen gelten als Industriestandard für stark ausgelastete Produktionsumgebungen.
Hypervisor-Typen
Es gibt zwei Arten von Hypervisoren:
- Typ 1 Hypervisoren werden direkt auf der Hardware installiert und werden auch als Bare-Metal-Hypervisoren bezeichnet.
- Typ 2 Hypervisoren werden auf dem zugrunde liegenden Betriebssystem installiert.
Typ-1-Hypervisoren bieten eine höhere Leistung, da kein Overhead durch die Interaktion des Hypervisors mit dem Gastbetriebssystem entsteht.
Vollständige Virtuelle Virtualisierung vs. hardwareunterstützte Virtualisierung
Vollständige Virtualisierung oder softwareunterstützte vollständige Virtualisierung ist eine Technik, bei der ein Hypervisor verwendet wird, um die gesamte zugrunde liegende Hardware (virtuelle Geräte) für eine VM vollständig zu emulieren, ohne die Virtualisierungsfunktionen der CPU zu nutzen. Dabei kommen Binärübersetzung und der direkte Ansatz zum Einsatz. Softwareunterstützte Virtualisierung ist langsamer und kann auf Computern verwendet werden, deren Prozessoren keine hardwareunterstützte Virtualisierung unterstützen. Beispiele hierfür sind VMware Workstation 7 und frühere Versionen für die Ausführung von 32-Bit-Gästen.Hardwareunterstützte Virtualisierung oder native Virtualisierung ist eine vollständige Virtualisierungstechnologie, die mit CPU-Funktionen wie Intel VT-X und AMD-V zusammenhängt. Dabei kommen Techniken der direkten Ausführung und der Binärübersetzung zum Einsatz. KVM, VMware ESXi, VMware Workstation, VMware Player und VMware Fusion erfordern Intel VT-X- oder AMD-V-Funktionen, die in UEFI/BIOS auf einem physischen Rechner aktiviert sind, um diese Virtualisierungstechnologie nutzen zu können. Hardwareunterstützte Virtualisierung gewährleistet eine hohe Leistung virtueller Maschinen, da ein „Teil” der physischen CPU direkt der virtuellen CPU (vCPU) zugeordnet ist und kein Overhead für die Übersetzung von Befehlen von einer vCPU zur CPU anfällt.
VMware-Hypervisoren
VMware ESXi ist ein Typ-1-Hypervisor und wird auf physischer Hardware (auf dedizierten Servern) installiert, um als Betriebssystem zu fungieren. VMware ESXi ist die Hauptkomponente der VMware vSphere virtuelle Umgebung. Es verfügt über einen eigenen Kernel, der mit einem physischen Prozessor und anderen Geräten interagiert.VMware Workstation, VMware Player und VMware Fusion sind Hypervisoren vom Typ 2 und werden auf dem zugrunde liegenden Betriebssystem (OS) für den individuellen Gebrauch installiert. VMware Workstation und Player werden unter Linux und Windows installiert, während VMware Fusion unter macOS installiert wird.
KVM-Hypervisoren
KVM wird unter Linux als Kernelmodul installiert, ist aber dennoch ein Typ-1-Hypervisor. KVM verfügt über alle Funktionen von Linux, da KVM Teil von Linux ist.KVM besteht aus ladbaren Kernelmodulen wie dem kvm.ko Modul, das die zentrale Virtualisierungsinfrastruktur bereitstellt, und der prozessorspezifische kvm-intel.ko oder kvm-amd.ko Module, die je nach verwendetem Prozessor (Intel oder AMD) installiert werden. Die erste Version des KVM-Hypervisors war für den Linux-Kernel 2.26 verfügbar.KVM arbeitet in Verbindung mit QEMU für die E/A-Emulation. Zu den Vorteilen der Ausführung des KVM-Hypervisors als Kernel-Modul gehört, dass Sie mit Speicher (RAM), CPU-Scheduler usw. arbeiten können. Diese sind auch für Gäste (VMs) verfügbar. Diese Bedingungen reichen jedoch nicht aus, da ein Gastbetriebssystem auf einer VM eine Ein-/Ausgabe-Emulation (I/O) benötigt (Prozessor, Festplatten, Netzwerk, Video, USB, PCI-Ports usw.), und dafür wird QEMU verwendet.Hinweis:QEMU (Quick Emulation) ist eine Open-Source-Software für die Hardware-Virtualisierung (nicht zu verwechseln mit hardwareunterstützter Virtualisierung), die virtuelle Geräte wie Festplattencontroller, Netzwerkadapter, PCI- und USB-Geräte usw. für VMs emuliert. Dynamische Binärübersetzung kann auch zur Emulation von CPUs für VMs verwendet werden. QEMU kann als Typ-2-Hypervisor auf Arbeitsstationen mit Linux fungieren, selbst auf alten Prozessoren (die Intel VT-X oder AMD-V nicht unterstützen), da es Support für softwareunterstützte Vollvirtualisierung und Binärübersetzung bietet. QEMU unterstützt selbst keine native (hardwareunterstützte) Virtualisierung.
Komplexität der Bereitstellung
KVM kann auf fast jedem Computer mit Linux installiert werden, dessen Prozessor hardwareunterstützte Virtualisierungsfunktionen bietet. Die Installation des KVM-Hypervisors umfasst die Installation der erforderlichen Pakete, KVM (kvm-qemu) und eines Tools für das Management (optional). Die Pakete sind in Linux-Repositorys verfügbar.Beispielsweise können Sie KVM mit diesem Befehl auf Ubuntu installieren:sudo apt -y install bridge-utils cpu-checker libvirt-clients libvirt-daemon qemu qemu-kvmlibvirt ist eine Reihe von Bibliotheken für das Virtualisierungs-Management.virtuelle Installation ist eine Reihe von Befehlen zum Management von KVM-VMs in der Linux-Konsole (CLI).Die Verwaltung in KVM ist komplizierter als in VMware vSphere. Möglicherweise müssen Sie zusätzliche Komponenten für KVM manuell installieren und konfigurieren (z. B. einen virtuellen Switch). Die neuesten Hardware-Updates werden von Entwicklern schnell in einen Linux-Kernel übernommen, da Hardware-Anbieter zur Kernel-Entwicklung beitragen.VMware ESXi wird von einer Live-CD oder einem USB-Stick installiert, nach dem Brannen des ISO-Images auf das Medium. Ein benutzerfreundlicher Installationsassistent steht zur Verfügung, um die Installation abzuschließen. ESXi-Installation. Bereitstellung VMware vCenter kann etwas knifflig sein, da Sie DNS konfigurieren müssen. Neue vCenter-Versionen werden als vCenter Server Appliance bereitgestellt, einem Image einer Virtuellen Maschine, das mit einer Liste anpassbarer Parameter für die Bereitstellung auf ESXi bereit ist. Die Installation von vCenter unter Windows wird nicht unterstützt. vSphere 7.0 und höher.Im Gegensatz zu KVM verfügt VMware ESXi über eine Hardware-Kompatibilitätsliste (HCL). Das bedeutet, dass bestimmte Hardware möglicherweise nicht für die ESXi-Installation unterstützt wird. Darüber hinaus kann eine Empfehlung von VMware den Preis für Hardware erhöhen und somit die Kosten für die Bereitstellung von VMware vSphere steigern.
Management-Schnittstelle
Die Benutzerfreundlichkeit eines Hypervisors hängt von der bereitgestellten Benutzeroberfläche ab. Sowohl KVM- als auch VMware vSphere-Virtualisierungslösungen bieten eine Befehlszeilenschnittstelle (CLI) und eine grafische Benutzeroberfläche (GUI). Sehen wir uns die Optionen von VMware und KVM für jede Plattform im Detail an.KVMVirsh ist das standardmäßig für das KVM-Management verfügbare Befehlszeilenprogramm. Virsh verwendet die libvirt API. Sie können zusätzliche Tools wie das virtueller Manager Paket.
Virtual Machine Manager (virtueller Manager) ist eine Desktop-Benutzeroberfläche (grafisch) zum Verwalten von KVM-VMs, die libvirtSie können sich mit mehreren KVM-Servern in Virtual Machine Manager verbinden, um diese zu verwalten.
Sie können in Virtual Machine Manager VMs auswählen, VM-Bildschirme öffnen, VM-Einstellungen bearbeiten, VMs klonen und VMs migrieren.
Xming und PuTTY mit aktivierter X11-Weiterleitung werden für die Remote-Verbindung zu virt-manager von Windows-Rechnern aus verwendet. Es besteht die Option, VNC für die Verbindung zu virtuellen KVM-Maschinen zu verwenden. Sie können sich mit einem SSH-Client mit einem Linux-Rechner verbinden, auf dem KVM läuft, und Befehle zum Verwalten von KVM und zugehörigen Komponenten ausführen.VMware vSphereVMware vCenter Server ist ein zentralisiertes Verwaltungssystem in VMware vSphere. VMware vCenter verfügt über eine Webschnittstelle zum Verwalten von ESXi-Hosts und Virtuellen Maschinen sowie zur Konfiguration anderer Komponenten. Diese Schnittstelle wird als VMware vSphere Client bezeichnet. Zur Verwaltung eines eigenständigen ESXi-Hosts verwenden Sie die Webschnittstelle von VMware Host Client. Sie können jedes Betriebssystem mit einem unterstützten Webbrowser verwenden, um vSphere über die GUI zu verwalten. Die Schnittstelle von VMware vSphere Client ist in der folgenden Abbildung dargestellt.
Unten sehen Sie die Weboberfläche von VMware Host Client.
Es gibt auch das cBefehlszeilenschnittstelle wie ESXCLI um eigenständige ESXi-Hosts zu verwalten. Sie können den SSH-Zugriff aktivieren und sich über einen SSH-Client mit ESXi-Hosts verbinden. VMware vSphere PowerCLI basierend auf PowerShell-Cmdlets können verwendet werden, um ESXi-Hosts und vCenter-Server remote von Windows aus zu verwalten. Sie können auch verwenden VMware-Workstation und VMware Remote-Konsole Management von VMs auf ESXi-Hosts.
KVM vs. VMware-Leistung
KVM besteht aus etwa 10.000 Zeilen gut optimiertem Code, wodurch die Leistung maximiert wird.Der Quellcode von VMware ESXi ist geschlossen, aber Softwareforscher schätzen, dass das Produkt etwa 60 Millionen Zeilen Code enthält. Manchmal kann die VM-Leistung auf ESXi etwas langsamer sein, aber dieser Unterschied ist für typische Workloads nicht signifikant.Im Allgemeinen ist die Leistung beider Hypervisoren vom Typ 1 sehr gut.
Sicherheit
KVM. Security-enhanced Linux (SELinux) und Secure Virtualization (sVirt) sind für Red Hat KVM-Distributionen verfügbar. Eine Kombination dieser Funktionen wird verwendet, um Bedrohungen zu erkennen und zu verhindern und die Sicherheit und Isolierung von VMs zu gewährleisten. Oracle KVM wird mit Ksplice freigegeben. Zu den Sicherheitsfunktionen des KVM-Hypervisors vongehören:
- Obligatorische Sicherheit zwischen VMs
- iptables (die Firewall für Linux) Konfiguration für verbesserte Sicherheit
- UEFI Secure Boot für Windows-Gäste nach manueller Konfiguration verfügbar
- VM-Datensicherheit mit Total Memory Encryption (TME) und Multi-Key Total Memory Verschlüsselung (MKTME)
VM-Optionen für die VerschlüsselungSie können VM-Dateien auf einem von dem Host verschlüsselten Dateisystem speichern und die Verschlüsselung innerhalb eines Gastbetriebssystems aktivieren. KVM kann VM-Images im QCOW2-Format mit dem Advanced Encryption Standard (AES)-Algorithmus für einen Gast transparent verschlüsseln (es werden 128-Bit-Verschlüsselungsschlüssel verwendet).VMware Unterstützt eine Vielzahl von Sicherheitstools mit Compliance- und Cyber-Risiko-Lösungen, um die Compliance-Anforderungen gemäß HIPAA, CJIS und PCI DSS zu erfüllen.Zu den Funktionen von VMware vSphere gehören:
- Berechtigungen und Management der Benutzer für die Konfiguration von Rollen und Benutzerzugriffen
- Funktionen der Sicherheit des Hosts, einschließlich Host-Smartcard-Authentifizierung, vSphere Authentication Proxy, UEFI Secure Boot, Trusted Platform Module, VMware vSphere Trust Authority
- Verschlüsselung virtueller Maschinen, einschließlich KMS und VMware vSphere Native Key Provider
- Sicherheit des Gastbetriebssystems, einschließlich virtualisierungsbasierter Sicherheit und Verwendung eines virtuellen vertrauenswürdigen Plattformmoduls (vTPM)
Kosten, Lizenzierung und Support
KVM ist in erster Linie ein Open-Source-Hypervisor und wird kostenlos ohne Lizenzgebühren vertrieben. Wenn Sie einen kostenlosen KVM-Hypervisor verwenden, wird kein technischer Support angeboten. Die große KVM-Community und die Ressourcen im Internet können Ihnen jedoch dabei helfen, Probleme zu beheben und Antworten zu finden. Es gibt kostenpflichtige Versionen des KVM-Hypervisors. Red Hat und Oracle sind offiziell unterstützte Anbieter und bieten technischen Support für ihre Distributionen an.VMware vSphere ist eine kommerzielle Lösung, und Sie Lizenzen kaufen müssen seine Komponenten zu verwenden. A VMware vSphere-Lizenz enthält eine Lizenz für ESXi und vCenter. Es gibt VMware vSphere Standard- und Enterprise Plus-Lizenzen, wobei letztere Zugriff auf mehr Funktionen bieten. Die Anzahl der erforderlichen Lizenzen richtet sich nach der Anzahl der Prozessoren und Kerne. Für VMware vSphere gibt es eine kostenlose 60-Tage-Testversion.Wenn Sie VMware-Produkte wie VMware Tanzu, VMware NSX, VMware vSAN, VMware Horizon und VMware vRealize in vSphere verwenden, müssen Sie zusätzliche Lizenzen für diese Lösungen erwerben. Bei der Verwendung von VMware vSphere sind Sie an die Enterprise-Lizenzvereinbarung gebunden. Wenn Sie eine kommerzielle VMware-Lizenz erwerben, erhalten Sie Support auf Enterprise-Niveau.Es gibt die ESXi Free Ausgabe mit einer Reihe von Einschränkungen, darunter die Möglichkeit, APIs nur im schreibgeschützten Modus zu verwenden. Mit der kostenlosen Version können Sie keine VMware-VM-Backups mit automatisierten Backup-Lösungen durchführen. Den Schlüssel für Free ESXi (die Lizenz heißt VMware vSphere Hypervisor) erhalten Sie nach der Registrierung auf der VMware-Website. Mit Free ESXi können Sie keine Hosts in vCenter verwalten, sie in einem Cluster verbinden oder Support anfordern.Zusammenfassend lässt sich sagen, dass der Open-Source-Hypervisor KVM weniger Kosten für die Bereitstellung verursacht und in der Kategorie „Preis“ dieses Vergleichs zwischen KVM und VMware als Sieger hervorgeht.
Aktualisierungen und Upgrades
KVM wird regelmäßig aktualisiert, und Sie können den KVM-Hypervisor von wenigen Befehlen aktualisieren oder upgraden.VMware freigibt regelmäßig Patches und Bugfixes für VMware vSphere. Die neuesten Beispiele für Versionsaktualisierungen sind vSphere 7.0 Update 1, vSphere 7.0 Update 2und vSphere 7.0 Update 3 (das im November 2021 aufgrund von Treiberproblemen zurückgerufen wurde). VMware bietet vSphere Update Manager Management und Installation von Updates auf mehreren ESXi-Hosts, die von vCenter.
Skalierbarkeit und Grenzen
VMware bietet Anwendungsprogrammierschnittstellen (APIs) für vSphere, um die Verwaltung und das Backup von VMs zu vereinfachen, indem zusätzliche Softwarelösungen erstellt oder bereitgestellt werden, die mit vSphere und VMs zusammenarbeiten.Der Quellcode der KVM Der Hypervisor ist offen, sodass Sie ihn mit anderen Softwarelösungen in Ihrer Infrastruktur integrieren oder für die Skalierung nutzen können.Verschachtelte Virtuelle Virtualisierung wird sowohl von ESXi- als auch von KVM-Hypervisoren unterstützt.
KVM-Einschränkungen
KVM-Host-Limits:
- 384 CPU-Kerne
- 6 TB RAM
- 600 VMs, die gleichzeitig auf einem Host ausgeführt werden (abhängig von der Leistung des Hosts)
VM-Grenzen:
- Virtuelle CPUs: 256 (384 RH8)
- Virtueller Arbeitsspeicher: 2 TB (6 TB RH8)
- Virtuelles Netzwerk-Netzwerkschnittstellencontroller (NICs): 8
Red Hat Virtualization Manager unterstützt bis zu 400 Hosts.Oracle Linux Virtualization Manager Host unterstützt bis zu 128 Hosts pro Engine.Die Grenzen können je nach Linux-Distribution (SLES, Red Hat, Oracle Linux) variieren. Die maximalen Grenzen werden nach Tests durch den entsprechenden Anbieter festgelegt und bedeuten, dass diese maximale Konfiguration ordnungsgemäß funktioniert. Die genauen Grenzen finden Sie in der Dokumentation der entsprechenden Distribution.
Einschränkungen von VMware vSphere
ESXi-Host-Beschränkungen:
- 896 logische CPUs pro Host
- 24 TB RAM pro Host
- 1024 VMs pro Host
- 4096 virtuelle CPUs pro Host
VM-Grenzen:
- Virtuelle CPUs pro VM: 256
- Virtueller Arbeitsspeicher: 6128 GB
- Virtuelle Netzwerkkarten: 10
- Größe der virtuellen Festplatte: 62 TB
vCenter-Beschränkungen:
- 2.500 ESXi-Hosts pro vCenter-Instanz
- 64 Hosts pro Cluster
- 8.000 VMs pro Cluster
- 40.000 VMs mit Stromversorgung
Integration
Wenn Sie verwenden VMware ESXimüssen Sie andere Produkte der VMware vSphere-Plattform verwenden, um die erforderlichen Funktionen zu erhalten. Für KVM Da der KVM-Hypervisor Open Source ist und mit anderen Open-Source- und kommerziellen Lösungen kompatibel ist. Sie können KVM mit allem integrieren, was Sie benötigen, einschließlich Ihrer bestehenden Infrastruktur, die mit Linux- und Windows-Plattformen arbeitet. Es gibt keine Abhängigkeit von Anbietern.KVM verwendet einen auf einem Host installierten Agenten, um mit der physischen Hardware des Hosts zu kommunizieren.VMware ESXi verwendet zu diesem Zweck die VMware-Management-Ebene. Dieser Ansatz ermöglicht ESXi den Zugriff auf andere VMware-Produkte über diese Management-Ebene, jedoch ist der Control Stack von VMware erforderlich.Active DirectoryIntegration mit Microsoft Active Directory Die Benutzerauthentifizierung wird in VMware vSphere unterstützt. Mit dieser Funktion können sich Benutzer mithilfe von VMware vSphere Client einloggen. Active Directory-Konten.KVM läuft auf Linux-Maschinen. Sie können Linux-Maschinen zu einer Active Directory-Domain hinzufügen. Die Konfiguration ist im Vergleich zu VMware vSphere komplizierter.Die Integration von KVM mit OpenStack ist ausgezeichnet. Der KVM-Hypervisor wird klassifiziert als Gruppe A mit OpenStack (maximale Kompatibilität). Linux-Entwickler bevorzugen in der Regel KVM.VMware vSphere wird von der OpenStack-Produktfamilie unterstützt. Der VMware-Hypervisor wird klassifiziert als Gruppe B mit OpenStack.
Speicherorte
KVM verwendet alle von Linux unterstützten Speichersysteme auf physischer und logischer Ebene. Das bedeutet, dass Sie sowohl SAS- als auch SATA-Laufwerke, LVM-Volumes, NFS und iSCSI Aktien usw. Der gemeinsame Speicher kann auf einem Linux-Server oder einem Network Attached Storage (NAS) konfiguriert werden.KVM-Virtuelle Maschinen unterstützen die Verwendung von virtuellen Festplatten-Images und Raw Device Mapping (Virtio-scsi Passthrough). Sie können ein LVM-Volume an eine KVM-VM anhängen. KVM unterstützt virtuelle Festplatten-Images von VMware.VMware unterstützt lokalen Speicher nur auf SAS-Festplatten, die mit dem VMFS-DateisystemSATA-Festplatten werden als Remote-Speicher verbunden.VMware vSphere unterstützt eine Vielzahl von Anbietern von Storage Area Networks (SAN).vSphere bietet Funktionen für den Speicher wie vSAN, vVolsund Raw Device Mapping (RDM).
Disk-Image-Formate
Die nativen Festplatten-Imageformate und Dateierweiterungen unterscheiden sich bei VMware- und KVM-Hypervisoren.
KVM-Bildformate
KVM unterstützt viele Dateiformate für virtuelle Festplatten, aber die nativen Formate sind roh und qcow2.
- Roh ist das einfachste Format ohne Support für Schnappschüsse. Es verwendet die img Dateierweiterung. Wenn ein Dateisystem auf der zugrunde liegenden Festplatte Lücken unterstützt (z. B. ext2, ext3), belegen nur die geschriebenen Blöcke der virtuellen Festplatte Speicherplatz auf der physischen Festplatte. Blöcke, die zu den gelöschten Dateien gehören, belegen weiterhin Speicherplatz. Das Raw-Format ist ein Bit-für-Bit-Abbild, das etwa 10 % schneller ist als Wenn Sie eine VM mit einer virtuellen Raw-Festplatte sichern, wird die inkrementelle Sicherung nicht unterstützt, und es ist nur das vollständige Backup verfügbar. *.img ist das Dateiformat von Raw-Festplatten-Images.
- qcow2 ist ein virtuelles Festplatten-Image-Format von QEMU und bietet die besten Funktionen für KVM-VMs. QCOW2 (QEMU Copy On Write) unterstützt zlib-basierte Komprimierung, optionale AES-Verschlüsselung und mehrere Schnappschüsse. Virtuelle Festplatten-Image-Dateien können auf Dateisystemen, die keinen Support für Lücken haben, kleiner sein (die Leistung kann sich verschlechtern, wenn es keinen Support für Lücken zum Speichern von Speicherplatz gibt). Daher unterstützt dieses Copy-on-Write-Format Thin Provisioning. TRIM/UNMAP wird unterstützt. Sie können nicht verwendeten Speicherplatz mit dem Befehl zurückgewinnen. virtuell ausdünnen Befehlszeilentool. *.qcow2 ist das Dateiformat von qcow2 Disk-Images.
Hinweis: Wenn Sie einen Schnappschuss von einem qcow2 virtuelle Festplatte in virtueller Managerwird keine neue Snappschuss-Datei erstellt. Der Snappschuss wird innerhalb der qcow2 Dateien, die nicht sehr praktisch sind. Sie können die qemu-img create oder virsh snapshot-create-as Befehl zum Erstellen eines Schnappschusses als neue Datei.
- VMDK ist ein virtuelles Festplatten-Image-Format von VMware. Sie können dieses Format verwenden, wenn Sie eine VM zwischen VMware- und KVM-Hypervisoren migrieren möchten. VMware-Hypervisoren unterstützen keine nativen virtuellen KVM-Festplatten-Images (raw und qcow2).
- VDI ist das native Dateiformat für virtuelle Festplatten von Oracle VirtualBox.
- VHDX wird von Hyper-V-VMs verwendet. Lesen Sie mehr über den Unterschied zwischen VHD und VHDX.
KVM unterstützt auch dmg, Parallelen, vvfat, qed, qcow, Kuh, keine große Sache, cloop, Bochs Disk-Image-Formate für höhere Kompatibilität.
VMware-Imageformate
VMware ESXi unterstützt nur die VMDK-Datei für virtuelle Festplatte Format. Eine virtuelle VMware ESXi-Festplatte besteht aus einer *.vmdk-Deskriptordatei und einer *-flat.vmdk-Daten-Datei für virtuelle Festplatten. Thin Provisioning und automatisches UNMAP (Freiraumrückgewinnung) werden unterstützt.VMware-Hypervisoren unterstützen keine virtuellen KVM-Festplatten-Images. Sie müssen ein virtuelles KVM-Festplatten-Image mit dem qemu-img Befehlszeilentool zum Migrieren einer virtuellen Festplatte auf einen VMware-Hypervisor. Sie können das plattformübergreifende Wiederherstellung Funktion zum Konvertieren unterstützter virtueller Festplattenformate für die VM-Migration zwischen Hypervisoren von einer VM-Sicherung aus.Es wird empfohlen, die auf virtuellen Festplatten gespeicherten Daten unabhängig vom verwendeten Format zu schützen. Weitere Informationen finden Sie in diesem White Paper über Trends in der Datensicherheit im Jahr 2023.
KVM vs. VMware-Netzwerk
Für den Betrieb eines virtuellen Rechenzentrums ist es erforderlich, Netzwerke zu virtualisieren und VMs über virtuelle Netzwerke mit physischen Netzwerken zu verbinden. Virtuelle Netzwerkadapter und virtuelle Switches sind weitere Anforderungen für die Netzwerkverbindung von VMs.KVM
- Offener vSwitch (OVS) ist die Open-Source-Implementierung eines virtuellen Switches, der mit KVM verwendet werden kann. Es werden verschiedene Bridging-Modi unterstützt, darunter eine private virtuelle Bridge und eine öffentliche virtuelle Bridge. Die Verteilung auf Physische Server wird ähnlich wie bei einem Distributed Virtual Switch in VMware vSphere unterstützt.
- Sie können NIC-Bonding und NIC-Teaming konfigurieren, um Link-Redundanz oder Link-Aggregation sicherzustellen, wenn Sie über zwei oder mehr Netzwerkschnittstellen auf einem Linux-Server mit einem KVM-Hypervisor verfügen. Die Konfiguration erfolgt manuell über die Befehlszeilenschnittstelle. Mit NIC-Bonding können Sie mehrere Netzwerkverbindungen so konfigurieren, dass sie als eine einzige Verbindung fungieren und ihre Bandbreite addiert wird. Beispielsweise fungieren zwei 1-Gbit-Netzwerkadapter als ein einziger 2-Gbit-Netzwerkadapter (sie bilden eine einzige dicke Leitung).
Mit NIC-Teaming können Sie Failover und Lastenausgleich konfigurieren. Wenn Sie zwei 1-Gbit-Netzwerkadapter für die Verwendung von NIC-Teaming konfigurieren, erhalten Sie bei der Übertragung von Daten zu/von einem anderen Computer nicht den 2-Gbit-Durchsatz. Wenn jedoch zwei Computer mit einer Netzwerkgeschwindigkeit von 1 Gbit mit Ihrem Server verbunden sind, kann jeder der verbundenen Server die 1-GB-Bandbreite nutzen.
- Das virtio Die Netzwerkschnittstelle unterstützt VLANs. Sie können livirt, eine Open-Source-Virtualisierungs-API, zum Management der Netzwerk-Funktionalität. In QEMU ist ein DHCP-Serverdienst integriert. Sie können VXLAN-Netzwerke auf Linux-Rechnern mit KVM konfigurieren. Die Linux-Variante, auf der Sie KVM ausführen, bietet zusätzliche umfangreiche Firewall-Optionen, wenn Sie iptables.
VMware vSphereVMware vSphere verfügt über zwei Arten von virtuellen Switches: den Standard-Switch vSwitch und Verteilter virtueller SwitchEin Standard-vSwitch wird auf jedem ESXi-Host einzeln konfiguriert. Ein verteilter vSwitch wird zentral in vCenter konfiguriert und die Konfiguration wird auf alle virtuellen Switches auf allen ausgewählten ESXi-Hosts angewendet.VLAN wird in virtuellen Switches von VMware unterstützt. Wenn Sie konfigurieren möchten VXLAN, müssen Sie verwenden VMware NSXVMware bietet die NSX-Lösung für softwaredefinierte Netzwerke, die leistungsstarke Optionen für die Netzwerkvirtualisierung bereitstellt.VMware ESXi in VMware vSphere unterstützt Link-Aggregation (NIC-Teaming) für Netzwerk Lastenausgleich und Failover. Sie können die Link-Aggregation in wenigen Schritten über die Weboberfläche von VMware vSphere Client oder VMware Host Client konfigurieren. VMware ESXi verfügt über eine integrierte Firewall mit grundlegenden Optionen.
VM-Migration
KVM Unterstützt die Live-Migration von VMs zwischen KVM-Hosts, sodass Sie laufende VMs ohne Unterbrechung des Dienstes migrieren können. Während einer Live-Migration ist die VM eingeschaltet, das Netzwerk arbeitet und Anwendungen werden ausgeführt. Beachten Sie, dass die VM-Dateien auf einem gemeinsam genutzten Speicher gespeichert sein müssen.KVM unterstützt die Speichermigration, wenn Sie auf einem KVM-Host gespeicherte VM-Dateien auf einen anderen KVM-Host migrieren müssen (in diesem Fall ist kein gemeinsam genutzter Speicher erforderlich). Die KVM-Entwickler planen, die Live-Migration von KVM-Speichern in Kürze zu implementieren.VMware vSphere hat die vMotion Funktion zur Durchführung einer Live-Migration von VMs zwischen VMware ESXi-Hosts.VMware unterstützt die Live-Migration von VM-Speichern. Mit VMware vSphere Storage vMotion können Sie VM-Dateien zwischen VMware ESXi-Hosts und deren Datenspeichern migrieren, selbst wenn eine VM ausgeführt wird.
Clustering-Funktionen
KVM Die Clustering-Funktionen sind eingeschränkt. Eine der Optionen zum Erstellen eines Hochverfügbarkeitsclusters ist die Verwendung der DRBD-Netzwerkreplikation, die nur zwei Knoten unterstützt, die ohne Verschlüsselung synchronisiert werden. Durch die Konfiguration einer verschlüsselten VPN-Verbindung können die über das Netzwerk übertragenen Daten geschützt werden. KVM verfügt nicht über integrierte Tools wie Fault Tolerance. Für den Austausch von Servicemeldungen über den Status eines Clusters innerhalb des Clusters ist eine Heartbeat-Anwendung erforderlich. Pacemaker ist ein Cluster-Ressourcenmanager.VM Load Balancing ist nicht standardmäßig verfügbar. oVirt und kommerzielle Software von Drittanbietern mit mehreren Modulen sind Lösungen für den Lastausgleich. Die Konfiguration des Lastausgleichs für KVM ist nicht einfach und erfordert viele manuelle Vorgänge. Für den Virtualisierungsmanager oVirt muss ein Abonnement für technischen Support erworben werden, mit dem ein Cluster für KVM-VMs bereitgestellt und verwaltet werden kann.VMware bietet großartige Clustering-Funktionen wie Hohe Verfügbarkeit (HA) und Verteilter Ressourcenplaner (DRS). Wenn Sie einen HA-Cluster verwenden, können Sie die Fehlertoleranz für mehrere VMs konfigurieren. Mit dem Distributed Power Manager können Sie Strom sparen, wenn innerhalb eines Clusters ungenutzte Ressourcen vorhanden sind und VMs keine zusätzlichen Rechenressourcen benötigen. Die Konfiguration der VMware-Clustering-Funktionen ist unkompliziert und kann über die benutzerfreundliche grafische Oberfläche des VMware vSphere Client vorgenommen werden. VMware vSphere bietet zahlreiche Clustering-Optionen. Es gibt eine E-Book ÜBER UNS.VMware ist der Gewinner in der Kategorie Clustering im Vergleich zwischen VMware und KVM.
Support für das Gastbetriebssystem
VMware ESXi- und KVM-Hypervisoren unterstützen viele Betriebssystemfamilien, die auf Virtuellen Maschinen ausgeführt werden können, darunter:
- s (beginnend mit älteren Versionen wie Windows 95 und Windows NT)
- VMwar, einschließlich Ausschüttungen wie UbuntuDebian, OpenSUSE, Red Heat, CentOS, Fedora, Oracle Linux, Kali Linux, usw. sowie Freies BSD und andere BSD-basierte Betriebssysteme
- Solaris, OpenSolaris, Novell Netware und MS-DOS
- MacOS kann sein auf ESXi installiert aber mit zusätzlichen Schritten wie der Installation von Patches. Wenn Sie macOS auf KVM installieren möchten, müssen Sie die erforderlichen Pakete auf dem Linux-Host installieren.
Das Support-Verfahren für Gastbetriebssysteme ist nahezu identisch.
Anpassung für Container
Die Beliebtheit von Containern wächst, und Container-Unterstützung ist die gewünschte Option in virtualisierten Rechenzentren.KVMDurch die Ausführung von Containern mit dem KVM/Libvirt-Anbieter können Sie die Docker-Engine auf einer Docker-Maschine (VM) transparent ausführen, ohne die VM manuell konfigurieren zu müssen. Der KVM-Treiber zum Ausführen Container kann von der Website heruntergeladen werden Docker-Maschinen-Treiber-KVM Paket.Hinweis: Ein ähnlicher Treiber ist auch verfügbar für VirtualBox und Hyper-V.Durch die Ausführung von Containern mit dem Docker/KVM-Treiber können Sie die Container besser vom Host-Rechner isolieren und die Leistung im Vergleich zur manuellen Erstellung von VMs mit Containern innerhalb der VMs verbessern. Sie können einfach die Docker-Maschine erstellen Befehl zum Erstellen zusätzlicher lokaler Maschinen. In der Regel wird eine schlanke Linux-Distribution mit dem Docker-Daemon-Installationsprogramm verwendet (zum Beispiel boot2docker). Die virsh Das Tool wird zum Ansehen verwendet. libvirt Ressourcen. Die docker-machine ls Der Befehl wird verwendet, um die verfügbaren Docker-Maschinen aufzulisten. Sie können auch bereitstellen Kubernetes auf Maschinen, auf denen der KVM-Hypervisor läuft.VMware vSphereVMware Integrierte ContainerDiese Funktion wird verwendet, um Container als VMs auf VMware ESXi-Hosts auszuführen. Eine virtualisierte VMware vSphere-Infrastruktur und Clustering sind eine zuverlässige Plattform für die Ausführung von Containern. VMware vSphere-Netzwerke werden als Netzwerke für Docker-Container verwendet und im Docker-Client angezeigt. Die leichtgewichtige Photon Linux-VM, die als „reiner Kernel“ konzipiert ist, bootet von einem ISO-Image, um Container auszuführen. Sie können Container-VMs in VMware vSphere Client verwalten.Die wichtigsten Komponenten sind vSphere Integrated Containers Engine und vSphere Integrated Container-RegistrierungDiese Komponenten unterstützen Docker-Images. Container-Images befinden sich auf VMFS-Speicher, und VMware vSphere ist die Steuerungsebene. Die Bereitstellung von Containern als VMs ist jedoch im Vergleich zur Bereitstellung von Containern auf der neueren VMware Tanzu-Plattform nicht optimal.VMware Tanzu ist der neueste Dienst zum Ausführen von Containern in VMware vSphere. Dieser Dienst ist der Nachfolger von VMware Integrated Containers und bietet weitere Vorteile. VMware Tanzu ist Teil von ESXi, und Container können direkt auf einem VMware ESXi-Host effizienter ausgeführt werden. Die Bereitstellung von Kubernetes wird unterstützt. VMware vSphere Tanzu erstellt eine Steuerungsebene innerhalb der ESXi-Hypervisor-Schicht. Die Hauptkomponenten von Tanzu sind Tanzu Runtime Services und Hybrid Infrastruktur Services.Sie können Tanzu und Container in vCenter und VMware vSphere Client verwalten. Das herkömmliche kubectl Es steht auch ein Tool zum Management von Kubernetes zur Verfügung. Es wird empfohlen, VMware NSX-T zu bereitstellen, um vSphere Pods, Embedded Harbor Registry und Netzwerk-Load-Balancer zu nutzen. Sie können jedoch auch Standard- und verteilte virtuelle Switches verwenden, um Netzwerke für Container ohne die erweiterten Funktionen zu konfigurieren. Ein Hochverfügbarkeitscluster mit gemeinsam genutztem Speicher ist die optimale Lösung für die Ausführung von Tanzu mit Containern in VMware vSphere. Kugelchen Agenten werden auf ESXi-Hosts installiert und lassen diese als Kubernetes-Worker-Knoten fungieren.VMware vSphere-Administratoren können DevOps- und anderen Benutzern Zugriff gewähren, um Container mit vSphere Integrated Containers und VMware Tanzu zu erstellen und zu konfigurieren. Für Benutzer steht ein Service-Portal zur Verfügung. VMware Tanzu erfordert eine Lizenz für eine der verfügbaren Tanzu-Ausgaben.
Datensicherung zum Backup
Was den Vergleich zwischen KVM und VMware Hypervisor angeht, so sind diese beiden Virtualisierungsplattformen hinsichtlich der Backup-Konfiguration nicht identisch. Es ist besser, den Backup-Prozess auf der Grundlage von Anforderungen wie Backup-Zeit, Automatisierung, Dienstunterbrechung (Ausfallzeit) zu planen. RTO und RPO Bevor Sie sich für eine Virtualisierungsplattform entscheiden, sollten Sie die Optionen zum Backup für den Hypervisor berücksichtigen, den Sie in Ihrer Infrastruktur bereitstellen möchten.KVM-BackupGrundlegende Methoden zum Sichern von KVM-VMs sind virsh, das ist das Linux-Befehlszeilentool für KVM. Bei Verwendung von virshDie VM muss ausgeschaltet sein. Sie können Befehle und Skripte verwenden, um laufende VMs zu sichern und den Prozess des Backups zu automatisieren. Cron wird zum Ausführen von Skripten nach einem Plan verwendet. Das Sichern laufender VMs erfordert die Verwendung von Schnappschüssen. Ein Schnappschuss fixiert Daten in einem konsistenten Zustand zum Zeitpunkt der Erstellung des Schnappschusses und ermöglicht es Ihnen, eine Kopie konsistenter Daten zu erstellen, während eine VM läuft. Schnappschuss und Backup sind nicht gleichbedeutend. Lassen Sie mich die Methoden für das Backup von KVM-VMs erläutern.
- An eine VM angehängte LVM-VolumesSie können die native LVM-Schnappschuss-Funktionalität nutzen und VM-Daten sichern. Die Vorteile sind Einfachheit und hohe Leistung. Die Nachteile sind schwieriges Management, Verfügbarkeit der Migration auf einen anderen KVM-Host und geringere Flexibilität bei der Speicherplatzverwaltung für VM-Speicher.
- RAW (IMG) virtuelle Festplatten-Images. Schnappschüsse werden nicht unterstützt. Es wird nur das Backup ausgeschalteter VMs unterstützt.
- QCOW-Images virtueller FestplattenSchnappschüsse werden unterstützt, sodass Sie laufende VMs sichern können.
Um einen Schnappschuss einer laufenden VM zu erstellen, muss ein QEMU-Gastagent muss auf einem Gastbetriebssystem installiert sein und Kanalgerät mit dem org.qemu.guest_agent.0 Der Name muss in der VM-Konfiguration festgelegt werden. Sie können Anwendungen in Betracht ziehen, die die Sicherungs- und Wiederherstellungs-API für KVM-Backup. Inkrementelles Backup Die Fähigkeiten basieren auf libvirt und oVirt Funktionalität.Die KVM-Replikation kann mit Distributed Replicated Block Device (DRBD) durchgeführt werden, das Teil des Linux-Kernels ist. Die VM-Replikation erfolgt in diesem Fall synchron.
VMware vSphere-Backup
VMware vSphere bietet leistungsstarke Funktionen zur Datensicherheit, darunter Backup und Replikation virtueller MaschinenMit den VMware vSphere-APIs für die Datensicherheit (vStorage API for Data Protection) können Sie laufende VMs auf Host-Ebene sichern, indem Sie Schnappschüsse und Datenstillstand verwenden, um Daten in einem konsistenten Zustand zu erhalten. Skripte und manuelle Backups von ausgeschalteten VMs können auf Free ESXi verwendet werden, da die APIs für die Datensicherheit in diesem Fall deaktiviert sind.Sie müssen installieren VMware-Tools auf einem Gastbetriebssystem zu ruhig sein Daten beim Erstellen eines Schnappschusses korrekt. Eine neue virtuelle Snapshot-Festplattendatei wird auf einem Datenspeicher erstellt, der an den VMware ESXi-Host angeschlossen ist.VMware vSphere unterstützt Veränderte Blockverfolgung Um geänderte Blöcke für inkrementelle Backups zu verfolgen. Mit inkrementellen Backups können Sie Speicherplatz sparen, indem Sie nur die Daten kopieren, die sich seit dem letzten Backup-Vorgang geändert haben.In der Kategorie VM-Backup geht VMware vSphere als Sieger aus diesem Vergleich zwischen VMware und KVM-Hypervisor hervor.Auswahl einer Backup-LösungEine gute Backup-Lösung sollte so konzipiert sein, dass sie die nativen Funktionen von VMware wie Verfolgung der Änderungen und Quiescing optimal nutzt. NAKIVO Backup & Replication ist eine agentenlose Lösung für die Datensicherheit von VMware-VMs, die in vSphere ausgeführt werden. NAKIVO Backup & Replication Unterstützt erweiterte Funktionalitäten für die Datensicherheit, darunter:
- Inkrementelles App-Aware Backup laufender VMs
- Backup von VMs in einem Cluster
- Erweiterte Aufbewahrungseinstellungen
- Sofortige VM-Wiederherstellung und P2V-Wiederherstellung
- Sofortige granulare Wiederherstellung für Dateien und App-Objekte
- Unveränderliche Repositorys in lokalen und Cloud-Speichern
KVM vs. VMware – Vergleichstabelle
Fassen wir die wichtigsten Punkte des Vergleichs zwischen KVM- und VMware-Hypervisoren in einer Tabelle zusammen, bevor wir Schlussfolgerungen ziehen.
| Funktion | KVM | VMware vSphere |
| Hypervisor-Typ | Typ 1 | Typ 1 |
| Komplexität der Bereitstellung | Schwierig | Einfach |
| Speicherorte | Alle in Linux unterstützten Speichertypen | SAS-Festplatten für lokalen Speicher. VMFS-, iSCSI- und NFS-Datenspeicher |
| vSAN, vVols | Nein | Ja |
| Natives virtuelles Festplattenformat | RAW(IMG), QCOW2 | VMDK |
| Raw-Gerät-Zuordnung | Ja. LVM wird unterstützt. | Ja |
| Thin Provisioning | Ja | Ja |
| Native Dateien | Linux-Dateien, NFS | VMFS, NFS |
| VM-Schnappschüsse | Ja | Ja |
| Live-Migration von VMs | Ja | Ja |
| VM-Speicher-Migration | Ja | Ja |
| VM Live-Speicher-Migration | Nein | Ja |
| Clustering-Funktionen | Ja (begrenzt) | Ja (breite Unterstützung) |
| Hohe Verfügbarkeit | Ja, mit DRBD | Ja |
| Lastverteilung | Begrenzt | Ja (DRS) |
| Fehlertoleranz | Nein | Ja |
| Management-Schnittstelle | Befehlszeile (virsh), KVM virt-manager | vSphere Client, Host Client, ESXCLI, PowerCLI |
| AD-Integration | Ja | Ja |
| Preis | Kostenlos/Gering (nur für technischen Support zahlen) | Hoch |
| Leistung | Hoch | Hoch |
| VM-Backup-Optionen | Begrenzt | Breit |
| Technischer Support | Oracle KVM, Red Hat KVM | Ja |
| Unterstützte Gastbetriebssysteme | Breit | Breit |
| Netzwerk | Virtueller Switch, verteiltes Switching, NIC-Bonding, Link-Aggregation | vSwitch, verteilter vSwitch, NIC-Teaming und Link-Aggregation, NSX |
| Firewall | Umfassende Linux-Funktionalität mit iptables | Grundlegende ESXi-Firewall oder zusätzliche Funktionalität von NSX |
| Container-Integration | Ja | Ja |
| VDI | Ja, mit OpenStack | Ja, mit VMware Horizon |
| Verschachtelte Virtuelle Virtualisierung | Ja | Ja |
| VM-verknüpfte Klone | Ja | Ja |
Schlussfolgerung
Beim Vergleich von KVM- und VMware-Hypervisoren hat jeder je nach Ihren Anforderungen und Verwendungsfällen seine Vor- und Nachteile. Wenn Sie jedoch VMs zum Ausführen kritischer Anwendungen und zum Speichern kritischer Daten verwenden, sollten Sie beachten, dass die Optionen für Backups für KVM-Virtuelle Maschinen begrenzt sind. Das Sichern von VMs im laufenden Betrieb kann eine Herausforderung sein. VMware vSphere bietet APIs für die Datensicherheit, mit denen Entwickler funktionale Backup-Lösungen zum Schutz von VMs auf Host-Ebene erstellen können. Wenn Sie VMware vSphere verwenden, laden Sie herunter NAKIVO Backup & Replication kostenlos zum Schutz Ihrer VMs.