Essential Guide

Mehr Datensicherheit durch Replikation und Snapshots

Eine umfassende Auswahl von Artikeln, Videos und mehr, die von unseren Redakteuren gewählt wurden.

Problembehandlung bei VMware-Snapshots

Lösungen für Probleme mit VMware-Snapshots sind bedeutend für Profis. Die Wiederherstellungspunkte der Virtual Machine sind wichtige IT-Instrumente.

Administratoren in virtualisierten Umgebungen können Snapshots unter vSphere dafür einsetzen, eine Zeitreise in...

die Vergangenheit zu machen und so herauszufinden, was bei ihren Virtual Machines (VMs) schief gelaufen ist. Im Teil 1 dieser Artikel-Serie habe ich erklärt, wie VMware-Snapshots verwendet werden. Teil 2 beschäftigte sich mit dem Löschen von Snapshots ohne Speicherplatz-Verschwendung. Was aber tun Sie, wenn mit Ihren Snapshots plötzlich Merkwürdiges vor sich geht? In diesem Tipp geht es genau darum: die Lösung möglicher Probleme, die sich bei der Nutzung von Snapshots unter vSphere ergeben können.

VMs mit Snapshots lokalisieren

Schon herauszufinden, für welche VMs es Snapshots gibt, kann eine Herausforderung sein. In VMware Infrastructure 3 gab es noch keine eingebautes zentralisiertes Hilfsmittel im vSphere Client oder vCenter Server dafür, weshalb Sie beim Lokalisieren mit komplizierten Methoden wie Scripts oder Kommandozeilen-Werkzeugen arbeiten mussten. Allerdings gab es in vSphere schon Erweiterungen, die das Auffinden von Snapshots zumindest erleichterten.

Methode 1: der Befehl „Find“

Verwendung des Befehls „Find“ in der EXS-Servicekonsole oder im EXXi Tech Support Mode:

  1. Loggen Sie sich in die Konsole ein.
  2. Wechseln Sie zu Ihrem Verzeichnis /vmfs/volumes.
  3. Geben Sie ein: -iname “*-delta.vmdk“ -mtime +7 -ls Damit finden Sie Snapshot-Dateien, die in den letzten sieben Tagen nicht modifiziert wurden. Um alle Snapshot-Dateien zu sehen, geben Sie ein: “-delta.vmdk“

Methode 2: Storage-View in vCenter Server

Der Storage View ist Teil eines neuen, mit vCenter Server gelieferten Plug-In für Storage Monitoring und Reporting. Er zeigt Informationen zu Storage in vSphere. Wenn Sie im linken Bereich des vSphere Client ein Objekt auswählen, können Sie rechts den Tab für Storage View anklicken und so die Storage-Informationen zu diesem Objekt anzeigen lassen. Eine der hier zur Auswahl stehenden Spalten ist Snapshot Space. Sie gibt die Gesamtgröße aller mit Snapshots zusammenhängenden Dateien an, einschließlich -delta.vmdk-, .vmsd- und .vmsn-Dateien.

Wenn Sie ein Objekt wie Cluster oder Datacenter auswählen und nach dem Feld Snapshot Space sortieren, können Sie die Größe jedes VM-Snapshots sehen, der unter diesem Objekt existiert. Für VMs, für die es noch keinen Snapshot gibt, werden hier 0 Byte angezeigt. Wenn mindestens einmal ein Snapshot einer VM angefertigt wurde, wird stets zumindest eine geringe Dateigröße (etwa 40 Byte) zu sehen sein; sie ergibt sich aus dem übrig gebliebenen Text in der .vmsd-Datei.

Methode 3: Arbeiten mit Alarmen in vCenter Server

Sie können vCenter Server so konfigurieren, dass eine Warnmeldung ausgegeben wird, wenn ein VM-Snapshot eine vorgegebene Gigabyte-Grenze erreicht. Derartige Alarme lassen sich außerdem auf jeder Ebene der Virtualisierung setzen – von einzelnen Maschinen bis zum vCenter Server als oberster Ebene. Die Warnmeldungen halten sie dann über das Snapshot-Wachstum auf dem Laufenden, so dass Sie, wenn nötig, eingreifen können.

Methode 4: Verwendung eines PowerShell-Skripts

Mit dem Befehl Get-Snapshot, enthalten in vSphere PowerCLI, lassen sich Snapshot-Informationen abrufen. Sie können ihn auch in einem Skript verwenden, das Berichte über VMs mit aktiven Snapshots anfertigt. Dafür gibt es mehrere kostenlose PowerShell-Skripts, die Sie herunterladen und regelmäßig laufen lassen können, etwa SnapReminder , yadr – A vdisk reporter oder Snapshot List. Die Skripts lassen sich auch so konfigurieren, dass sie automatisch laufen.

Umgang mit nicht korrekt gelöschten Snapshots

Gelegentlich lässt sich ein Snapshot nicht ordnungsgemäß löschen, so dass für eine VM ein aktiver Snapshot zurückbleibt. Dazu kann es kommen, wenn Sie mit Backup-Anwendungen arbeiten oder Snapshots über den Snapshot Manager löschen. In den meisten Fällen werden die fraglichen Snapshots im Snapshot Manager nicht zu sehen sein – der einzige Hinweis auf das Vorhandensein eines Snapshots sind dann mögliche Delta-Dateien im Verzeichnis der VM.

Wenn Sie einen Snapshot haben, der nicht im Snapshot Manager angezeigt wird, können Sie auf zwei Weisen versuchen, ihn zu löschen. Erstens können Sie mit dem vSphere Client einen neuen Snapshot erzeugen und anschließend aus dem Snapshot Manager sämtliche Snapshots löschen. Alternativ können Sie auch die ESX-Servicekonsole oder den vSphere CLI verwenden: Wechseln Sie in das Home-Verzeichnis der VM und legen Sie einen neuen Snapshot an, indem Sie eingeben vmware-cmd createsnapshot. Warten Sie, bis dieser Vorgang abgeschlossen ist und geben Sie dann ein vmware-cmd removesnapshots. Sehen Sie anschließend nach, ob die Delta-Dateien gelöscht wurden – falls dies der Fall ist, konnten Sie den Snapshot löschen.

Wenn die Delta-Dateien noch vorhanden sind, prüfen Sie die VMX-Datei für die VM und finden Sie darin die Zeilen, die mit scsi beginnen. Wenn die VMN mit nur einer virtuellen Festplatte konfiguriert ist, handelt es sich dabei meistens um scsi0:0 (falls der Wert .present auf false steht, wird ein nicht vorhandenes Laufwerk angezeigt, das Sie ignorieren können). Als Name .fileName sollte die Disk-Datei eingetragen sein, die anfangs zusammen mit der VM angelegt wurde – meistens entspricht er dem Namen der VM selbst. Wenn dies der Fall ist, verwendet Ihre VM die Snapshot-Dateien nicht. Wenn im Dateinamen -00000# vorkommt, nutzt sie aktuell eine Snapshot-Datei.

Zur Klärung noch einmal: Für eine VM ohne Snapshot wird angezeigt scsi0:0.present = “true“ scsi0:0.fileName = “myvmname.vmdk“. Bei einer VM mit Snapshots lautet die Ausgabe scsi0:0.present = “true“ scsi0:0.fileName = “myvmname-000001.vmdk“.

Wenn das oben erklärte Vorgehen nicht funktioniert, können Sie noch entweder die VM oder ihre Disk-Datei klonen. Um die VM zu klonen, können Sie entweder die Funktion clone in vCenter Server verwenden oder die Standalone-Anwendung vCenter Converter. Nach dem Klonvorgang müssen Sie die alte VM herunterfahren und löschen.

Eine weitere Möglichkeit ist das Herunterfahren der VM. Loggen Sie sich dazu in die ESX-Servicekonsole ein oder starten Sie bei ESXi den Tech Support Mode. Wechseln Sie dann in das Verzeichnis der VM und klonen Sie ihre Disk-Datei. Verwenden Sie dazu vmkfstools und geben Sie als Quell-Disk die Snapshot-Datei an (z.B. vmkfstools –i myvmname-000001.vmdk myvmnamenew.vmdk).

Rufen Sie als Nächstes die Einstellungen für die VM auf. Entfernen Sie dort die Festplatte (aber löschen Sie sie nicht!). Fügen Sie dann eine neue Festplatte hinzu und wählen Sie die neu erstellte Disk-Datei aus. Starten Sie die VM, prüfen Sie, ob alles funktioniert, und löschen Sie dann die alten Disk- und Delta-Dateien.

Speicherort von Snapshot-Dateien ändern

Standardmäßig werden die Snapshots im Home-Verzeichnis der jeweiligen VM gespeichert. Möglicherweise wollen Sie das verändern, zum Beispiel um keinen Platz auf dem Volume für Ihre VM zu verbrauchen. Hier lässt sich für jede VM individuell ein neues Arbeitsverzeichnis angeben. Sowohl Snapshots als auch .vswp-Dateien werden dann in dieses Verzeichnis geschrieben.

Eine Warnung: Wenn sich die VM auf geteiltem Storage befindet und Sie als Speicherort lokales Storage angeben, können Sie Funktionen nicht einsetzen, die VMs zwischen unterschiedlichen Hosts verschieben, also etwa vMotion, High Availability oder Distributed Resource Scheduler. Um dies zu tun, müssen Sie folgendermaßen vorgehen:

  1. Schalten Sie Ihre VM aus und loggen Sie sich in die ESX-Servicekonsole ein oder starten Sie den ESXi Tech Support Mode.
  2. Bearbeiten Sie die VMX-Datei Ihrer VM mit dem Editor nano (nur bei ESX) oder vi (bei ESX oder ESXi).
  3. Fügen Sie eine neue Zeile ein und benutzen Sie dabei als Syntax workingDir=“/vmfs/volumes/SnapVolume/Snapshots/“
  4. Wenn Sie Ihre .vswp-Datei weiter im VM-Verzeichnis haben wollen, fügen Sie außerdem die Zeile sched.swap.dir = „“/vmfs/volumes/VM-Voume1/MyVM/hinzu. Dieser Schritt ist optional. Sie brauchen sich dabei nicht darum zu kümmern, den Parameter „sched.swap.derivedName“ zu aktualisieren – dieser wird von der VM generiert und bei jedem Einschalten in die Konfigurationsdatei geschrieben.
  5. Schalten Sie die VM ein. Ihre .vswp-, .wmsn- und Snapshot-Dateien (delta-vmdk) werden jetzt in diesem Verzeichnis zu finden sein.

vMotion und Storage vMotion mit Snapshots verwenden

Mit vMotion lassen sich VMs auf andere Hosts verlagern, wobei alle bestehenden Snapshots erhalten bleiben. Wenn Sie allerdings versuchen, eine VM mit einem laufenden Snapshots zwischen Hosts zu übertragen, werden Sie die folgende Warnmeldung sehen: „Reverting to snapshot would generate error (warnings) on the destination host“. Der Migrationsassistent kann also nicht überprüfen, ob der Zustand der VM im Snapshot mit dem Ziel-Host kompatibel ist.

Weil die Kompatibilität nicht geprüft wird, kann es zu einem Fehler kommen, wenn die VM-Konfiguration im Snapshot Geräte oder virtuelle Festplatten verwendet, die für den Ziel-Host nicht zugänglich sind. Ein Fehler ist auch dann möglich, wenn der Snapshot einen aktiven VM-Zustand enthält, der auf virtueller Hardware lief, die mit der CPU des Ziel-Host inkompatibel ist.

Die Verwendung von Storage vMotion für die Verlagerung einer VM auf einen anderen Festplatten-Ort wird nicht von Anfang an unterstützt. Deshalb müssen Sie dafür zunächst alle Snapshots auf einer VM löschen. Alternativ können Sie die VM auch ausschalten und eine kalte Migration auf einen anderen Speicherort vornehmen.

Fault Tolerance mit Snapshots verwenden

Bei VMs, auf denen die Funktion Fault Tolerance (FT) genutzt wird, werden VM-Snapshots nicht unterstützt. Als Folge davon kann es kompliziert sein, Backups von FT-fähigen VMs zu erstellen, denn viele Backup-Anwendungen arbeiten mit VM-Snapshots.

In diesem Fall müssen Sie nach alternativen Backup-Methoden suchen. In Frage kommen etwa herkömmliche Backup-Agenten auf Betriebssystemebene, die innerhalb der VM laufen, das Klonen von VMs und das Backups der Klone, das vorübergehende Deaktivieren von FT während des VM-Backups oder Backups des VM-Datenspeichers mit Hilfe von Storage-Snapshots.

Fault Tolerance lässt sich über PowerShell-Skripte steuern. Damit können Sie zum Beispiel vor einem Backup FT vorübergehend deaktivieren, so dass Ihre Backup-Anwendung einen Snapshot nehmen kann. Mit einem weiteren Skript für nach dem Backup können Sie FT dann wieder anschalten.

Artikel wurde zuletzt im Mai 2011 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Essential Guide

Mehr Datensicherheit durch Replikation und Snapshots

0 Kommentare

Älteste Beiträge 

Passwort vergessen?

Kein Problem! Tragen Sie Ihre E-Mail-Adresse unten ein. Wir werden Ihnen eine E-Mail mit Ihrem Passwort schicken.

Ihr Passwort wurde an die folgende E-Mail-Adresse gesendet::

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchEnterpriseSoftware.de

Close