[SOLVED] Hochladen von Backup-Daten auf HiDrive

Toormser

Member
Jul 28, 2021
55
1
13
Hallo Community,

ich habe ein kleines Vorhaben, finde aber irgendwie nicht die richtigen Source-Daten dafür.

Vorhaben: Ich haben einen Promox Node sowie einen Proxmox Backup Server laufen. Die Backups landen daily im Snapsho-Verfahren auf dem Promox Backup Server. Soweit so gut und es läuft auch alles. Nun möchte ich die Backup-Daten aber nochmal extern auslagen in Form davon, dass ich die Backup-Daten auf ein HiDrive hochladen möchte. Promox Node = ZFS Local Storage Pool, Proxmox Backup Server = ZFS Local Storage Pool

Das Script ist auch soweit geschrieben und funktionieren tut es auch (mit anderen Pfaden getestet).

Bash:
#!/bin/bash
SOURCE=/backuptank01/
DEST=/users/harddisk/PBS/
LOG=/var/log/weekly-backup-upload.log
HOST=rsync.hidrive.strato.com
USER=harddisk-XXXX
NOW=$(date +"%m-%d-%Y")
RECEIPIENT=foo@bar.com
rm -rf $LOG
rsync -rltDavh -e ssh $SOURCE $USER@$HOST:$DEST --log-file=$LOG --delete --timeout=600
cat $LOG | mailx -s "$NOW Backup Upload Log" $RECEIPIENT

Nun stellt sich mir aber die Frage, welche wirkliche Backup-Daten muss ich hochladen? Auf dem Backup Server (ZFS backuptank01) Storage finde ich lediglich unter /backuptank01/.. ein paar Config-Dateien (vermutlich zu dem VM's vom Node) sowie einen .chunk Ordner, der mit über 64.000 Dateien gefüllt ist.

Ich habe die Befürchtung, dass es der falsche Weg sein wird, einfach plump "/backuptank01/*" auf das HiDrive laden zulassen.

Mir ist bekannt, dass es auch die Möglichkeit gibt, dass ich per CLI HiDrive CIFS hinzufüge, dies möchte ich aber nicht machen?

Ist es nicht mal ein Feature Request wert, dass ich auch einfach ein Remote-Storage like (FTP, CIFS, SFTP, etc...) per GUI hinzufügen lassen kann und auf dieses dann in einem Zyklus dann vom Backup Server aufs externe Storage replizieren lasse (3-2-1 Backup Prinzip)?

Besten Dank und viele Grüße
 
also, ich kann dir da nur beipflichten. das mit den Anbindungen ist noch zu mangelhaft, aber ich bin mir sicher da wird noch einiges kommen. auf jeden Fall ne S3-Anbindung. Man muss natürlich verstehen, Proxmox möchte sein Produkt vertreiben und deshalb gibt es natürlich erstmal den sync auf das eigene Produkt. Könntest du ja auch nutzen, indem du den Backupserver nochmal irgendwo remote installierst und via VPN hochlädst. In der cloud kann man den natürlich auch installieren. Wird halt nur teuer.
 
Ich habe da nun auch noch mal ein wenig drauf herumgedacht und denke mal (so sagt es mir mein Infomatiker-Hirn), dass es keine gute Idee sein kann, die .chunks ebenfalls mit hochzuladen (über 64k) Dateien.

Es geht im großen und ganzen auch nur darum automatisiert - einmal die Woche - die Daten raus zu schaffen.

Ich habe mir den PVE mal ein wenig genauer angeschaut und ein wenig hin und her recherchiert und bin nun zu dieser Methode gekommen:

Auf dem PVE
1. apt update && apt install -y sshfs
2. mkdir /mnt/hidrive
3. sshfs harddisk-user@sftp.hidrive.strato.com:/users/harddisk-user/path/to/target/dir /mnt/hidrive
4. cat /root/.ssh/id_rsa.pub (diesen dann bei Strato HiDrive hochladen da sonst das fstab mounting nicht funktioniert)
5. nano /etc/fstab (6. dann in die Datei ganz unten hinzufügen, es sollte hierbei alles in einer Reihe stehen vom Befehl 6.)
6. sshfs#harddisk-user@sftp.hidrive.strato.com:/users/harddisk-user/path/to/target/dir /mnt/hidrive fuse uid=1002,gid=100,umask=0,allow_other,_netdev 0 0

Somit wird das HiDrive bei jedem Start gemounted. Nach dem ersten Mount sollte man nun nur noch im Datacenter ein Storage "Verzeichnis" mit Zielpfad /mnt/hidrive anlegen und es wird das HiDrive korrekt angezeigt.

Was mir in dem ganzen noch etwas Magenschmerzen bereitet ist folgendes:

1. Ist starte das Backup (Snapshot Mode) auf das Ziel HiDrive
2. Er startet und macht ein freeze der vm
3. Er macht das Backup und lädt die Daten hoch

Dem habe ich schon mal gestern auf einem lxc ein wenig zugeschaut und er braucht ein bis zwei Minuten dafür (4MB/s Upload). Nun ist es ja aber aber so, dass er die Maschine kurz anhält beim Backup. Hält er sie aber die ganze Zeit ab oder geht er wie folgt vor:

1. Freeze für ein paar Sekunden
2. Release nach ein paar Sekunden
3. Backup - er rödelt sein Backup zusammen
4. Upload - er braucht halt seine Zeit zum hochladen

So sehe ich das nämlich auch im Backup-Log

Code:
101: 2021-08-07 19:00:01 INFO: Starting Backup of VM 101 (qemu)
101: 2021-08-07 19:00:01 INFO: status = running
101: 2021-08-07 19:00:01 INFO: VM Name: XX-XX-ad01
101: 2021-08-07 19:00:01 INFO: include disk 'virtio0' 'datatank01:vm-101-disk-0' 50G
101: 2021-08-07 19:00:01 INFO: include disk 'virtio1' 'datatank01:vm-101-disk-1' 100G
101: 2021-08-07 19:00:01 INFO: backup mode: snapshot
101: 2021-08-07 19:00:01 INFO: ionice priority: 7
101: 2021-08-07 19:00:01 INFO: creating Proxmox Backup Server archive 'vm/101/2021-08-07T17:00:01Z'
101: 2021-08-07 19:00:01 INFO: issuing guest-agent 'fs-freeze' command
101: 2021-08-07 19:00:06 INFO: issuing guest-agent 'fs-thaw' command
101: 2021-08-07 19:00:08 INFO: started backup task '75b44a6c-42e6-4cc1-8c76-1882df9d8dcc'
101: 2021-08-07 19:00:08 INFO: resuming VM again
101: 2021-08-07 19:00:08 INFO: virtio0: dirty-bitmap status: OK (5.2 GiB of 50.0 GiB dirty)
101: 2021-08-07 19:00:08 INFO: virtio1: dirty-bitmap status: OK (12.0 MiB of 100.0 GiB dirty)
101: 2021-08-07 19:00:08 INFO: using fast incremental mode (dirty-bitmap), 5.3 GiB dirty of 150.0 GiB total

Hier

Code:
101: 2021-08-07 19:00:01 INFO: issuing guest-agent 'fs-freeze' command
101: 2021-08-07 19:00:08 INFO: resuming VM again

Also können die Benutzer dennoch weiterarbeiten während dieses lange "Hochlade"-Backup läuft zur HiDrive oder ist die Maschine dauerhaft (über das gesamte Backup) eingefroren und man kann nicht weiter mit arbeiten?

Wenn das erste der Fall ist, dann wäre diese Möglichkeit eine gute Alternativ-Lösung, solange bis Proxmox was finales integriert über den PBS als Sync zu externen Storages, was ich persönlich auch glaube, was auf jeden Fall kommen wird :)

Update

Habe das ganze gerade mal in meiner Testumgebung nachgestellt und es lässt sich, während das Backup gemacht / hochgeladen wird, problemlos weiter mit der VM arbeiten.

Somit wäre das für mich nun erstmal ein Workaround die Daten einmal pro Woche aus dem Haus zu kriegen, bis Proxmox dort etwas finales integriert.
 
Last edited:
naklar, der hält die nur kurz an, aber trotzdem kann selbst während des Anhaltens geschrieben werden. Die Daten werden nur kurz umgeleitet und später geschrieben. Dein Einbinden ist clever. Hoffe, es tut dauerhaft sein Job. Die manuelle Sync Variante ist natürlich besser, aber da müsste mal der Staff was dazu sagen, wie man das am besten erledigt. generell muss man natürlich das ganze repo syncen. mit rsync viellleicht möglich?:(
 
Wie es sich im dauerhaften Einsatz verhält (solange bis es was offizielles gibt) will sich noch herausstellen :-)

Finde die mount-Variante etwas sauberer als die rsync-Variante, wo über 64k Dateien hin und her geschoben werden. Bei der mount-Variante kümmert sich die Backupmethode von Proxmox darum, dass alles sauber auf dem HiDrive Storage landet. Ebenso funktioniert der Restore vom HiDrive zurück auch sehr gut.

Habe dazu nun auch mal ein Tutorial gemacht: https://forum.proxmox.com/threads/c...d-use-it-for-backup-e-g-strato-hidrive.94131/
 
also mit rsync kannst du auf jeden Fall arbeiten, habe ich gesehen. In diesem Thread wird eine weitere interessante Möglichkeit beschrieben oder besser nur angedeutet :confused:: https://forum.proxmox.com/threads/pbs-local-storage-sync.86363/
Du syncst mit PBS von einem lokalen in ein anderes lokales datastore. Comprende?
Klaro, das ginge natürlich auch, wäre quasi (fast) das selbe wie beim PVE.

PVE > Mount Remote Storage /mnt/remotestorage > Zusätzliches Backup zu einem Remote Storage
PBS > Mount Remote Storage /mnt/remotestorage > Rync zwischen PBS und Remote Storage wird aufgebaut

Bei dem beiden Scenarios stellt sich mir die Frage ... hmm, was ist sinnvoller. Wenn ich die Bandbreite (ist vorhanden) würde ich sagen, ist die PVE Variante sinnvoller, da ich so "schneller" einen direkten Rollback der VM vom Remote Storage zum PVE machen kann.

Beide "Wege" führen aber auf jeden Fall nach Rom, würde ich sagen :-) Danke für deinen Hinweis zu dem Thread.
 
Also, ich finde 2 Mal Backups zu machen von der selben VM, ist nicht sinnvoller. Und zum Recovery: Du sprichst dann einfach den PBS an und der geht halt über die Leitung. Das ist zeitlich das gleiche. Auf einem PVE-Host sollte man immer so wenig wie möglich einbinden etc., aber funktionobeln tut beides selbstverständlich. Sauberer ist natürlich die 2. Variante, wenn wir ehrlich sind. :cool:
Bei deinem tutorial war ich mir nicht ganz sicher, ob bei dir PVE + PBS auf dem gleichen Host laufen, aber nach hier hast du wohl 2 Maschinen.
 

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!