VMware-Snapshots löschen, zusammenführen und wiederherstellen

    Snapshot in VMware Workstation entfernenEin wesentlicher Vorteil von virtuellen Maschinen besteht im Vergleich zu reiner Hardware darin, dass der Zustand des Systems zu jedem beliebigen Zeitpunkt in einem Snapshot festgehalten werden kann - und das völlig unabhängig davon, ob der Gast selbst derartige Funktionen zur Wiederherstellung eines früheren Systemzustands besitzt. Allerdings hat das Snapshot-Feature von VMware auch unerwünschte Nebenwirkungen und kann bei unsachgemäßer Anwendung zu Datenverlusten führen.

    Speicherung von Disk-Status, VM-Konfiguration und RAM-Abbild

    Ein Snapshot hält den gesamten Status einer VM fest. Dazu zählen der aktuelle Zustand aller mit ihr verbundenen virtuellen Festplatten, die Konfiguration der VM sowie der Inhalt des Arbeitsspeichers. Sobald man einen Snapshot anlegt, speichert der Hypervisor (VMware Workstation, ESX(i)) alle folgenden Änderungen in separaten Dateien, der Snapshot bzw. die ursprüngliche VM, von dem ein Snapshot abstammt, wird nicht mehr verändert.

    Diese inkrementelle Speicherung von Änderungen als auch die Konservierung des RAM-Abbilds wirken sich auf die Nutzung von Snapshots in produktiven Umgebungen aus. Je mehr Snapshots für eine VM erstellt wurden, umso größer wird der Verwaltungsaufwand für die Virtualisierungssoftware, um aus der Eltern-vmdk plus sämtlichen Snapshot-Disks den aktuellen Zustand der VM zu errechnen. Aus diesem Grund gehen Snapshots auf Kosten der Performance. Laufen in einer VM Anwendungen, die viele Schreibzugriffe erzeugen und daher zahlreiche Blöcke des Dateisystems verändern, dann führt dies zusätzlich zu einem hohen Platzverbrauch.

    Nebenwirkungen bei der Rückkehr zu Snapshots

    Die Speicherung des RAM-Zustands kann in produktiven Umgebungen ebenfalls zu unerwünschten Nebenwirkungen führen. Wenn etwa eine Anwendung in der VM während der Snapshot-Erstellung gerade mit einem Datenbank-Server kommuniziert, dann führt die Rückkehr zu diesem Snapshot zu unvorhersehbaren Folgen, wenn eine Transaktion erneut ausgeführt wird. Deshalb sollte beim Anlegen eines Snapshots darauf geachtet werden, dass der Gast zu diesem Zeitpunkt nicht mit externen Systemen kommuniziert.

    Der Befehl "Wechseln zu" im vSphere Client führt dazu, dass alle nach dem Snapshot erfolgten Änderungen verloren gehen.Führt man den Befehl Revert oder Wechseln zu in der VMware Workstation bzw. im vSphere Client aus, dann gehen alle Änderungen verloren, die seit dem Anlegen dieses Snapshots an der VM vorgenommen wurden. Insofern handelt es sich bei der harmlos aussehenden Rückkehr zu einem vorherigen Zustand um einen Löschbefehl, der alle zeitlich folgenden inkrementellen vmdk-Dateien von der Platte entfernt. Aus diesem Grund gibt es keine undo-Funktion für ein Revert to Snapshot. Wenn man eine VM versehentlich auf einen früheren Zustand zurückgesetzt hat, dann hilft daher nur mehr ein Backup, um die verlorenen Änderungen wiederherzustellen.

    Löschen eines Snapshots verändert nicht den aktuellen Zustand

    Umgekehrt jedoch führt der Befehl Löschen im Snapshot Manager gerade nicht dazu, dass Informationen in den virtuellen Festplatten verloren gehen. Vielmehr entfernt er einen oder mehrere Snapshots und schreibt alle darin enthaltenen Änderungen zurück in die vmdk, von der sie erstellt wurden. Das Löschen von Snapshots verändert also nicht den aktuellen Status von VMs. Verloren gehen nur das RAM-Abbild und die VM-Konfiguration des betroffenen Snapshots.

    Mit Hilfe des Snapshot Managers kann man zu älteren Zuständen der VM zurückkehren oder Snapshots löschen.

    Der häufigste Anlass, um Snapshots einer VM anzulegen, sind geplante Änderungen im Gast. Dazu zählen etwa die Installation von Test-Software oder das Einspielen von Patches und dgl. Falls dabei etwas schiefläuft und der virtuelle Rechner außer Gefecht gesetzt wird, kann man einfach zum alten Zustand zurückkehren.

    Für das Entfernen von Snapshots kann es mehrere Gründe geben:

    • Sie werden nicht mehr benötigt und ihr Speicherplatz soll freigegeben werden.
    • Eine virtuelle Festplatte soll in einer anderen Virtualsierungssoftware, beispielsweise VirtualBox, importiert werden. Sie kann in der Regel mit verketteten Snapshots nichts anfangen, daher muss man vorher alle Änderungen an der vmdk konsolidieren.
    • Man möchte eine vmdk verkleinern. Dies ist nur möglich, wenn davon keine Snapshots existieren.
    • Eine virtuelle Festplatte soll in ein anderes Format umgewandelt werden. V2V-Konverter können im Allgemeinen ebenfalls nur einzelne vmdk-Dateien verarbeiten.

    Snapshots nicht über das Dateisystem entfernen

    Die Konsolidierung der Änderungen in Snapshots ist eine aufwändige Operation.Da der Löschvorgang die in Snapshots gespeicherten Änderungen konsolidiert, liegt es auf der Hand, dass es keinenfalls eine Alternative ist, im Windows Explorer die zu einem Snapshot gehörenden Dateien manuell zu entfernen. Damit gingen nicht nur die darin enthaltenen Informationen verloren, sondern würde auch die Verkettung der Snapshots untereinander zerstören. Da der Snapshot Manager die Änderungen konsolidiert, überrascht es nicht, dass dieser Vorgang einige Zeit in Anspruch nimmt und in der Regel länger dauert als das Anlegen eines Snapshots.

    Keine Kommentare