Debian ZFS Slave-Speichersystem (zrep Replikate) zum PBS sichern

crmspezi

Renowned Member
Sep 5, 2019
415
32
68
45
Germany/Thueringen
Hallo zusammen,

ich brauche eure Ideen und würde mich sehr freuen Hilfe bekommen zu können.

Ich habe ein Debian ZFS Master-Speichersystem (zfs over iSCSI Target) und ein Debian Slave-Speichersystem (zfs over iSCSI Target), welches periodisch vom ZFS Master-Speichersystem per zrep die Proxmox VMs (zfs over iSCSI Target) zum Debian Slave-Speichersystem bringt.

Die Struktur auf dem Debian Slave-Speichersystem sieht so aus:

ZFSRAID/nasomv-test2/vm-102-disk-1
ZFSRAID/nasomv-test2/vm-102-disk-2

Der PBS soll nun die ZVOLs per proxmox-backup-client vom Debian Slave-Speichersystem mit dem proxmox-backup-client, der auf dem Debian Slave-Speichersystem installiert ist, bekommen.

Es funktioniert, aber nicht optimal. Derzeit behelfe ich mich, in dem ich zuerst einen Snapshot des ZVOLs erstelle und in eine temporäre Datei*.zfs sende. Dann kann per proxmox-backup-client diese temporäre Datei zum pbs gesendet werden.

Gibt es eine Möglichkeit den Snapshot von einem ZVOL direkt zu senden, ohne erst im Dateisystem langwierig zwischenzuspeichern? Wie ich das derzeit verstanden habe, geht das so nicht:
zfs send ZFSRAID/nasomv-test2/vm-102-disk-1@snap | proxmox-backup-client backup vm-102-disk-1.img:stdin --size $(zfs send -nP ZFSRAID/nasomv-test2/vm-102-disk-1@snap | awk '/size/ {print $2}')

Ich bin leider kein Programmierer und probiere mich durch. Es wäre schön, wenn mir jemand weiterhelfen kann.

Viele Grüße
 
Hallo,
darf ich fragen warum nicht gleich das ganze zvol via proxmox-backup-client ins backup geschrieben werden soll? Wenn nur der output vom inkrementellen zfs send ins PBS backup snapshot kommt sind die snapshots nicht unabhängig voneinander, es wird die gesamte kette benötigt um etwas inkrementell zu restoren.

Gib doch stets das ganze zvol an und lass PBS die Deduplizierung machen.


Hatte das wohl zu schnell überflogen. Das Problem ist wohl das der zvol snapshot nicht als block device verfügbar ist. Ein zfs set snapdev=visible <zpool> sollte dazu führen, dass alle zvol snapshots unter /dev/zvol/<zpool> für das jeweilige pool als block device exposed werden. Ein proxmox-backup-client backup snapshot-name.img:/dev/zvol/<zpool>/<snapshot> ... sollte damit funktionieren.

Edit: Auch was wird als hypervisor verwendet? Wenn das PVE ist, nimm doch besser direkt die PBS integration für backups. Macht auch den restore wesentlich einfacher.
 
Last edited:
  • Like
Reactions: Johannes S
Hallo,
ja das Cluster besteht aus mehreren PVEs. Das Ziel ist, keine Belastungen der eigentlichen ZVOLs zu erzeugen, also den Job eben nicht auf dem PVE laufen zu lassen (zfs over iScsi Anbindung) und auch nicht auf dem zfs over iscsi Target die Last zu erzeugen. Hier soll ausschließlich vom replizierten "zfs over iScsi Target" gesichert werden. Damit kann ich sehr viele Backupjobs mit voller Bandbreite zu jeder Tages und Nachzeit vom Replikationsziel fahren ohne die Produktiv-VMs zu belasten.
 
Hallo,
darf ich fragen warum nicht gleich das ganze zvol via proxmox-backup-client ins backup geschrieben werden soll? Wenn nur der output vom inkrementellen zfs send ins PBS backup snapshot kommt sind die snapshots nicht unabhängig voneinander, es wird die gesamte kette benötigt um etwas inkrementell zu restoren.

Gib doch stets das ganze zvol an und lass PBS die Deduplizierung machen.


Hatte das wohl zu schnell überflogen. Das Problem ist wohl das der zvol snapshot nicht als block device verfügbar ist. Ein zfs set snapdev=visible <zpool> sollte dazu führen, dass alle zvol snapshots unter /dev/zvol/<zpool> für das jeweilige pool als block device exposed werden. Ein proxmox-backup-client backup snapshot-name.img:/dev/zvol/<zpool>/<snapshot> ... sollte damit funktionieren.

Edit: Auch was wird als hypervisor verwendet? Wenn das PVE ist, nimm doch besser direkt die PBS integration für backups. Macht auch den restore wesentlich einfacher.
Hallo Chris, ich teste das und berichte. Danke für die Hilfe.
 
Eigentlich ist die Last beim Backup gar nicht so hoch. Was ernsthaft bremst, wenn der PBS zu langsam ist, wegen Anbindung oder Disks.
Dann bremst du deine VMs mehr als das bisschen Last durch ein Backup.
 
  • Like
Reactions: Johannes S
Eigentlich ist die Last beim Backup gar nicht so hoch. Was ernsthaft bremst, wenn der PBS zu langsam ist, wegen Anbindung oder Disks.
Dann bremst du deine VMs mehr als das bisschen Last durch ein Backup.
Danke Falk für die Antwort. Ich stimme Dir voll zu, wenn der PBS SPeicher aus SSD/NVMe besteht und auch alle VMs ausschließlich SSD/NVMe sind.
Leider ist dies nicht bei mir so und auch nicht änderbar, wegen den Kosten bei hohem Backupplatzbedarf.

Die von mir angestrebte Lösung (siehe oben) funktioniert (auch bei den Kosten), ist aber noch verbesserbar.
 
Last edited: