VM-Snapshots
XenServer bietet einen praktischen Mechanismus, mit dem zu einem bestimmten Zeitpunkt ein Snapshot eines VM-Speichers und der Metadaten erstellt werden kann. Falls erforderlich, werden I/O während der Snapshot-Erstellung vorübergehend angehalten, um sicherzustellen, dass ein selbstkonsistentes Disk-Image erfasst werden kann.
Snapshot-Vorgänge führen zu einer Snapshot-VM, die einer Vorlage ähnelt. Der VM-Snapshot enthält alle Speicherinformationen und die VM-Konfiguration, einschließlich angehängter VIFs, sodass sie für Backupzwecke exportiert und wiederhergestellt werden können. Snapshots werden auf 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 XenServer erstellt wurde, muss es aktualisiert worden sein
- Das Volume muss das Standardformat haben (Sie können keinen Snapshot von
type=raw
-Volumes erstellen)
Der Snapshot-Vorgang ist ein zweistufiger Prozess:
-
Metadaten als Vorlage erfassen.
-
Erstellen eines VDI-Snapshots der Datenträger.
Die folgenden Typen von VM-Snapshots werden unterstützt: regulär und Snapshot mit Speicher.
Regelmäßige Schnappschüsse
Regelmäßige Snapshots sind absturzkonsistent und können auf allen VM-Typen, einschließlich Linux-VMs, durchgeführt werden.
Schnappschüsse mit Speicher
Snapshots mit Speicher speichern nicht nur den Arbeitsspeicher (Speicher) und die Metadaten der virtuellen Maschinen, sondern speichern auch den Status (RAM) der virtuellen Maschinen. Diese Funktion kann nützlich sein, wenn Sie Software aktualisieren oder patchen, aber Sie möchten auch die Option haben, zum VM-Status (RAM) vor der Änderung zurückzukehren. Das Zurücksetzen auf einen Snapshot mit Arbeitsspeicher erfordert keinen Neustart der VM.
Sie können einen Snapshot mit dem Speicher einer laufenden oder angehaltenen VM erstellen, indem Sie die Verwaltungs-API, die XE-CLI oder XenCenter verwenden.
Erstellen eines VM-Snapshots
Bevor Sie einen Snapshot erstellen, lesen Sie die folgenden Informationen zu speziellen betriebssystemspezifischen Konfigurationen und Überlegungen:
- Vorbereiten des Klonens einer Windows-VM mithilfe von Sysprep
- Vorbereitung zum Klonen einer Linux-VM
Stellen Sie zunächst sicher, dass die VM läuft oder angehalten wird, damit der Speicherstatus erfasst werden kann. Der einfachste Weg, die VM auszuwählen, auf der der Vorgang ausgeführt werden soll, ist die Angabe des Arguments vm=name
oder vm=vm uuid
.
Führen Sie den vm-snapshot
Befehl aus, um einen Snapshot einer VM zu erstellen.
xe vm-snapshot vm=vm uuid new-name-label=vm_snapshot_name
<!--NeedCopy-->
Erstellen Sie einen Snapshot 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
<!--NeedCopy-->
Wenn XenServer die Erstellung des Snapshots mit Speicher abgeschlossen hat, wird seine UUID angezeigt.
Beispiel:
xe vm-checkpoint vm=2d1d9a08-e479-2f0a-69e7-24a0e062dd35 \
new-name-label=example_checkpoint_1
b3c0f369-59a1-dd16-ecd4-a1211df29886
<!--NeedCopy-->
Ein Snapshot mit Arbeitsspeicher benötigt mindestens 4 MB Speicherplatz pro Datenträger plus die Größe des Arbeitsspeichers plus etwa 20% Overhead. Ein Checkpoint mit 256 MB RAM würde also etwa 300 MB Speicher benötigen.
Hinweis:
Während des Checkpoint-Erstellungsprozesses wird die VM für einen kurzen Zeitraum angehalten und kann in diesem Zeitraum nicht verwendet werden.
Um alle Snapshots in Ihrem XenServer-Pool aufzulisten
Führen Sie den Befehl snapshot-list
aus:
xe snapshot-list
<!--NeedCopy-->
Dieser Befehl listet alle Snapshots im XenServer-Pool auf.
So listen Sie die Snapshots auf einer bestimmten VM auf
Rufen Sie die UUID der bestimmten VM ab, indem Sie den Befehl vm-list
ausführen.
xe vm-list
<!--NeedCopy-->
Dieser Befehl zeigt eine Liste aller VMs und ihrer UUIDs an. Beispiel:
xe vm-list
uuid ( RO): 116dd310-a0ef-a830-37c8-df41521ff72d
name-label ( RW): Windows Server 2016 (1)
power-state ( RO): halted
uuid ( RO): dff45c56-426a-4450-a094-d3bba0a2ba3f
name-label ( RW): Control domain on host
power-state ( RO): running
<!--NeedCopy-->
VMs können auch angegeben werden, indem die vollständige Liste der VMs nach den Werten von Feldern gefiltert wird.
Wenn Sie beispielsweise power-state=halted
angeben, werden alle VMs ausgewählt, deren Energiestatusfeld “angehalten” entspricht. Wenn mehrere VMs übereinstimmen, muss die Option --multiple
angegeben werden, um den Vorgang durchzuführen. Rufen Sie die vollständige Liste der Felder ab, die mit dem Befehl abgeglichen werden können xe vm-list params=all
.
Suchen Sie die erforderliche VM und geben Sie dann Folgendes ein:
xe snapshot-list snapshot-of=vm uuid
<!--NeedCopy-->
Beispiel:
xe snapshot-list snapshot-of=2d1d9a08-e479-2f0a-69e7-24a0e062dd35
<!--NeedCopy-->
Dieser Befehl listet die Momentaufnahmen auf dieser VM auf:
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
<!--NeedCopy-->
Wiederherstellen einer VM in ihren vorherigen Zustand
Stellen Sie sicher, dass Sie über die UUID des Snapshots verfügen, zu dem Sie zurückkehren möchten, und führen Sie dann den Befehl snapshot-revert
aus:
-
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 <!--NeedCopy-->
-
Notieren Sie sich die UUID des Snapshots und führen Sie dann zum Zurücksetzen den folgenden Befehl aus:
xe snapshot-revert snapshot-uuid=snapshot uuid <!--NeedCopy-->
Beispiel:
xe snapshot-revert snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886 <!--NeedCopy-->
Nach dem Zurücksetzen einer VM zu einem Checkpoint wird die VM angehalten.
Hinweise:
Wenn nicht genügend Speicherplatz zur Verfügung steht, um den Snapshot dick bereitzustellen, 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 jedem Snapshot zurückzukehren. Vorhandene Snapshots und Checkpoints werden während des Wiederherstellungsvorgangs nicht gelöscht.
Löschen eines Schnappschusses
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:
-
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 <!--NeedCopy-->
-
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 <!--NeedCopy-->
-
Dieser Befehl weist Sie auf die VM und die VDIs hin, die gelöscht wurden. Geben Sie zur Bestätigung
yes
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
<!--NeedCopy-->
Wenn Sie nur die Metadaten eines Checkpoints oder Snapshots entfernen möchten, führen Sie den folgenden Befehl aus:
xe snapshot-destroy snapshot-uuid=snapshot-uuid
<!--NeedCopy-->
Beispiel:
xe snapshot-destroy snapshot-uuid=d7eefb03-39bc-80f8-8d73-2ca1bab7dcff
<!--NeedCopy-->
Snapshot-Vorlagen
Erstellen einer Vorlage aus einem Snapshot
Sie können eine VM-Vorlage aus einem Snapshot erstellen. Sein Speicherzustand wird jedoch entfernt.
-
Verwenden Sie den Befehl
snapshot-copy
und geben Sienew-name-label
für die Vorlage an:xe snapshot-copy new-name-label=vm-template-name \ snapshot-uuid=uuid of the snapshot <!--NeedCopy-->
Beispiel:
xe snapshot-copy new-name-label=example_template_1 snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886 <!--NeedCopy-->
Hinweis:
Dieser Befehl erstellt ein Vorlagenobjekt im SAME-Pool. Diese Vorlage ist in der XenServer-Datenbank nur für den aktuellen Pool vorhanden.
-
Um zu überprüfen, ob die Vorlage erstellt wurde, führen Sie den folgenden Befehl aus
template-list
:xe template-list <!--NeedCopy-->
Dieser Befehl listet alle Vorlagen auf dem XenServer-Host auf.
Exportieren eines Schnappschusses in eine Vorlage
Wenn Sie einen VM-Snapshot exportieren, wird eine vollständige Kopie der VM (einschließlich Disk-Images) als einzelne Datei auf Ihrem lokalen Computer gespeichert. Diese Datei hat eine .xva
-Dateinamenerweiterung.
-
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 <!--NeedCopy-->
Beispiel:
xe snapshot-export-to-template snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886 \ filename=example_template_export <!--NeedCopy-->
Die VM-Export-/Importfunktion kann auf verschiedene Arten verwendet werden:
-
Als praktische Backup-Funktion für Ihre VMs. Eine exportierte VM-Datei kann verwendet werden, um eine gesamte VM in einem Katastrophenszenario wiederherzustellen.
-
Um eine VM schnell zu kopieren, z. B. eine spezielle Serverkonfiguration, die Sie häufig verwenden. Sie konfigurieren die VM einfach so, wie Sie es möchten, exportieren sie und importieren sie dann, um Kopien Ihrer ursprünglichen VM zu erstellen.
-
Als einfache Methode zum Verschieben einer VM auf einen anderen Host.
Weitere Informationen zur Verwendung von Vorlagen finden Sie unter Erstellen von VMs und im Artikel Verwalten von VMs in der XenCenter-Dokumentation.
Geplante Snapshots
Die Funktion Geplante Snapshots bietet ein einfaches Backup- und Wiederherstellungsdienstprogramm für Ihre kritischen Service-VMs. Regelmäßig geplante Snapshots werden automatisch erstellt und können zur Wiederherstellung einzelner VMs verwendet werden. Geplante Snapshots verfügen über 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. In einem Pool können mehrere geplante Snapshots aktiviert werden, die verschiedene VMs und unterschiedliche Zeitpläne abdecken. Eine VM kann jeweils nur einem Snapshot-Zeitplan zugewiesen werden.
XenCenter bietet eine Reihe von Tools, die Sie bei der Verwendung dieser Funktion unterstützen:
-
Verwenden Sie den Assistenten zum Erstellen eines neuen Snapshot-Zeitplans, 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 zugehörige Eigenschaften-Dialogfeld 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.
In diesem Artikel
- Regelmäßige Schnappschüsse
- Schnappschüsse mit Speicher
- Erstellen eines VM-Snapshots
- Erstellen Sie einen Snapshot mit Speicher
- Um alle Snapshots in Ihrem XenServer-Pool aufzulisten
- So listen Sie die Snapshots auf einer bestimmten VM auf
- Wiederherstellen einer VM in ihren vorherigen Zustand
- Snapshot-Vorlagen
- Geplante Snapshots