Die Warnmeldung „Konsolidierung der Festplatten der virtuellen Maschine erforderlich“ in vSphere bedeutet, dass beim Löschen von Snapshots (über die Optionen „Löschen“ oder „Alle löschen“) einige Dateien auf der Festplatte nicht wieder in die Hauptfestplatte (die.vmdk-Datei) integriert werden konnten. Das ist ärgerlich, da Ihre VM dadurch nicht optimal läuft, Backups fehlschlagen und die Performance beeinträchtigt werden kann. Es ist etwas seltsam, aber VMware scheint nicht immer alle verbleibenden Delta-Festplattendateien entfernen zu können, insbesondere bei Speicherproblemen oder einer großen Snapshot-Kette. Diese Meldung kann nach einem fehlgeschlagenen Snapshot-Löschvorgang oder bei einer großen Anzahl angesammelter Snapshots auftreten.
Virtual machine Consolidation Needed status. Virtual Machine disks consolidation is needed.
- Wie konsolidiert man Festplatten in VMware?
- Fehler bei der Datenträgerkonsolidierung – Dateisperrfehler
- VM-Snapshots mit PowerCLI konsolidieren
Die häufigsten Ursachen sind ziemlich einfach:
- Schlechte Speicherleistung – wenn Ihr Speicher langsam oder überlastet ist, führen Snapshot-Löschungen zu Timeouts oder hinterlassen verwaiste Dateien. Dies gilt insbesondere für sehr große Snapshots oder wenn die Speicherleistung stark nachgelassen hat.
- Nicht genügend freier Speicherplatz auf dem VMFS-Datenspeicher – VMware benötigt mindestens etwa 1 GB freien Speicherplatz für eine saubere Konsolidierung (siehe Erhöhen der VMFS-Kapazität in VMware ESXi durch Erweitern des Datenspeichers oder Hinzufügen weiterer Festplatten).
- Snapshot-Dateien sind gesperrt, üblicherweise durch vSphere oder Backup-Tools wie Veeam, HP Data Protector oder NetApp VSC. Läuft ein Backup-Prozess im Hintergrund, kann er Dateien sperren und die Konsolidierung blockieren. Dies geschieht auch, wenn während eines Backup-Auftrags Festplatten zu einer VM hinzugefügt werden. Trennen Sie die Festplatten daher gegebenenfalls manuell in der Backup-Software. Prüfen Sie gegebenenfalls, ob Prozesse Sperren belegen.
- Es sind mehr als 32 Snapshots vorhanden, was die von VMware empfohlene Grenze darstellt. Wird diese Grenze erreicht, wird die Konsolidierung erschwert oder kann gar nicht mehr durchgeführt werden.
- Im Hintergrund laufen Prozesse zur Konsolidierung von Hintergrund-Snapshots – manchmal bleibt die VM einfach hängen, weil sie versucht, eine riesige Kette aufzuräumen.
- Vorübergehende Verbindungsprobleme zwischen vCenter und Host – Netzwerkstörungen können dazu führen, dass die Konsolidierung fehlschlägt oder hängen bleibt.
Wie konsolidiert man Festplatten in VMware?
Um die Warnung „Konsolidierung erforderlich“ zu beheben, klicken Sie einfach mit der rechten Maustaste auf die VM und wählen Sie VM > Aktionen > Snapshots > Konsolidieren. Diese Meldung erscheint häufig, wenn das Löschen eines Snapshots fehlgeschlagen oder unterbrochen wurde.
Es erscheint ein kleines Bestätigungsfenster mit folgender Frage:
Confirm Consolidate This operation consolidates all redundant redo logs on your virtual machine. Are you sure you want to continue?
Im Prinzip weisen Sie vCenter an, die Delta-Disks in die Haupt-Disk zu integrieren. Bei großen VMs oder solchen mit vielen Snapshots kann dies einige Zeit dauern. Währenddessen kann die VM-Leistung kurzzeitig sinken – das ist normal. Sobald der Vorgang abgeschlossen ist, verschwindet die Warnung und die Festplattendateien Ihrer VM sind bereinigt.
Dateisperrfehler beim Zusammenführen von Festplatten? Hier ist die Lösung.
Wenn Sie Fehlermeldungen wie die folgenden sehen:
Unable to access file since it is locked. An error occurred while consolidating disks: Failed to lock the file.
oder
Consolidate virtual machine disk files - Unable to access file since it is locked.
Das liegt daran, dass ein Prozess auf dem ESXi-Host die Festplattendateien belegt. Die Lösung? Starten Sie die Management-Agenten auf dem Host neu. Dies können Sie tun, indem Sie sich per SSH mit dem Host verbinden und folgenden Befehl ausführen:
services.sh restart
Das behebt manchmal veraltete Sperren, aber wenn das nicht hilft, müssen Sie herausfinden, welcher Host oder Prozess die Sperre hält. So geht’s:
- Wechseln Sie in das VM-Verzeichnis auf dem VMFS-Datenspeicher:
# cd /vmfs/volumes/your_datastore_name/your_vm_name - Führen Sie diesen Befehl aus, um gesperrte Dateien aufzulisten und den Benutzer zu ermitteln, der sie sperrt:
# 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 - Sie erhalten eine Ausgabe, die anzeigt, welcher Host die Sperre hält. Falls es sich um einen bestimmten Host handelt, stellen Sie eine SSH-Verbindung zu diesem Host her und führen Sie folgenden Befehl aus:
# /etc/init.d/hostd restart# /etc/init.d/vpxa restart - Versuchen Sie anschließend, die Konsolidierung erneut auszuführen.
Falls die VM-Dateien weiterhin gesperrt sind, können Sie versuchen, die VM herunterzufahren (sofern möglich), einen neuen Snapshot zu erstellen, alle Snapshots mit „Alle löschen“ zu entfernen und die VM anschließend per vMotion auf einen anderen Host zu verschieben. Manchmal löst dies die Sperren ausreichend, um eine erfolgreiche Konsolidierung zu ermöglichen.
Wenn die Schaltfläche „Konsolidieren“ ausgegraut ist und der Datenspeicher voller Delta-Dateien ist, ist die Snapshot-Kette wahrscheinlich unterbrochen. In diesem Fall müssen Sie die VM aus dem Inventar entfernen und sie im Datenspeicher-Browser neu registrieren. Bei komplexeren Problemen mit Snapshot-Ketten finden Sie weitere Informationen in VMware-Knowledgebase-Artikeln, beispielsweise zu unterbrochenen Snapshot-Ketten.
Bereinigung und Konsolidierung mit PowerCLI
Wenn Sie mit PowerCLI vertraut sind, ist dies eine gute Möglichkeit, die Überprüfung, welche VMs konsolidiert werden müssen, zu automatisieren und sogar in großen Mengen auszuführen. Stellen Sie zunächst eine Verbindung zu Ihrem vCenter- oder ESXi-Host her:
Connect-VIServer hostname
Um herauszufinden, welche VMs auf die Konsolidierung warten, führen Sie folgenden Befehl aus:
Get-VM | Where-Object {$_. Extensiondata. Runtime. ConsolidationNeeded}
Dadurch werden alle VMs mit der Warnung aufgelistet. Anschließend wird die Konsolidierung wie folgt ausgeführt:
Get-VM | Where-Object {$_. Extensiondata. Runtime. ConsolidationNeeded} | ForEach-Object { $_. ExtensionData. ConsolidateVMDisks_Task() }
Dadurch wird der Prozess für jede VM gestartet, die ihn benötigt. Wenn Sie die Bereinigung von Snapshots, die älter als 30 Tage sind, automatisieren möchten, kann Ihnen dieses Skript helfen:
$VMs = Get-VM | Get-Snapshot | Where-Object {$_. Created -lt (Get-Date).AddDays(-30)} $VMs | ForEach-Object { $_. VM. ExtensionData. ConsolidateVMDisks() }
Funktioniert soweit, aber denken Sie daran, dass PowerCLI-Skripte je nach Umgebung etwas unberechenbar sein können – wenn Sie also neu sind, probieren Sie es zuerst auf einer Test-VM aus.
Hoffentlich lässt sich die hartnäckige Warnung damit beheben. In manchen Fällen ist möglicherweise sogar ein Neustart des Hosts oder die manuelle Bereinigung von Snapshots erforderlich, aber diese Schritte sollten die meisten Szenarien abdecken.
Zusammenfassung
- Klicken Sie mit der rechten Maustaste auf den vSphere-Client und wählen Sie „Konsolidieren“, wenn die Warnung angezeigt wird.
- Prüfen Sie bei einem Konsolidierungsfehler, ob Dateisperren vorliegen, und starten Sie die Verwaltungsagenten gegebenenfalls neu.
- Behalten Sie den Speicherplatz und die Anzahl der Snapshots im Auge, um zu verhindern, dass diese Warnung erneut auftritt.
- PowerCLI ist praktisch für die gleichzeitige Verwaltung mehrerer VMs, insbesondere in größeren Umgebungen.
Zusammenfassung
Das Ganze kann ganz schön nervig sein, besonders wenn Speicherprobleme oder Sperren die Ursache sind. Hat man den Dreh aber erst mal raus, ist es gar nicht so schlimm. Normalerweise reicht es schon, die Festplatten zu konsolidieren und die Sperren zu entfernen, um das Problem zu beheben. Falls nicht, müssen eventuell Snapshot-Ketten gelöscht oder VM-Dateien neu installiert werden. Hoffentlich hilft das jemandem, sich den Ärger mit blockierten Snapshots und überfüllten Festplatten zu ersparen.