Unglaublich langsames Entfernen von Schnappschüssen

13

Ich habe eine ESXi-Box mit HP LeftHand-Speicher, der über iSCSI verfügbar gemacht wird.

Ich habe eine virtuelle Maschine mit einer 1-TB-Festplatte, von der 800 GB verbraucht werden. Die Festplatte ist im LeftHand-Speicher mit Thick-Provisioning ausgestattet.

Auf der VM war ein Snapshot geöffnet (damit Veeam Backup and Recovery seine Sache erledigen kann), und er war ungefähr 6 Stunden lang geöffnet. Während dieser Zeit wurde eine Delta-Festplatte mit ca. 5 GB erstellt.

Das Entfernen des Schnappschusses hat nun mehr als 5 Stunden gedauert und ist immer noch nicht abgeschlossen. Das Speicherarray meldet praktisch kein IOPS auf diesem Array (etwa 600, was Hintergrundrauschen bedeutet), keinen Durchsatz (etwa 8 MB / s, was wiederum Hintergrundrauschen bedeutet) und eine durchschnittliche Warteschlangentiefe von 9.

Mit anderen Worten, der Snapshot-Konsolidierungsprozess scheint nicht an E / A gebunden zu sein. Ich kann nichts sehen, was dazu führt, dass das Entfernen des Snapshots so verdammt langsam ist. Es ist Arbeit, die Beurteilung durch die Delta - Dateien zu beobachten.

Gibt es noch etwas, worauf ich achten sollte, warum dieser (relativ kleine) Schnappschuss so langsam entfernt werden kann?


Gemäß der VMWare-Dokumentation schaue ich gerade ls -lh | grep -E "delta|flat|sesparse"und sehe zwei Delta-Dateien, die sich ändern:

-rw-------    1 root     root      194.0M Jun 15 01:28 EXAMPLE-000001-delta.vmdk
-rw-------    1 root     root      274.0M Jun 15 01:27 EXAMPLE-000002-delta.vmdk

Ich gehe davon aus, dass eine Snapshot-Datei konsolidiert wird, während die andere Delta während des Konsolidierungsprozesses sammelt. Dann wird das neue konsolidiert und dabei ein weiteres Delta erstellt.

Die Dateigrößen sind bei jeder Iteration fallen (na ja, die meisten Wiederholungen), so nehme ich an , dass schließlich das Konsolidierungsverfahren abgeschlossen wird (vielleicht werde ich die VM aus dem Netzwerk für 30 Minuten in Anspruch nehmen muß , um dieses Ziel zu lassen , ohne Änderungen zu erzeugen) .

Die Konsolidierung dauert ca. 2 Minuten pro hundert Megadelta. Das ist sicher noch nie passiert. Das Entfernen von Snapshots unter einem normalen Veeam-Backup dauert ungefähr 40 Minuten (also sicherlich nicht schnell, aber nicht so langsam).


Nach 6 Stunden und 2 Minuten wird der Schnappschuss endgültig entfernt. Ich würde jedoch gerne wissen, ob es eine Möglichkeit gibt, diese Art von Problem normalerweise zu beheben (außerhalb der Speicherleistung).

Mark Henderson
quelle
Ich kann nicht anders, als zu bemerken, dass 8Mbit / s einer Vernetzung mit 10Mbit / s ohne einen gewissen Overhead ziemlich nahe kommt. Besteht die Möglichkeit, dass dies ein Netzwerkproblem auf dem iSCSI-Link ist? Handelt es sich um eine einzelne Verbindung, einen einzelnen Host, ist die Leistung des Hosts ansonsten für dauerhafte Lese- / Schreibvorgänge in Ordnung? Können Sie den Switch-Port auf Fehler überprüfen?
TessellatingHeckler
@TessellatingHeckler Ich habe gerade einige Tests durchgeführt und ich kann immer noch 1,5 Gbit / s sequentiell vom Array erhalten, was ich unter normalen Umständen erwarten würde. Letzte Nacht dauerte das Entfernen des Schnappschusses drei Minuten, was bei weitem die schnellste Zeit ist, die ich je gesehen habe (normalerweise ist es etwa zehnmal so lang, aber hier fand letzte Nacht ein großes Fußballspiel statt, sodass ich vermute, dass niemand die Systeme nach Stunden benutzte wenn die Backups ausgeführt werden, daher das kleine Delta und die kleine Festschreibungszeit). So kann es schnell gehen, nur einmal nicht.
Mark Henderson
Hmm. Wird VMware Storage IO Control ausgeführt und wird der Datenspeicher für andere VMs freigegeben? Gibt es eine Chance, dass es dort ein gewisses Throttling / Soft-Limit erreicht, ohne den Host oder die SAN-Hardware zu belasten?
TessellatingHeckler
ESXi- und vCenter-Version?
Nils
@Nils 5.5 für beide
Mark Henderson

Antworten:

2

Soweit ich weiß, kann das Entfernen von ESXI-Snapshots (und in der Regel auch) sehr lange dauern. Bevor der Schnappschuss entfernt werden kann, müssen die Änderungen vom alten Schnappschuss in den nächsten Schnappschuss geschrieben werden. Es wurde mir beigebracht, Schnappschüsse immer von den ältesten bis zu den neuesten zu löschen, damit dieser Prozess so schnell und effizient wie möglich abläuft.

Je mehr Änderungen zwischen den Schnappschüssen vorgenommen werden, desto länger dauert die Zusammenführung.

Andrew Meyer
quelle
1
Richtig, außer 6 Stunden, um einen 5GB-Schnappschuss zu entfernen, ist absurd. Wie ich bereits erwähnte, dauert das Entfernen des Schnappschusses normalerweise ungefähr 40 Minuten, und ich finde sogar, dass 40 Minuten zu langsam sind. Dies war der einzige Snapshot auf dieser VM, und auch das Entfernen von Snapshots hat sich in späteren Versionen von ESXi dahingehend geändert, dass die Reihenfolge, in der sie entfernt werden, keine große Rolle spielt.
Mark Henderson
2
Ich habe das langsame Snapshot-Verhalten schon einmal mit wenig E / A im Speicher gesehen, es aber nie auf eine Ursache zurückgeführt. Ich habe immer nur angenommen, dass der Hypervisor an den Deltas im Speicher kaut. (Die fraglichen Computer verwendeten Direct-Attached-Storage, oder ich habe mich auch mit SAN-Problemen befasst, aber ich habe es immer mit großen Deltas oder nicht optimiertem Code im VMWare-Snapshot-Subsystem beschrieben.)
Voretaq7