VM-Snapshots

Citrix Hypervisor bietet einen praktischen Mechanismus, mit dem ein Snapshot eines VM-Speichers und Metadaten zu einem bestimmten Zeitpunkt erstellt werden kann. Bei Bedarf wird die E/A vorübergehend angehalten, während der Snapshot erstellt wird, um sicherzustellen, dass ein selbstkonsistentes Festplatten-Image erfasst werden kann.

Snapshot-Vorgänge führen zu einer Snapshot-VM, die einer Vorlage ähnlich ist. Der VM-Snapshot enthält alle Speicherinformationen und die VM-Konfiguration, einschließlich angeschlossener VIFs, sodass sie für Backupzwecke exportiert und wiederhergestellt werden können. Snapshots werden von allen Speichertypen unterstützt. Für die LVM-basierten Speichertypen müssen jedoch die folgenden Anforderungen erfüllt sein:

  • Wenn das Speicher-Repository auf einer früheren Version von Citrix Hypervisor erstellt wurde, muss es aktualisiert worden sein
  • Das Volume muss im Standardformat vorliegen (Sie können keine Momentaufnahme von type=raw Volumes erstellen)

Der Snapshot-Vorgang ist ein zweistufiger Prozess:

  • Erfassen von Metadaten als Vorlage.

  • Erstellen eines VDI-Snapshots der Festplatten.

Die folgenden Typen von VM-Snapshots werden unterstützt: Regular und Snapshot mit Speicher

Reguläre Schnappschüsse

Regelmäßige Snapshots sind absturzkonsistent und können auf allen VM-Typen, einschließlich Linux-VMs, ausgeführt werden.

Snapshots mit Speicher

Neben dem Speichern des Speichers (Speichers) und der Metadaten der VMs speichern Snapshots mit Speicher auch den Status der VMs (RAM). Diese Funktion kann nützlich sein, wenn Sie Software aktualisieren oder patchen, aber Sie möchten auch die Option zum Wiederherstellen des VM-Status (RAM) vor der Änderung wiederherstellen. Das Zurücksetzen auf einen Snapshot mit Speicher erfordert keinen Neustart der VM.

Sie können einen Snapshot mit dem Speicher einer ausgeführten oder angehaltenen VM über die Verwaltungs-API, die xe CLI oder über XenCenter erstellen.

Erstellen eines VM-Snapshots

Bevor Sie einen Snapshot erstellen, lesen Sie die folgenden Informationen zu speziellen betriebssystemspezifischen Konfigurationen und Überlegungen:

Stellen Sie zunächst sicher, dass die VM ausgeführt oder angehalten wird, damit der Speicherstatus erfasst werden kann. Die einfachste Möglichkeit, die VM auszuwählen, auf der der Vorgang ausgeführt werden soll, besteht darin, das Argument vm=name oder anzugeben vm=vm uuid.

Führen Sie den Befehl vm-snapshot aus, um einen Snapshot einer VM zu erstellen.

xe vm-snapshot vm=vm uuid new-name-label=vm_snapshot_name

Erstellen eines Snapshots mit Speicher

Führen Sie den Befehl vm-checkpoint aus und geben Sie einen beschreibenden Namen für den Snapshot mit Speicher, damit Sie ihn später identifizieren können:

xe vm-checkpoint vm=vm uuid new-name-label=name of the checkpoint

Wenn Citrix Hypervisor das Erstellen des Snapshots mit Speicher abgeschlossen hat, wird die UUID angezeigt.

Beispiel:

xe vm-checkpoint vm=2d1d9a08-e479-2f0a-69e7-24a0e062dd35 \
new-name-label=example_checkpoint_1
b3c0f369-59a1-dd16-ecd4-a1211df29886

Ein Snapshot mit Arbeitsspeicher benötigt mindestens 4 MB Speicherplatz pro Festplatte zuzüglich der Größe des RAM plus etwa 20% Overhead. Ein Checkpoint mit 256 MB RAM würde also etwa 300 MB Speicher benötigen.

Hinweis:

Während der Prüfpunkterstellung wird die VM für einen kurzen Zeitraum angehalten und kann in diesem Zeitraum nicht verwendet werden.

So listen Sie alle Snapshots im Citrix Hypervisor -Pool auf

Führen Sie den Befehl snapshot-list aus.

xe snapshot-list

Dieser Befehl listet alle Snapshots im Citrix Hypervisor -Pool auf.

So listen Sie die Snapshots auf einer bestimmten VM auf

Ruft die UUID der bestimmten VM ab, indem Sie den Befehl vm-list ausführen.

xe vm-list

Mit diesem Befehl wird eine Liste aller VMs und ihrer UUIDs angezeigt. Beispiel:

xe vm-list
uuid ( RO): 116dd310-a0ef-a830-37c8-df41521ff72d
name-label ( RW): Windows Server 2012 (1)
power-state ( RO): halted

uuid ( RO): 96fde888-2a18-c042-491a-014e22b07839
name-label ( RW): Windows 2008 R2 (1)
power-state ( RO): running

uuid ( RO): dff45c56-426a-4450-a094-d3bba0a2ba3f
name-label ( RW): Control domain on host
power-state ( RO): running

VMs können auch angegeben werden, indem die vollständige Liste der VMs nach den Werten der Felder gefiltert wird.

Wenn Sie beispielsweise angeben, werden alle VMs power-state=halted ausgewählt, deren Power-State-Feld gleich “angehalten” ist. Wenn mehrere VMs übereinstimmen, --multiple muss die Option angegeben werden, um den Vorgang auszuführen. Rufen Sie die vollständige Liste der Felder ab, die mit dem Befehl xe vm-list params=all abgeglichen werden können.

Suchen Sie die erforderliche VM, und geben Sie Folgendes ein:

xe snapshot-list snapshot-of=vm uuid

Beispiel:

xe snapshot-list snapshot-of=2d1d9a08-e479-2f0a-69e7-24a0e062dd35

Mit diesem Befehl werden die Snapshots aufgeführt, die sich derzeit auf dieser VM befinden:

    uuid ( RO): d7eefb03-39bc-80f8-8d73-2ca1bab7dcff
    name-label ( RW): Regular
    name-description ( RW):
    snapshot_of ( RO): 2d1d9a08-e479-2f0a-69e7-24a0e062dd35
    snapshot_time ( RO): 20090914T15:37:00Z

    uuid ( RO): 1760561d-a5d1-5d5e-2be5-d0dd99a3b1ef
    name-label ( RW): Snapshot with memory
    name-description ( RW):
    snapshot_of ( RO): 2d1d9a08-e479-2f0a-69e7-24a0e062dd35
    snapshot_time ( RO): 20090914T15:39:45Z

Wiederherstellen des vorherigen Status einer VM

Stellen Sie sicher, dass Sie über die UUID des Snapshots verfügen, auf den Sie zurücksetzen möchten, und führen Sie dann den folgenden Befehl snapshot-revert aus:

  1. Führen Sie den Befehl snapshot-list aus, um die UUID des Snapshots oder Checkpoints zu finden, zu dem Sie zurückkehren möchten:

    xe snapshot-list
    
  2. Notieren Sie sich die UUID des Snapshots, und führen Sie dann den folgenden Befehl zum Wiederherstellen aus:

    xe snapshot-revert snapshot-uuid=snapshot uuid
    

    Beispiel:

    xe snapshot-revert snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886
    

    Nach dem Zurücksetzen einer VM auf einen Prüfpunkt wird die VM angehalten.

Hinweise:

  • Wenn nicht genügend Speicherplatz zur Bereitstellung des Snapshots verfügbar ist, können Sie den Snapshot erst wiederherstellen, wenn der Status des aktuellen Datenträgers freigegeben wurde. Wenn dieses Problem auftritt, wiederholen Sie den Vorgang.

  • Es ist möglich, zu einem beliebigen Snapshot zurückzukehren. Vorhandene Snapshots und Prüfpunkte werden während des Wiederherstellen nicht gelöscht.

Löschen eines Snapshots

Stellen Sie sicher, dass Sie über die UUID des Checkpoints oder Snapshots verfügen, den Sie entfernen möchten, und führen Sie dann den folgenden Befehl aus:

  1. Führen Sie den Befehl snapshot-list aus, um die UUID des Snapshots oder Checkpoints zu finden, zu dem Sie zurückkehren möchten:

    xe snapshot-list
    
  2. Notieren Sie sich die UUID des Snapshots, und führen Sie dann den Befehl snapshot-uninstall aus, um ihn zu entfernen:

    xe snapshot-uninstall snapshot-uuid=snapshot-uuid
    
  3. Mit diesem Befehl werden Sie auf die gelöschte VM und VDIs gewarnt. Geben Sie yes zur Bestätigung ein.

Beispiel:

    xe snapshot-uninstall snapshot-uuid=1760561d-a5d1-5d5e-2be5-d0dd99a3b1ef
    The following items are about to be destroyed
    VM : 1760561d-a5d1-5d5e-2be5-d0dd99a3b1ef (Snapshot with memory)
    VDI: 11a4aa81-3c6b-4f7d-805a-b6ea02947582 (0)
    VDI: 43c33fe7-a768-4612-bf8c-c385e2c657ed (1)
    VDI: 4c33c84a-a874-42db-85b5-5e29174fa9b2 (Suspend image)
    Type 'yes' to continue
    yes
    All objects destroyed

Wenn Sie nur die Metadaten eines Prüfpunkts oder Snapshots entfernen möchten, führen Sie den folgenden Befehl aus:

xe snapshot-destroy snapshot-uuid=snapshot-uuid

Beispiel:

xe snapshot-destroy snapshot-uuid=d7eefb03-39bc-80f8-8d73-2ca1bab7dcff

Snapshot-Vorlagen

Erstellen einer Vorlage aus einem Snapshot

Sie können eine VM-Vorlage aus einem Snapshot erstellen. Der Speicherstatus wird jedoch entfernt.

  1. Verwenden Sie den Befehl snapshot-copy und geben Sie new-name-label für die Vorlage an:

    xe snapshot-copy new-name-label=vm-template-name \
          snapshot-uuid=uuid of the snapshot
    

    Beispiel:

    xe snapshot-copy new-name-label=example_template_1
          snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886
    

    Hinweis:

    Mit diesem Befehl wird ein Vorlagenobjekt im selben Pool erstellt. Diese Vorlage ist nur für den aktuellen Pool in der Citrix Hypervisor Datenbank vorhanden.

  2. Um zu überprüfen, ob die Vorlage erstellt wurde, führen Sie den folgenden Befehl template-list aus :

    xe template-list
    

    Dieser Befehl listet alle Vorlagen auf dem Citrix Hypervisor-Server auf.

Exportieren eines Snapshots in eine Vorlage

Wenn Sie einen VM-Snapshot exportieren, wird eine vollständige Kopie der VM (einschließlich Festplatten-Images) als einzelne Datei auf Ihrem lokalen Computer gespeichert. Diese Datei hat eine .xva Dateinamenerweiterung.

  1. Verwenden Sie den Befehl snapshot-export-to-template, um eine Vorlagendatei zu erstellen:

    xe snapshot-export-to template snapshot-uuid=snapshot-uuid \
          filename=template-  filename
    

    Beispiel:

    xe snapshot-export-to-template snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886 \
          filename=example_template_export
    

Die VM-Export-/Importfunktion kann auf verschiedene Arten verwendet werden:

  • Als bequeme Backupfunktion für Ihre VMs. Eine exportierte VM-Datei kann verwendet werden, um eine gesamte VM in einem Notfallszenario wiederherzustellen.

  • Um eine VM schnell zu kopieren, z. B. eine spezielle Serverkonfiguration, die Sie oft verwenden. Sie konfigurieren die VM einfach nach Ihren Wünschen, exportieren sie und importieren sie dann, um Kopien Ihrer ursprünglichen VM zu erstellen.

  • Als einfache Methode zum Verschieben einer VM auf einen anderen Server.

Weitere Informationen zur Verwendung von Vorlagen finden Sie unter Erstellen von VMs und auch im Verwalten von VMs Artikel im XenCenter Dokumentation.

Geplante Snapshots

Die Funktion “Zeitgesteuerte Snapshots” bietet ein einfaches Backup- und Wiederherstellungsprogramm für Ihre kritischen Service-VMs. Regelmäßige geplante Snapshots werden automatisch erstellt und können zum Wiederherstellen einzelner VMs verwendet werden. Geplante Snapshots funktionieren durch poolweite Snapshot-Zeitpläne für ausgewählte VMs im Pool. Wenn ein Snapshot-Zeitplan aktiviert ist, werden Snapshots der angegebenen VM jede Stunde, Tag oder Woche zur geplanten Zeit erstellt. Mehrere zeitgesteuerte Snapshots können in einem Pool aktiviert werden, die verschiedene VMs abdecken und mit unterschiedlichen Zeitplänen abdecken. Eine VM kann jeweils nur einem Snapshot-Zeitplan zugewiesen werden.

XenCenter bietet eine Reihe von Tools, mit denen Sie diese Funktion verwenden können:

  • Verwenden Sie den Assistenten für Neuer Snapshot, um einen geplanten Snapshot zu definieren.

  • Um geplante Snapshots für einen Pool zu aktivieren, zu deaktivieren, zu bearbeiten und zu löschen, verwenden Sie das Dialogfeld VM-Snapshot-Zeitpläne.

  • Um einen Snapshot-Zeitplan zu bearbeiten, öffnen Sie das Dialogfeld Eigenschaften im Dialogfeld VM-Snapshot-Zeitpläne.

  • Um eine VM auf einen geplanten Snapshot zurückzusetzen, wählen Sie den Snapshot auf der Registerkarte Snapshots aus, und stellen Sie die VM wieder her.

Weitere Informationen finden Sie unter Geplante Snapshots in der XenCenter Dokumentation.