Ein vollständiger Überblick über Probleme mit der Leistung bei virtuellen Maschinen von VMware
Hardware- und Softwareprobleme führen manchmal zu einer schlechten Leistung von VMs. Dies kann den Komfort und die Flexibilität Ihrer virtuellen Umgebung beeinträchtigen. Lesen Sie diesen Blogbeitrag, um zu erfahren, wie Sie die Leistung von VMware-VMs verbessern können, wenn diese langsam laufen. Erkennen Sie die häufigsten Probleme, die zu Leistungseinbußen bei VMs führen, und erfahren Sie mehr über mögliche Lösungen.
Gründe für die Optimierung der VM-Leistung
Sehen wir uns die wichtigsten Gründe für die Durchführung von Diagnosen und die Optimierung der VM-Leistung an:
- Die Leistung der Virtuellen Maschine ist geringer als die einer identischen VM auf einem anderen Host.
- Anwendungen laufen langsamer als sie sollten. Wenn Sie eine VM jedoch auf einen anderen Host migrieren, ist die Leistung der Anwendungen normal.
- Das Starten von Anwendungen dauert sehr lange.
- Laufende Anwendungen reagieren nicht.
- Die CPU-, Speicher- oder Festplattenauslastung beträgt 100 %.
CPU und Arbeitsspeicher
Unzureichende Hardware-Ressourcen gehören zu den häufigsten Gründen für eine langsame VM-Leistung. Wenn Sie einer VM nicht genügend CPU-Ressourcen zur Verfügung stellen, läuft die Software innerhalb der VM möglicherweise langsam und mit Verzögerungen. Um dies zu beheben, stellen Sie die VM so ein, dass sie mehr CPU-Kerne nutzt, oder fügen Sie weitere virtuelle Prozessoren hinzu. Erwägen Sie außerdem ein Hardware-Upgrade Ihres Host-Rechners, wenn Sie einen alten Prozessor mit einer geringen Anzahl an Kernen, wenig Cache und niedriger Taktfrequenz haben.
Wenn Sie die RAM-Kapazität für eine Virtuelle Maschine festlegen, stellen Sie sicher, dass diese Menge an RAM für die VM ausreicht. Gleichzeitig muss genügend RAM für den Host-Rechner vorhanden sein. Wenn Sie einer VM nicht genügend Arbeitsspeicher zur Verfügung stellen, nutzt das Gastbetriebssystem intensiv eine Auslagerungsdatei, was zu einer Verlangsamung der Gesamtleistung der VM führt. Wenn Sie einer VM eine große Menge an Arbeitsspeicher zuweisen und nicht genügend Arbeitsspeicher für das Host-Betriebssystem übrig lassen, greift das Host-Betriebssystem auf eine Auslagerungsdatei zurück. Dies führt zu einer Verschlechterung der Leistung des Betriebssystems und der Anwendungen. Zudem verschlechtert sich in diesem Fall auch die Leistung der VM. Weisen Sie einer VM nicht zu viel Arbeitsspeicher zu und lassen Sie gleichzeitig etwas für den Host übrig. Stellen Sie dem Host immer ausreichend Arbeitsspeicher zur Verfügung.
Lesen Sie die Systemanforderungen für Ihr Betriebssystem und Ihre Anwendungen. Betrachten wir ein Beispiel. Ihr Host-Rechner verfügt über 8 GB Arbeitsspeicher und läuft unter ESXi 7.0 oder Windows 10 mit VMware Workstation. Auf diesem Host-Rechner läuft eine Windows Server 2019-VM. Wenn Sie 4 GB RAM für eine Windows Server 2019-VM bereitstellen, bleiben 4 GB RAM für das Host-Betriebssystem übrig. Das reicht für den ordnungsgemäßen Betrieb sowohl des Host- als auch des Gastbetriebssystems aus (sofern keine zusätzlichen ressourcenintensiven Anwendungen ausgeführt werden). Das Verhältnis beträgt 1:2 (4 GB/8 GB), und 1/2 – 1 = -0,5 ist der aktuelle MEM-Overcommit-Durchschnittswert . Wenn Sie einer VM mit Windows Server 2019 2 GB RAM zuweisen, wäre die Leistung der VM in diesem Fall langsam. Wenn Sie einer Windows Server 2019-VM 6 GB RAM zuweisen, reicht der Arbeitsspeicher des Hostcomputers nicht aus. Dadurch werden sowohl die physischen als auch die virtuellen Maschinen langsamer.
Wenn Sie ressourcenintensive Anwendungen wie Datenbanken auf virtuellen Maschinen ausführen, passen Sie die VM-Konfiguration an und weisen Sie entsprechend mehr CPU- und Arbeitsspeicherressourcen zu.
Speicherüberbelegung liegt vor, wenn die insgesamt zugewiesenen Ressourcen die Kapazität überschreiten. Wenn Sie einen Host mit 8 GB RAM haben und fünf VMs ausführen, die jeweils für 2 GB RAM konfiguriert sind, kann die Leistung aller VMs und des Hostcomputers beeinträchtigt sein, weil der Arbeitsspeicher überbelegt ist (wenn alle VMs den Arbeitsspeicher intensiv nutzen). Wenn einige VMs zwar ausgeführt werden, aber nur leicht ausgelastet sind, wird der Arbeitsspeicher hauptsächlich von den stark ausgelasteten VMs genutzt, da ESXi die Arbeitsspeichernutzung optimiert. Eine Speicherüberbelegung ist in Testumgebungen sinnvoll.
Prüfen Sie außerdem das Memory Ballooning und die Konfiguration dieser Funktion, damit ungenutzter Arbeitsspeicher aus VMs zurückgewonnen und der physische Arbeitsspeicher effizient genutzt werden kann. Manchmal kann diese Funktion die VM-Leistung beeinträchtigen, wenn die VM eine Festplatte für den Auslagerungsvorgang verwenden muss.
CPU-Überbelegung . VMware stellt Verfahren für eine rationelle Ressourcennutzung bereit, mit denen Sie VMs mehr virtuelle Prozessoren zuweisen können, als der Host physische CPU-Kerne hat. Der CPU-Überbelegungsparameter gibt das Verhältnis zwischen der Anzahl der den VMs zugewiesenen virtuellen Prozessoren und der Anzahl der physischen CPU-Kerne auf dem Host an. Bei einem Wert von 3:1 besteht kein Grund zur Sorge. Bei einem Wert von 5:1 verschlechtert sich die VM-Leistung. Beträgt der Wert der CPU-Überbelegung 6:1 oder mehr, ist die VM-Leistung langsam, was zahlreiche Probleme verursachen kann.
Wie lassen sich Probleme mit CPU und Arbeitsspeicher beheben?
Erwägen Sie ein Hardware-Upgrade und fügen Sie dem physische Maschine, auf dem Sie virtuelle Maschinen ausführen, mehr RAM hinzu. Stellen Sie genügend Arbeitsspeicher bereit, damit die Host- und Gastbetriebssysteme keine Dateien austauschen müssen. Vermeiden Sie eine Speicherüberbelegung.
Manchmal können CPU-Energiesparfunktionen zu einer geringeren VM-Leistung führen. Versuchen Sie, diese zu deaktivieren.
Prüfen Sie die freien CPU- und Arbeitsspeicherressourcen auf dem Host.
Führen Sie auf ESXi den folgenden Befehl in der Befehlszeile aus, um zu prüfen, ob Ihr Server überlastet ist:
esxtop
Prüfen Sie den Parameter Durchschnittslast.
1.0 – bedeutet, dass die CPU vollständig ausgelastet ist
0.5 – bedeutet, dass die CPU zur Hälfte ausgelastet ist (50 %)
2.0 – bedeutet, dass die CPU doppelt so stark ausgelastet ist; Sie müssen Maßnahmen ergreifen
Drücken Sie diese Tasten, um die Ansicht zu ändern: c – CPU-Metriken (werden standardmäßig angezeigt), m – Arbeitsspeicher, n – Netzwerk, d – Festplatte. Drücken Sie die Leertaste, um die angezeigten Werte zu aktualisieren (die Werte werden automatisch alle 5 Sekunden aktualisiert). Drücken Sie h , um Hilfe aufzurufen, und q , um das Programm zu beenden.
Überprüfen Sie den Parameter MEM overcommit avg , um die Speicherauslastung auf ESXi zu untersuchen. Der Wert von MEM overcommit avg ist wie folgt definiert: das Verhältnis des angeforderten Speichers zum verfügbaren Speicher minus 1. Der empfohlene Wert für diesen Parameter ist 0 oder kleiner.
Wenn Sie VMware Workstation unter Linux oder Windows zum Ausführen von VMs verwenden, nutzen Sie die auf Ihrem Betriebssystem verfügbaren Standardtools zur Systemüberwachung.
Überprüfen Sie die CPU- und Speicherauslastung des Gastbetriebssystems. Einige Anwendungen funktionieren möglicherweise nicht ordnungsgemäß und verbrauchen alle CPU-Ressourcen (CPU-Kerne). Überprüfen Sie die laufenden Prozesse und ermitteln Sie, welcher Prozess die CPU belastet. Überprüfen Sie die Temperatur der physischen Prozessoren auf dem Host, da eine zu hohe Temperatur (über 80 °C) zu Leistungsproblemen führt und ein Risiko für den Prozessor darstellt (der Prozessor kann beschädigt werden).
Rüsten Sie die Hardware auf – installieren Sie eine leistungsstärkere CPU oder zusätzliche Prozessoren auf dem Host. Überprüfen Sie die VM-Konfiguration. Wenn die Anzahl der virtuellen Prozessoren für VMs höher als nötig ist, verringern Sie die Anzahl der virtuellen Prozessoren für VMs, um Ressourcen für den Host freizugeben.
In VMware vSphere können Sie einen DRS-Cluster (Verteilter Ressourcenplaner) verwenden, um VMs von einem überlasteten ESXi-Host zu einem ESXi-Host mit freien Hardwareressourcen zu migrieren.
Festplattenprobleme
Eine geringe Leistung eines Speichersystems führt zu einer geringen Leistung der virtuellen Maschinen, deren virtuelle Festplatten auf diesem Speichersystem gespeichert sind. Die Speicherlatenz ist entscheidend für die VM-Leistung. Versuchen Sie, SSDs (Solid State Drives) zum Speichern virtueller Maschinen zu verwenden. Wenn Sie keine SSDs verwenden können, nutzen Sie HDDs (Hard Disk Drives) mit 7200 oder 10000 U/min. Festplatten mit 5400 U/min bieten eine besonders geringe Leistung. Festplatten mit SAS-Schnittstelle werden bevorzugt.
Wenn Sie VMware Workstation verwenden, können Sie VMs unter Berücksichtigung der obigen Empfehlungen auf externen SATA- (eSATA-) oder USB-3.0-Festplatten speichern. Trennen Sie eine externe Festplatte erst, nachdem Sie die virtuelle Maschine ausgeschaltet haben.
Verwenden Sie in Produktionsumgebungen nicht dynamisch wachsende oder vorab zugewiesene Thick Disks. Eager-Zeroedreichlich ausgestattetFestplatten sind bei den ersten Schreibvorgängen schneller.
Wenn Sie eine HDD zum Speichern von VMs verwenden, defragmentieren Sie dieses physische Laufwerk oder Festplatten-Array und führen Sie in den Einstellungen der virtuellen Maschine eine Defragmentierung der virtuellen Festplatte durch. Verwenden Sie Partitionen, um die Festplattenfragmentierung zu verringern. Installieren Sie ein Betriebssystem auf einer Partition und speichern Sie die von Anwendungen genutzten Dateien (z. B. eine Datenbank) auf einer anderen Partition.
Überprüfen Sie, ob die Firmware eines HBA (Host Bus Adapter) auf dem neuesten Stand ist. Aktualisieren Sie die Firmware Ihres HBAs auf einem Server.
Überprüfen Sie den Zustand der Festplatte. Führen Sie eine Diagnose der Festplatte und des Dateisystems durch. Wenn die Festplatte beschädigt ist, ersetzen Sie sie umgehend.
Überprüfen Sie die Schnittstellenkabel (SAS, SATA).
Die Festplattenverschlüsselung verringert die Leistung aufgrund von Overhead. Verschieben Sie VM-Dateien auf einen unverschlüsselten Speicher, wenn die Verschlüsselung für die VM nicht kritisch ist, oder deaktivieren Sie die Festplattenverschlüsselung.
Verwenden Sie unabhängige (Hardware-)RAID-Controller, die eine höhere Leistung und Zuverlässigkeit bieten.
Stellen Sie sicher, dass auf einer Festplatte innerhalb einer VM genügend freier Speicherplatz vorhanden ist. Unzureichender Festplattenspeicher führt zu Leistungseinbußen, da das Betriebssystem und die Anwendungen keine temporären Dateien schreiben können.
Sie können Ihre VM auf eine andere Festplatte oder ein anderes Festplatten-Array migrieren, das nicht überlastet ist. Ziehen Sie in VMware vSphere den Einsatz von DRS und Storage DRS in Betracht. Reduzieren Sie die Anzahl der laufenden VMs auf derselben LUN oder im selben Datenspeicher.
Schnappschüsse
Schnappschüsse virtueller Festplatten beeinträchtigen die Leistung virtueller Festplatten. Jeder Schnappschuss erzeugt eine zusätzliche Delta-VMDK-Datei einer virtuellen Festplatte. Dabei kommt der Copy-on-Write-Mechanismus zum Einsatz. Jede Delta-VMDK-Datei enthält Datenunterschiede (Änderungsprotokoll) im Vergleich zu einer übergeordneten VMDK-Datei, und eine VM liest all diese Daten, wenn sie mit einer VM-Festplatte interagiert. Infolgedessen werden Daten aus mehreren virtuellen Festplattendateien auf derselben physischen Festplatte gelesen, was die Leistung der VM beeinträchtigt. Aus demselben Grund sollten Sie in VMware Workstation keine geteilten VMDK-Dateien für VMs verwenden (diese Option ist für alte Dateisysteme vorgesehen, die keine Dateien mit einer Größe von mehr als 4 GB unterstützen). Die Festplattenauslastung steigt mit zunehmender Anzahl von Snapshots. Schnappschüsse werden in der Regel nur vorübergehend verwendet (beispielsweise beim Kopieren von Daten während eines Backupauftrags oder beim Installieren bzw. Testen einer Anwendung innerhalb einer VM). Löschen oder überführen Sie Schnappschüsse so schnell wie möglich.
In VMware Workstation sollten Sie die VM herunterfahren, VMware Workstation schließen und einen Befehl ausführen, in dem Sie den Pfad zur bestehenden Haupt-VMDK-Datei und den Pfad zu einer neuen virtuellen Festplattendatei angeben:
"C:Program Files (x86)usernameVMware Workstationvmware-vdiskmanager.exe" -r
"D:VMsVM-foldervm-name.vmdk" -t 0 "D:VMsVM-folderNewDisk.vmdk"
Konfigurieren Sie anschließend die VM so, dass sie die neue virtuelle Festplatte verwendet, oder erstellen Sie eine neue VM und legen Sie fest, dass diese die neue konsolidierte virtuelle Festplatte verwendet.
Führen Sie unter ESXi diesen Befehl aus, um Schnappschüsse zu entfernen:
vmware-cmd path_to_vmx_file removesnapshots
oder
vim-cmd vmsvc/snapshot.removeall VMID
Mit diesem Befehl können Sie die VMID ansehen:
vim-cmd vmsvc/getallvms
Führen Sie eine Zusammenführung getrennter VMDK-Dateien durch, falls diese verwendet werden. Führen Sie dies auf dem Windows-Computer, auf dem VMware Workstation installiert ist, mit folgendem Befehl aus:
"C:Program Files (x86)VMwareVMware Workstationvmware-vdiskmanager.exe" -r splitdisk.vmdk -t 0 mergeddisk.vmdk
Speichern Sie leistungsrelevante Daten auf einer schnelleren Festplatte.
VMware Tools
Stellen Sie sicher, dass VMware Tools auf dem Gastbetriebssystem installiert sind. VMware Tools ist eine Sammlung von Treibern und Dienstprogrammen, mit denen die VM-Leistung und die Benutzerfreundlichkeit verbessert werden. Nach der Installation von VMware Tools wird die Grafikleistung verbessert. Die Maus wird synchronisiert und funktioniert ohne Verzögerungen. Mit VMware Tools können Sie eine VM im Vollbildmodus mit höherer Leistung verwenden. Prüfen Sie, ob VMware Tools installiert sind.
Klicken Sie in Windows auf das VMware-Tools-Symbol im Infobereich neben der Uhr oder wechseln Sie zu C:Program FilesVMwareVMware Tools (dies ist ein Standardverzeichnis) und führen Sie den folgenden Befehl aus:
VMwareToolboxCmd.exe -v
Führen Sie unter Linux den folgenden Befehl in der Konsole aus:
vmware-toolbox-cmd -v
Prüfen Sie die Version von VMware Tools auf VM-Gästen, indem Sie VM-Protokolle über die ESXi-Befehlszeile lesen:
grep toolbox /vmfs/volumes/datastore/vm_name/vmware.log
oder
grep build- /vmfs/volumes/datastore/vm_name/vmware.log
Prüfen Sie im VMware vSphere Client, ob VMware Tools auf dem Gastbetriebssystem installiert sind, das auf der VM ausgeführt wird. Informationen zu VMware Tools werden auf der Registerkarte Summary einer VM angezeigt (Status und Version).
Netzwerkprobleme
Wenn Ihr ESXi-Host mit Speicher wie SAN (Storage Area Network) oder NAS-Ge (Network Attached Storage) verbunden ist, stellen Sie sicher, dass die Netzwerkgeschwindigkeit ausreichend ist und das Netzwerk nicht überlastet ist.
Für eine hohe Leistung sollten Sie in vSphere separate Netzwerke für die ESXi-Verwaltung, Netzwerk, vMotion-Netzwerk und den Speicher verwenden.
Konfigurieren Sie NIC Teaming (Link Aggregation) auf ESXi-Hosts, die virtuelle Switches verwenden.
Wenn die Bandbreite Ihres vorhandenen Netzwerks nicht ausreicht, um die Anforderungen zu erfüllen, sollten Sie ein Netzwerk-Upgrade in Betracht ziehen. Richten Sie beispielsweise 5-Gbit- oder 10-Gbit-Netzwerkadapter, -Switches und -Router anstelle der vorhandenen 1-Gbit-Geräte ein.
Antivirus
Stellen Sie sicher, dass die Antivirussoftware auf dem Host virtuelle Festplattendateien nicht scannt, da das Scannen dieser Dateien die VM-Leistung beeinträchtigen kann. Sie können VMDK-Dateien in VM-Verzeichnissen vom Antivirus-Scan ausschließen.
Prüfen Sie den Zustand des Betriebssystems auf dem Hostbetriebssystem und dem Gastbetriebssystem. Stellen Sie sicher, dass keine Viren, andere Schadsoftware oder Ransomware vorhanden sind.
Erwägen Sie den Einsatz spezieller Antiviruslösungen, die mit VMware vShield auf ESXi-Hosts arbeiten, anstatt Antivirussoftware auf jedem Gastbetriebssystem der VMs zu installieren. Mit diesem Ansatz erzielen Sie eine bessere Leistung; er ist zudem für große virtuelle Umgebungen sinnvoll. Wenn Sie vShield verwenden, konfigurieren Sie diese Software ordnungsgemäß, da eine falsche Konfiguration die VM-Leistung beeinträchtigen kann.
Mit Hyper-V zusammenhängende Probleme
Wenn Sie VMware Workstation 15.5 oder neuer verwenden, die das Ausführen von VMware-VMs unterstützt, wenn die Hyper-V-Funktion auf einem Windows-Host installiert ist, kann die Leistung der VMware-VMs geringer sein. Wenn die Hyper-V-Rolle installiert ist, verwendet Hyper-V CPU-Virtualisierungsfunktionen wie Intel VT-x oder AMD-V direkt. Diese sind für VMware Workstation mit dem Virtual Machine Monitor (VMM), der im privilegierten Modus ausgeführt werden muss, nicht verfügbar. Aus Kompatibilitätsgründen wird der VMM von VMware Workstation im Benutzermodus oder ULM-Modus (anstatt im privilegierten Modus) ausgeführt, da der VMM nicht auf die Hardware-Virtualisierungsfunktionen der CPU zugreifen kann, wenn diese von Hyper-V verwendet werden. In diesem Fall verwendet der VMM die WHP-APIs von Microsoft, die als zusätzliche Ebene zwischen dem VMM und der CPU fungieren und die Leistung der VMware-VMs verringern.
Deinstallieren Sie Hyper-V und zugehörige Funktionen wie die virtualisierungsbasierte Sicherheit auf einem Windows-Hostcomputer. Danach wird der VMM von VMware Workstation im privilegierten Modus ausgeführt und kann direkt mit den CPU-Virtualisierungsfunktionen arbeiten, wodurch eine hohe Leistung erzielt wird. Mit dieser Lösung lässt sich die geringe Leistung virtueller VMware-Maschinen beheben.
Überwachung der VM-Leistung
Die Überwachung der VM-Leistung ist eine weit verbreitete Methode, um Überlastungen und damit zusammenhängende Leistungsprobleme zu erkennen. Die Überwachung der VM-Leistung hilft Ihnen, die Ursache zu ermitteln. Denken Sie daran, die VM-Leistung auf Host-Ebene und nicht innerhalb eines Gastbetriebssystems zu überwachen. Ein Gastbetriebssystem kennt Virtualisierungsfunktionen wie die dynamische Ressourcenzuteilung nicht und zeigt möglicherweise falsche Daten an. VMware stellt Zähler auf Host-Ebene bereit. Diese Zähler liefern korrekte Informationen und werden zur Überwachung der VM-Leistung verwendet. Da VMware weiß, wie Leistungsinformationen innerhalb von VMs erfasst werden, hat das Unternehmen spezielle Zählerbibliotheken für virtuelle Maschinen entwickelt. Damit können Sie mithilfe des Perfmon-Dienstprogramms in Windows-Gästen korrekte Informationen zur VM-Leistung anzeigen. Für die Überwachung der VM-Leistung muss VMware Tools auf einem Gastbetriebssystem installiert sein.
Um die Nutzung der Hardwareressourcen in VMware vSphere Client zu überprüfen, wählen Sie eine virtuelle Maschine aus, öffnen Sie die Registerkarte „Monitor“ und wählen Sie dann Performance > Overview or Performance > Advanced aus, um Diagramme und weitere Informationen anzuzeigen. Auf der Seite Overview können Sie die Auslastung von CPU, Arbeitsspeicher, Netzwerk und Speicher (freier Speicherplatz, genutzter Speicherplatz und Eingabe-/Ausgabeleistung) in Echtzeit sowie für den vorherigen Tag, die vorherige Woche, den vorherigen Monat, das vorherige Jahr oder einen benutzerdefinierten Zeitraum anzeigen. Wählen Sie die gewünschten Optionen in den beiden Dropdown-Menüs auf dieser Seite aus ( Zeitraum und Ansicht ). 
Klicken Sie auf Utilization im Tab Monitor, um weitere Informationen zur Auslastung der CPU der virtuellen Maschine, des Arbeitsspeichers der virtuellen Maschine und des Arbeitsspeichers des Gastbetriebssystems anzuzeigen.
Ebenso können Sie im vSphere Client einen ESXi-Host oder Cluster auswählen und die genutzten und verfügbaren Ressourcen in Echtzeit sowie für den ausgewählten Zeitraum überwachen.
Fazit
In diesem Blogbeitrag wurden die wichtigsten Punkte erläutert, die Sie bei Problemen mit der VM-Leistung beachten sollten, sowie Empfehlungen zur Verbesserung der Leistung virtueller Maschinen. Sie sollten über Hardware mit ausreichender Leistung verfügen, eine übermäßige Speicherzuweisung vermeiden und die Software ordnungsgemäß konfigurieren. Nutzen Sie die Überwachung der VM-Leistung, um herauszufinden, warum Ihre VM langsam ist.
Festplattenschäden sind das schwerwiegendste Problem, das eine langsame VM-Leistung verursacht, da Sie neben einer schlechten Leistung der virtuellen Maschine auch Daten verlieren können. Um Datenverlust zu vermeiden, erstellen Sie regelmäßig VMware-Datensicherungen. Nutzen Sie NAKIVO Backup & Replication für VMware-Backup – die universelle Lösung für Datensicherheit, die VMware vSphere 7.0 unterstützt und viele nützliche Funktionen zur Verbesserung der Geschwindigkeit und Zuverlässigkeit von Backups bietet.


