[SOLVED] pve-zsync Snapshots

Mar 30, 2020
154
18
38
44
Hallo

Darf ich mal wieder eine Verständnisfrage stellen?

Ich habe mit pve-zsync mehrere VM von einem Node auf den anderen repliziert um den alten Node ablösen zu können. Die Nodes stehen in KEINEM gemeinsamen Cluster.
Funktioniert hat alles bestens jedoch sehe ich für jedes Replikat ein Snapshot auf dem alten und neuen Node.

zfs List vom alten Node -> Schaut soweit ok aus
Code:
zfs list
NAME                              USED  AVAIL     REFER  MOUNTPOINT
nvmZFS                            655G  66.2G       96K  /nvmZFS
nvmZFS/vm-107-disk-0              378G   272G      122G  -
nvmZFS/vm-108-disk-0              276G   272G     44.3G  -
zSpace                           6.84T  3.36T     12.7G  /zSpace
zSpace/swap                      17.0G  3.37T     7.63G  -
zSpace/vm                        6.51T  3.36T      140K  /zSpace/vm
zSpace/vm/vm-100-disk-0          5.25T  3.36T     5.25T  -
zSpace/vm/vm-100-disk-1           449G  3.62T      151G  -
zSpace/vm/vm-104-disk-0           238G  3.60T     81.4K  -
zSpace/vm/vm-104-disk-1           599G  3.65T      257G  -
zSpace/vmcompress                 312G  3.36T      140K  /zSpace/vmcompress
zSpace/vmcompress/vm-104-disk-0   297G  3.53T      129G  -
zSpace/vmcompress/vm-999-disk-0  14.9G  3.38T      541K  -


zfs list -t snapshot zeigt jeden Sync

Code:
 zfs list -t snapshot
NAME                                                            USED  AVAIL     REFER  MOUNTPOINT
nvmZFS/vm-107-disk-0@rep_test_2022-01-20_17:09:15              46.8M      -      119G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_19:51:02               20.3M      -      119G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:00:07               5.86M      -      119G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:15:01               6.32M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:30:09               5.89M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:45:01               6.10M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:00:01               6.18M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:15:01               5.91M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:30:03               6.04M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:45:07               7.09M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_22:00:01               6.60M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_22:15:01               7.14M      -      121G  -


Meine Frage:
Kann ich die vm so belassen oder müssen diese Snapshots gelöscht/konsolidiert werden?

Danke & sg Roland
 
Hallo,
Hallo

Darf ich mal wieder eine Verständnisfrage stellen?

Ich habe mit pve-zsync mehrere VM von einem Node auf den anderen repliziert um den alten Node ablösen zu können. Die Nodes stehen in KEINEM gemeinsamen Cluster.
Funktioniert hat alles bestens jedoch sehe ich für jedes Replikat ein Snapshot auf dem alten und neuen Node.
Ja, weil der Snapshot der Zustand ist, der repliziert wird. Solange es zumindest einen gemeinsamen Snapshot gibt, muss nur die Differenz inkrementell gesendet werden, was viel effizienter ist. Die Anzahl wie viele Snapshots gespeichert werden sollen, kann mit --maxsnap (für Quelle und Ziel) und mit --dest-maxsnap (überschreibt den Wert für das Ziel) gesteuert werden.

zfs List vom alten Node -> Schaut soweit ok aus
Code:
zfs list
NAME                              USED  AVAIL     REFER  MOUNTPOINT
nvmZFS                            655G  66.2G       96K  /nvmZFS
nvmZFS/vm-107-disk-0              378G   272G      122G  -
nvmZFS/vm-108-disk-0              276G   272G     44.3G  -
zSpace                           6.84T  3.36T     12.7G  /zSpace
zSpace/swap                      17.0G  3.37T     7.63G  -
zSpace/vm                        6.51T  3.36T      140K  /zSpace/vm
zSpace/vm/vm-100-disk-0          5.25T  3.36T     5.25T  -
zSpace/vm/vm-100-disk-1           449G  3.62T      151G  -
zSpace/vm/vm-104-disk-0           238G  3.60T     81.4K  -
zSpace/vm/vm-104-disk-1           599G  3.65T      257G  -
zSpace/vmcompress                 312G  3.36T      140K  /zSpace/vmcompress
zSpace/vmcompress/vm-104-disk-0   297G  3.53T      129G  -
zSpace/vmcompress/vm-999-disk-0  14.9G  3.38T      541K  -


zfs list -t snapshot zeigt jeden Sync

Code:
 zfs list -t snapshot
NAME                                                            USED  AVAIL     REFER  MOUNTPOINT
nvmZFS/vm-107-disk-0@rep_test_2022-01-20_17:09:15              46.8M      -      119G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_19:51:02               20.3M      -      119G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:00:07               5.86M      -      119G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:15:01               6.32M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:30:09               5.89M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_20:45:01               6.10M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:00:01               6.18M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:15:01               5.91M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:30:03               6.04M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_21:45:07               7.09M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_22:00:01               6.60M      -      121G  -
nvmZFS/vm-107-disk-0@rep_107_2022-01-20_22:15:01               7.14M      -      121G  -


Meine Frage:
Kann ich die vm so belassen oder müssen diese Snapshots gelöscht/konsolidiert werden?
Ich gehe mal davon aus, dass rep_test_2022-01-20_17:09:15 ein Testlauf war, und daher gelöscht werden kann. Da der Name vom Job anders ist, wird dieser Snapshot nicht automatisch gelöscht werden, sobald die maxsnap-Anzahl erreicht ist. Ansonsten würde ich empfehlen, einfach maxsnap und dest-maxsnap anzupassen, um den Platz-Verbrauch zu reduzieren (sind allerdings momentan nur wenige MB pro Snapshot).

Danke & sg Roland
 
Hallo Fabian!

Sorry dass ich hier nachfragen muss, irgendwie steh ich noch auf der Leitung.
Ich habe natürlich etwas herumgespielt und verschiedene pve-zsync cmd ausgeführt.

Die letzten waren in dieser Art:
Code:
pve-zsync create --source 104 --dest pve:zfs02 --verbose --maxsnap 0 --name 104
pve-zsync create --source 104 --dest pve:zfs02 --verbose --maxsnap 1 --name 104

Warum wurden bei mir so viele Snapshots erstellt? --maxsnap war 0 und 1 ?

Kann ich alle Snapshots mit "zfs destroy" löschen? Die Daten werden übernommen / nicht gelöscht?
Muss dies auf beiden Nodes durchgeführt werden?

Code:
zfs destroy zfs02/vm-107-disk-0@rep_107_2022-01-24_01:15:25

Wenn ich die VM am neuen Node starten möchte muss hier abschließend ein zfs send durchgeführt werden?
Bei mit ist die Disk ja schon vorhanden, jeodch mit vielen Snapshots

Code:
zfs send rpool/backup/vm-100-disk-1@rep_test100_2015-06-12_11:03:01 | ssh root@192.168.15.1 zfs receive vm/vm-200-disk-1

Danke

DOKU: https://pve.proxmox.com/wiki/PVE-zsync#Recovering_an_VM
 
Hallo Fabian!

Sorry dass ich hier nachfragen muss, irgendwie steh ich noch auf der Leitung.
Ich habe natürlich etwas herumgespielt und verschiedene pve-zsync cmd ausgeführt.

Die letzten waren in dieser Art:
Code:
pve-zsync create --source 104 --dest pve:zfs02 --verbose --maxsnap 0 --name 104
pve-zsync create --source 104 --dest pve:zfs02 --verbose --maxsnap 1 --name 104

Warum wurden bei mir so viele Snapshots erstellt? --maxsnap war 0 und 1 ?
Mit maxsnap 0 werden keine Snapshots gelöscht; aus man pve-zsync:
Code:
               --maxsnap   integer
                       The number of snapshots to keep until older ones are erased.
                       The default is 1, use 0 for unlimited.
Und wie gesagt, es braucht zumindest einen Snapshot, damit inkrementell gesendet werden kann. Aber mit maxsnap 1 sollte das automatische Löschen funktionieren. Was ist die installierte Version von pve-zsync?

Kann ich alle Snapshots mit "zfs destroy" löschen? Die Daten werden übernommen / nicht gelöscht?
Muss dies auf beiden Nodes durchgeführt werden?

Code:
zfs destroy zfs02/vm-107-disk-0@rep_107_2022-01-24_01:15:25
Ja, aber den neuesten gemeinsamen Snapshot bitte behalten!

Wenn ich die VM am neuen Node starten möchte muss hier abschließend ein zfs send durchgeführt werden?
Bei mit ist die Disk ja schon vorhanden, jeodch mit vielen Snapshots

Code:
zfs send rpool/backup/vm-100-disk-1@rep_test100_2015-06-12_11:03:01 | ssh root@192.168.15.1 zfs receive vm/vm-200-disk-1

Danke

DOKU: https://pve.proxmox.com/wiki/PVE-zsync#Recovering_an_VM
Ja, dieser Befehl ist, um den letzten Status nochmal als eigene Disk, mit der richtigen ID und dem richtigen ZFS-Pfad (wo die VM-Konfiguration sich die Disk erwartet) zu bekommen. Falls der Server wo die VM gestartet werden soll, das Ziel der Replikation ist, kann der ssh-Teil weggelassen werden. Und falls ID/ZFS-Pfad schon passen, braucht es den Befehl gar nicht.
 
Hallo Fabian!

Bei einer VM habe ich nun alle Snapshots bis auf den neuesten gelöscht.
Da die Disk schon am richtigen Node u Storage liegen würde wäre meiner Auffassung alles erledigt.

Es besteht nur noch ein Snapshot der vm 104 am neuen Node
Kann ich dies nun so belassen und die vm hochfahren oder muss auch noch der letzte Snapshot gelöscht werden?
Ich schätze dieser gehört auch noch gelöscht.

Besteht die Möglichkeit durch löschen von hier die VM am alten Node zu zerstören, daten zu löschen?

Code:
root@pve:~# zfs list
NAME                  USED  AVAIL     REFER  MOUNTPOINT
rpool                1.41G   460G      104K  /rpool
rpool/ROOT           1.40G   460G       96K  /rpool/ROOT
rpool/ROOT/pve-1     1.40G   460G     1.40G  /
rpool/data             96K   460G       96K  /rpool/data
zfs01                3.62T  3.24T       96K  /zfs01
zfs01/vm-100-disk-0  3.49T  3.24T     3.49T  -
zfs01/vm-100-disk-1   131G  3.24T      107G  -
zfs02                 326G  3.06T       96K  /zfs02
zfs02/vm-101-disk-0   112K  3.06T       56K  -
zfs02/vm-101-disk-1    56K  3.06T       56K  -
zfs02/vm-104-disk-1   106G  3.06T      106G  -
zfs02/vm-107-disk-0   173G  3.06T      122G  -
zfs02/vm-108-disk-0  47.1G  3.06T     44.3G  -
zfs02/vm-999-disk-0   372K  3.06T      372K  -
root@slpvep0101:~#

Code:
root@pve:~# zfs list -t snapshot | grep 104
zfs02/vm-104-disk-1@rep_vm104_2022-01-25_11:34:28     0B      -      106G  -


Danke
 
Hallo Fabian!

Bei einer VM habe ich nun alle Snapshots bis auf den neuesten gelöscht.
Da die Disk schon am richtigen Node u Storage liegen würde wäre meiner Auffassung alles erledigt.

Es besteht nur noch ein Snapshot der vm 104 am neuen Node
Kann ich dies nun so belassen und die vm hochfahren oder muss auch noch der letzte Snapshot gelöscht werden?
Ich schätze dieser gehört auch noch gelöscht.
Nach Löschen des letzten Snapshots kann der pve-zsync-Job nicht mehr inkrementell senden und ist dadurch kaputt/muss neu angelegt werden.

Besteht die Möglichkeit durch löschen von hier die VM am alten Node zu zerstören, daten zu löschen?

Code:
root@pve:~# zfs list
NAME                  USED  AVAIL     REFER  MOUNTPOINT
rpool                1.41G   460G      104K  /rpool
rpool/ROOT           1.40G   460G       96K  /rpool/ROOT
rpool/ROOT/pve-1     1.40G   460G     1.40G  /
rpool/data             96K   460G       96K  /rpool/data
zfs01                3.62T  3.24T       96K  /zfs01
zfs01/vm-100-disk-0  3.49T  3.24T     3.49T  -
zfs01/vm-100-disk-1   131G  3.24T      107G  -
zfs02                 326G  3.06T       96K  /zfs02
zfs02/vm-101-disk-0   112K  3.06T       56K  -
zfs02/vm-101-disk-1    56K  3.06T       56K  -
zfs02/vm-104-disk-1   106G  3.06T      106G  -
zfs02/vm-107-disk-0   173G  3.06T      122G  -
zfs02/vm-108-disk-0  47.1G  3.06T     44.3G  -
zfs02/vm-999-disk-0   372K  3.06T      372K  -
root@slpvep0101:~#

Code:
root@pve:~# zfs list -t snapshot | grep 104
zfs02/vm-104-disk-1@rep_vm104_2022-01-25_11:34:28     0B      -      106G  -
Ja, nicht replizierte Daten sind dann verloren. Also alles nach dem Zeitpunkt der letzten Synchronisation.
 
Hallo

Wenn ich richtig verstehe dann wäre die korrekte Vorgehensweise wie folgt

* pve-sync job einrichten und synchen lassen.
* Vor der Übername der vm auf den neuen Node die VM am alten Node herunterfahren.
* pve-sync die Änderungen synchen lassen
* Mit pve-sync disable den Job löschen
* mit zfs destroy alle Snapshots löschen

Danke & sg
 
Hallo

Wenn ich richtig verstehe dann wäre die korrekte Vorgehensweise wie folgt

* pve-sync job einrichten und synchen lassen.
* Vor der Übername der vm auf den neuen Node die VM am alten Node herunterfahren.
* pve-sync die Änderungen synchen lassen
* Mit pve-sync disable den Job löschen
* mit zfs destroy alle Snapshots löschen

Danke & sg
Ja, das kann man machen.

Man könnte auch die Snapshots behalten und einen Job (mit gleichem Namen) einrichten und wieder zurück syncen, aber hängt natürlich vom konkreten Szenario ab.
 
Hy

Danke für deine Hilfe!
Nachdem ein PBS im Einsatz ist kommt die alte HW weg.
Grund dass ich die VM so übernommen habe ist dass eine VM mit mehr als 5TB vorhanden ist und der PBS nur GBit Eth besitzt.
Und ich pve-zsync testen wollte
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!