Beheben Sie den VMware-Fehler: Konsolidierung der virtuellen Maschinenfestplatten erforderlich

Virtualisierungsmaschinen in VMware vSphere bieten viele Vorteile. Sie arbeiten zuverlässig mit hoher Leistung, wenn die entsprechende Hardware verwendet und die richtige Softwarekonfiguration angewendet wird. Manchmal wird im VMware vSphere Client der Status „Erforderliche virtuelle Maschinenkonsolidierung“ angezeigt, und ein Systemadministrator muss diesen Fehler beheben. Dieser Blogbeitrag erklärt, warum eine VMware Virtual Machine Disk Consolidation erforderlich ist und wie dieser Fehler behoben werden kann.

Was ist VMware Disk Consolidation?

Die Konsolidierung virtueller Festplatten ist der Prozess des Zusammenführens von virtuellen Festplattendateien, die nach der Erstellung von VM-Snapshots entstanden sind. Sie können die Festplattenkonsolidierung bei Bedarf starten, um Leistungseinbußen und andere Probleme zu vermeiden. Wenn Sie einen Snapshot erstellen, werden Delta-Disks erstellt, und Änderungen werden auf die entsprechende Delta-Disk geschrieben (standardmäßig die neueste Delta-Disk, bis eine der vorherigen Snapshots ausgewählt wird, um die virtuelle Maschine wiederherzustellen). Als Ergebnis liegt redundante Daten im virtuellen Maschinenspeicher vor, da jede Delta-Disk alle Änderungen im Vergleich zum vorherigen Delta-Disk-Zustand enthält und die übergeordnete Festplatte unverändert bleibt.

Wenn die Kette von Snapshots und zugehörigen virtuellen Festplattendateien groß wird, nimmt die Leistung ab. Wenn Sie die VMware-Festplattenkonsolidierung durchführen, werden Daten aus den Delta-Disks zu einer einzigen Disk zusammengeführt, und es bleiben keine redundanten Daten auf dem Datenspeicher zurück, auf dem sich die Dateien dieser VM befinden. Der Speicherplatz wird nach der Konsolidierung der virtuellen Maschinenfestplattendateien bereinigt. Denken Sie daran, dass VMware empfiehlt, für eine VM nicht mehr als 32 Snapshots zu verwenden.

Mögliche Gründe für den VMware Disk Consolidation Fehler

Die Fehlermeldung VMware virtuelle Maschinendatenträgerkonsolidierung erforderlich wird im VM-Zusammenfassungs-Tab im VMware vSphere Client (siehe Screenshot unten) angezeigt. Eine der häufigsten Ursachen für diese Fehlermeldung ist das falsche Löschen eines VM-Snapshots, was dazu führen kann, dass VMDK-Dateien, die sich auf Snapshots beziehen, und Protokolldateien auf dem Datenspeicher verbleiben (zum Beispiel, nachdem Sie den Alle löschen oder Löschen Vorgang für VM-Snapshots durchgeführt haben).

Die häufigsten Ursachen für den Bedarf an virtueller Maschinenkonsolidierung Status:

  • Nicht genügend Speicherplatz auf dem VMFS-Datenspeicher, um VM-Snapshots zu konsolidieren und virtuelle Datenträgerdateien zu konsolidieren. Wenn auf dem Datenspeicher weniger als 1 GB freier Speicherplatz vorhanden ist, kann dieser Fehler auftreten.
  • Niedrige Leistung eines an einen ESXi-Host angeschlossenen Speichersystems, auf dem eine VM läuft. Wenn die Snapshot-Größe groß ist oder das Zeitlimit überschreitet, kann die Snapshot-Konsolidierung fehlschlagen.
  • Verbindungsprobleme zwischen einem ESXi-Host und vCenter.
  • Snapshot-Dateien sind von einer Drittanbieteranwendung gesperrt, zum Beispiel einer Backup-Anwendung. Dies kann auftreten, wenn eine Backup-Anwendung einen Sicherungsvorgang nicht abgeschlossen hat und den Snapshot gesperrt hat (Backup-Anwendungen können einen temporären Snapshot einer virtuellen Maschine erstellen, wenn sie ein Backup ausführen). Backup-Anwendungen können den Datenträger nicht stilllegen, ohne Snapshotttechniken zu verwenden, um ein konsistentes Backup einer laufenden VM zu erstellen.

Im Grunde genommen sollten Sie die Konsistenz der VM-Datenträgerdateien wiederherstellen.

Wie behebt man den Fehler?

Um den Status virtuelle Maschinenkonsolidierung erforderlich zu beheben, klicken Sie mit der rechten Maustaste auf den VM-Namen im VMware vSphere Client und wählen Sie im Menü, das sich öffnet, Snapshots > Konsolidieren.

A confirmation message is displayed:

Dieser Vorgang konsolidiert alle überflüssigen Wiederholungsprotokolle auf Ihrer virtuellen Maschine. Sind Sie sicher, dass Sie fortfahren möchten?

Klicken Sie auf Ja, um die Konsolidierung der virtuellen Maschinendateien zu bestätigen.

Hinweis: Wenn Bedenken bestehen, dass während der VMware-Datenträgerkonsolidierung Daten verloren gehen können, erstellen Sie eine VMware-VM-Sicherung, indem Sie beispielsweise alle VM-Dateien in einen anderen Ordner auf einem Datenspeicher kopieren und dann die VMware-Datenträgerkonsolidierung durchführen.

Warten Sie, bis die VMware-Datenträgerkonsolidierung abgeschlossen ist und die Protokolle gelöscht sind. Sie können den Fortschritt der Aufgabe im Aufgabenbereich am unteren Rand der Benutzeroberfläche des VMware vSphere Clients sehen. Wenn die VM ausgeführt wird, kann die Leistung der VM während dieses Vorgangs beeinträchtigt werden. Die Zeit, die für diesen Vorgang benötigt wird, hängt von der Größe der VM, der Anzahl der Snapshots und der VM-Auslastung ab.

Nach Abschluss der VMware-Datenträgerkonsolidierungsaufgabe sollte die Warnung, dass eine VMware-Virtual-Machine-Datenträgerkonsolidierung erforderlich ist, verschwinden.

Fehler, die auftreten können

Manchmal tritt ein weiterer Fehler während der VMware-Datenträgerkonsolidierung auf, und folgende Fehlermeldung wird angezeigt:

Zugriff auf Datei nicht möglich, da sie gesperrt ist. Ein Fehler ist aufgetreten beim Konsolidieren von Datenträgern: Das Sperren der Datei ist fehlgeschlagen. Die Konsolidierung für den Datenträgernode ’scsi0:0′ ist fehlgeschlagen.

Schlösser können auch erstellt werden, wenn Backup-Anwendungen die Option zum Hinzufügen von Datenträgern während eines Backups mit Snapshots verwenden. Das VM-Dateisperren soll gleichzeitiges Schreiben in die Datei durch mehrere ESXi-Hosts verhindern.

Versuchen Sie, die folgenden Aktionen auszuführen, um diesen Fehler zu beheben.

  1. Starten Sie die Verwaltungsagenten auf dem ESXi-Server neu, auf dem die VM ausgeführt wird. Öffnen Sie die ESXi-Shell oder verbinden Sie sich über SSH mit dem ESXi-Host und führen Sie den Befehl als Root aus:

services.sh restart

oder

/etc/init.d/hostd restart

/etc/init.d/vpxa restart

Sie können auch die direkte ESXi-Konsole öffnen, gehen Sie zu Fehlerbehebungsoptionen und wählen Sie Verwaltungsagenten neu starten (drücken Sie Enter, um die benötigte Option zu aktivieren, dann drücken Sie F11 zur Bestätigung).

  1. Überprüfen Sie die gesperrte Datei mit dem Befehl:

vmfsfilelockinfo -p /vmfs/volumes/vm_datastore/vm_name/vm_name.vmx

  1. Überprüfen Sie die hostd-Protokolldatei, wenn Sie den Pfad auf dem Datastore identifizieren müssen, wo sich die VM-Dateien befinden.

cat /var/log/hostd.log |grep -i vm_name

  1. Gehen Sie zum VM-Verzeichnis auf dem Datastore, wenn Sie den Speicherort der VM-Dateien kennen:

cd /vmfs/volumes/datastore_name/vm_name

  1. Führen Sie den Befehl aus, um eine Liste der ESXi-Hosts anzuzeigen, die die VM-Dateien sperren:

for i in `ls`; do vmfsfilelockinfo -p $i ;done|grep 'is locked in\|Host owning the lock\|Total time taken' | sed 's|Host owning the lock on file is||g'|sed 's|Total time|---|g' | awk '{print $1}' |uniq

  1. Starten Sie die ESXi-Verwaltungsagenten neu, einschließlich hostd und vpxa, wie oben erklärt, oder führen Sie diese Befehle auf dem ESXi-Host aus, der die VM-Dateien sperrt:

/etc/init.d/hostd restart

/etc/init.d/vpxa restart

Ein weiterer Methode zum Entsperren von VM-Dateien

Als Alternative versuchen Sie diese Schritte, um ein Fehler ist aufgetreten beim Konsolidieren von Disks: Fehler beim Sperren der Datei.

  1. Fahren Sie die virtuelle Maschine herunter.
  2. Erstellen Sie eine neue VM-Disk-Snapshot.
  3. Löschen Sie alle vorhandenen VM-Snapshots. Klicken Sie mit der rechten Maustaste auf den VM-Namen im vSphere-Client, wählen Sie Snapshots und klicken Sie auf Alle Snapshots löschen.

  1. Klonen Sie die VM oder migrieren Sie die VM auf einen anderen ESXi-Host mit vMotion, wenn der Fehler noch nicht behoben wurde.
  2. Versuchen Sie erneut, die Snapshots zu konsolidieren, wie oben erklärt.

Wenn diese Maßnahmen nicht geholfen haben, versuchen Sie, die VM herunterzufahren, öffnen Sie die VM-Einstellungen, wählen Sie den VM-Optionen Tab, erweitern Sie dann den Abschnitt Erweitert und klicken Sie auf Konfiguration bearbeiten. In dem Fenster Konfigurationsparameter klicken Sie auf Konfigurationsparameter hinzufügen. Fügen Sie den Parameter asyncConsolidate.forceSync hinzu und setzen Sie diesen Parameter auf TRUE.

Manchmal kann der Status virtuelle Maschinenkonsolidierung erforderlich durch inkonsistente -ctk.vmdk Dateien verursacht werden, die für geändertes Block-Tracking erstellt werden (zum Beispiel von VM-Backup-Software). Versuchen Sie, die CTK-Dateien zu löschen. Sie sind nicht für die Snapshot-Konsolidierung erforderlich. Vergessen Sie nicht, die VM-Dateien vor dem Löschen der CTK-Dateien zu sichern. Versuchen Sie dann erneut, die virtuellen Maschinendateien zu konsolidieren.

Die Option Konsolidieren ist inaktiv

Wenn die VMware Snapshot konsolidieren Option grau hinterlegt ist (inaktiv), kann jetzt eine aktive Aufgabe auf der VM ausgeführt werden. Wenn Sie den Fehler “Ungültige Snapshot-Konfiguration erkannt” sehen, können einige Snapshots beschädigt sein oder es gibt Split-Chains von Snapshots. In diesem Fall versuchen Sie die folgenden Aktionen.

  1. Verbinden Sie sich über SSH mit dem ESXi-Server und gehen Sie in das Verzeichnis, in dem sich die VM-Dateien auf dem Datastore befinden.

cd vmfs/volumes/DatastoreName/VMFolderName

Sie können den Speicherort der VM-Dateien im VMware vSphere Client überprüfen und den Speicherort der virtuellen Festplatten anzeigen, indem Sie die VM-Einstellungen anzeigen.

  1. Identifizieren Sie, auf welche Festplattensnapshots verwiesen wird:

cat VM-Name.vmx | grep scsi*

Überprüfen Sie die Ausgabe, um virtuelle Festplattendateien einschließlich virtueller Festplattensnapshotdateien zu überprüfen. Zum Beispiel wird der Name der virtuellen Festplattendatei in der Zeile angezeigt. Dies ist kein Snapshot:

scsi 0:0.fileName = „VM-Name.vmdk“

In der Ausgabezeile wird der Name der virtuellen Festplattensnapshotdatei angezeigt, und Sie verweisen auf den Snapshot:

scsi 0:0.fileName = „VM-Name-000002.vmdk“

A SCSI virtual disk controller is used in VM configuration in this example.

  1. Der nächste Befehl überprüft, auf was jeder Snapshot verweist. Verwenden Sie diesen Befehl, um festzustellen, welcher Snapshot auf die nächste Festplattendatei verweist (die Snapshot-vmdk-Datei oder eine Basisfestplattendatei) in der Snapshot-Kette.

cat VM-Name-000002.vmdk | grep parentFileNameHint

Sie müssen diesen Befehl möglicherweise erneut für andere vmdk-Dateien ausführen (wie VM-Name-000001.vmdk in diesem Beispiel), bis Sie die benötigte Basisfestplatte finden. Diese Methode hilft Ihnen, die Inkonsistenz zu finden.

  1. Wenn Sie die Inkonsistenz gefunden haben, zum Beispiel, VM-Name-000002.vmdk verweist auf VM-Name-000001.vmdk, das auf VM-Name.vmdk verweist, führen Sie vmkfstools auf dem höchsten Punkt der Festplattensnapshotkette aus (VM-Name-000002.vmdk in diesem Fall):

vmkfstools -q -v10 VM-Name-000002.vmdk

Dieser Befehl versucht, alle vmdk-Dateien in der Kette zu öffnen und zu schließen, und benachrichtigt Sie, wo ein Fehler auftritt.

Verwendung von PowerCLI

Als Alternative zur Ausführung der VMware-Datenträgerkonsolidierung in der grafischen Benutzeroberfläche des VMware vSphere Client können Sie vSphere PowerCLI mit der Befehlszeilenschnittstelle verwenden.

  1. Verbinden Sie sich mit dem vCenter Server, der den ESXi-Host mit der VM verwaltet, die den Status virtuelle Maschinenkonsolidierung erforderlich hat. Geben Sie Anmeldeinformationen ein, wenn Sie dazu aufgefordert werden.

Connect-VIServer vcenter01.test.com

  1. Holen Sie sich die Liste der VMs mit dem Status virtuelle Maschinenkonsolidierung erforderlich:

Get-VM | Where-Object {$_.Extensiondata.Runtime.ConsolidationNeeded}

  1. Führen Sie die VMware-Datenträgerkonsolidierung durch.

Get-VM | Where-Object {$_.Extensiondata.Runtime.ConsolidationNeeded} | foreach {$_.ExtensionData.ConsolidateVMDisks_Task()}

Fazit

In diesem Blogbeitrag wurden Empfehlungen erläutert, die Ihnen helfen können, den Status virtuelle Maschinenkonsolidierung erforderlich zu beheben. Die Konsolidierung von VMware-Virtualisierungsmaschinendatenträgern ist in der Regel erforderlich, wenn eines der Snapshots beschädigt ist, eine Snapshot-Kette inkonsistent ist oder ein Snapshot von einem anderen ESXi-Host gesperrt ist.

Führen Sie regelmäßig ein VM-Backup in Ihrer VMware vSphere-Umgebung durch. Wenn Sie ein Datenbackup haben, können Sie die Daten wiederherstellen und die Arbeit fortsetzen, falls Daten gelöscht, beschädigt, durch Ransomware verschlüsselt werden oder wenn während des vCenter-Betriebs ein Fehler auftritt. Der VMware vCenter Server sollte genauso wie andere wichtige VMs gesichert werden. Erwägen Sie die Verwendung von NAKIVO Backup & Replication – einem professionellen Backup-Produkt, das das Sichern von virtuellen Maschinen in VMware vSphere unterstützt.

Source:
https://www.nakivo.com/blog/fix-vmware-error-virtual-machine-disks-consolidation-needed/