Proxmox Daten-Backup und weiteres..

Skudrinka

Fleet Admiral
Registriert
Sep. 2008
Beiträge
10.244
Hallo,

ich habe Fragen :)

Habe mir einen kleinen MiniPC mit nem N95 gekauft, auf dem jetzt Proxmox läuft.
Dieser soll nun dauerhaft Dienste im Netzwerk bereitstellen.
Auf Proxmox habe ich Docker mit portainer installiert.
Darin sollen Dienste laufen:
Vaultwarden lokal inkl. SSL läuft schon.
adguard home wird folgen.
Usw..

Proxmox ist auf einer Nvme installiert.
So richtig verstehe ich das mit den Containern nicht.
Ist es richtig, dass Daten die im Container erstellt werden, nicht in diesem direkt gespeichert werden/sollen, sondern auf dem Host, weil Container nach jeden Neustart wieder "zum Anfang zurückkehren"?!
Deswegen habe ich ja ein CT-Volumes eingerichtet?! - Dort werden Daten aus den Containern gespeichert?

Wie kann ich das System gescheit backupen? - Was muss ich BAckupen?
In Proxmox kann ich aus der GUI den Docker Container selbst BAckupen, die Datei befindet sich lokal - aber wo?
Ist es Klug die erstellte Datei zu sichern, oder gibt es weitere Möglichkeiten?

Außerdem habe ich noch meine NAS - kann ich beide Systeme verbinden um den Proxmox auf meiner NAS (OMV) zu sichern?

Ich blick das alles noch nicht so richtig :)


Vielen Dank!
 
Du hast Docker nativ auf proxmox installiert oder in einem LXC oder in einer VM?

Bei Docker sicherst du nur das docker compose file sowie die Volumes. Wo letztere liegen hast du explizit angegeben.

Backup: Idealerweise stopst du die Container und sicherst dann die Volumes auf dein NAS. Da Proxmox von Haus aus keine Docker Container unterstützt würde das nur mit einem Klick klappen wenn du docker einer LXC oder VM laufen hast. Da hast du aber dann wieder den Vorteil von, nur die Nutzdaten zu sichern direkt umgangen.
 
Grundsätzlich ist bei Containern ursprünglich die Idee gewesen, dass diese "stateless" betrieben werden und damit zumindest davon ausgegangen werden muss, dass die Daten darin nicht beständig sind. Allerdings kommt das aus der Welt der Cluster und Microservices, wo ein Container schon mal mehrfach auf verschiedenen Servern betrieben wird und für jede Instanz ein eigenes Volume zugewiesen wird. Bei einem "stateful"-Konzept ist in so einem Fall ohnehin immer ein Abgleich der Instanzen notwendig.
Im Home-Bereich ist das meistens nicht der Fall - auf meinem Homeserver laufen zwar auch nur Dienste in Containern, wo mir nicht wichtig ist, ob ihre Daten erhalten bleiben (Unifi Controller, Pihole). Tatsächlich behalten sie aber wohl ihre Daten über reboots hinweg, weil es immer die gleiche Instanz auf dem gleichen Volume ist.

Backup geht ganz easy über die eingebaute Backup-Funktion. Wenn Du ein NAS hast, kannst Du davon ein Share über SMB/CIFS oder NFS einbinden, als Backup-Storage definieren (bei der Erstellung bei Content "vzdump Backup file" auswählen) und dann beim Starten des Backups das unter "Storage" auswählen. Das hat allerdings nichts mit dem Erhalt der Daten in den Containern über Reboots hinweg zu tun.
 
  • Gefällt mir
Reaktionen: Skudrinka
JumpingCat schrieb:
oder in einem LXC
Das :) pm1.JPG
Ergänzung ()

pm2.JPG
 
Skudrinka schrieb:
Ist es richtig, dass Daten die im Container erstellt werden, nicht in diesem direkt gespeichert werden/sollen, sondern auf dem Host, weil Container nach jeden Neustart wieder "zum Anfang zurückkehren"?!
Nein. Also meine Container (PiHole, PLEX, Tautilli und SFTPGo) verlieren keine Daten nach einem Neustart. Ein Neustart weder vom Container selbst, noch dem ganzen Proxmox-PC führen zu keinem Datenverlust.

Skudrinka schrieb:
Wie kann ich das System gescheit backupen? - Was muss ich BAckupen?
Ich sichere meine Container wöchentlich auf einen weiteren PC im Netzwerk.

Skudrinka schrieb:
In Proxmox kann ich aus der GUI den Docker Container selbst BAckupen, die Datei befindet sich lokal - aber wo?
Ist es Klug die erstellte Datei zu sichern, oder gibt es weitere Möglichkeiten?
Ich weiß nicht wo (Lokal), aber extern sichern auf dein NAS via freigegeben Ordner (am NAS) wäre eine Idee.

Skudrinka schrieb:
Außerdem habe ich noch meine NAS - kann ich beide Systeme verbinden um den Proxmox auf meiner NAS (OMV) zu sichern?
Ja.

1. NAS: Ordner freigeben mit Name+PW

2. Proxmox: Datacenter > Storage > Add > SMB/CIFS:
ID = Name (wie der Ordner unter Proxmox links in der Liste auftauchen soll); Server = IP; Share = freigegebener Zielordner
PXMX.png

3. Proxmox: Datacenter > Backup > Add
Storage = dein vorher eingebundener Ordner (aus Schritt 2); Schedule = Wie oft/wann Backupen
- Tab "Retention" ansehen und passend Optionen wählen (ich behalte die letzten beiden Backups)
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Skudrinka
Skudrinka schrieb:
Wie stelle ich das in Proxmox an?
GUI oder rein CLI?
Nicht unter Proxmox sondern auf dem Zielgerät, wo die Backups landen sollen. Hab oben bisschen was editiert/hinzugefügt
 
  • Gefällt mir
Reaktionen: Skudrinka
redjack1000 schrieb:
Schau dir mal den ProxmoxBackupServer näher an.
Mh, das schaut doch gut aus.
Die Instanz kann ich als VM auf meiner NAS laufen lassen..
Mal sehen ob ich den Speicher von OMV eingebunden bekommen 🤷‍♀️

SpiII schrieb:
Nicht unter Proxmox sondern auf dem Zielgerät, wo die Backups landen sollen. Hab oben bischen was editiert/hinzugefügt
Danke!

Gucke ich mir ebenso an.

Werde beides ausprobieren und gucken, welche Option mir besser gefällt :)


Vielen Dank!
Ergänzung ()

Gerade habe ich so ne Erleuchtung..
Eigentlich hätte ich mir das installieren von Docker auch schenken können, weil Container wie Vaultwarden oder AdGuard ja direkt in Proxmox container laufen!? 🤦‍♀️

Hasts denn wenigstens n Vorteil Docker genutzt zu haben!? 😄
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: SpiII
Skudrinka schrieb:
Eigentlich hätte ich mir das installieren von Docker auch schenken können, weil Container wie Vaultwarden oder AdGuard ja direkt in Proxmox container laufen!? 🤦‍♀️
Jup.

Skudrinka schrieb:
Hasts denn wenigstens n Vorteil Docker genutzt zu haben!? 😄
Es gibt ein paar Sachen, die gehen nur in Docker oder lassen sich da einfacher handhaben. Habe aber kein Beispiel parat.

Die Seite mit den Scripts kennst du schon? https://community-scripts.github.io/ProxmoxVE/scripts
 
  • Gefällt mir
Reaktionen: Skudrinka
Eine bis dato nicht mehr verwendete BX500 wird Einzug in den kleinen Proxmox Server halten, auf der täglich Snapshots und Backups erstellt werden.
Das ist die erste Sicherungsmaßnahme.

Den REst gucke ich mir über die nächsten Tage an.
Gerade mache ich zu viel auf einmal :D

Btw. der N95 hat wesentlich mehr "Leistung" als vermutet - ziemlich ernüchternd wenn ich sehe, dass meine große NAS im idle 28W verbraucht und viel zu viel Leistung dabei ungenutzt "verschwendet" wird..

Bei dem N95er bin ich bei 5-6 Watt 🤦‍♀️
Für 120€ ein nettes Spielzeug :daumen:
 
Docker Volumes hatte ich sporadisch mit
Code:
#!/usr/bin/env bash

# Set error handling
set -euo pipefail

# shellcheck disable=SC2006
programname=`basename "$0"`

display_usage() {
    echo "usage: $programname (create|restore) source destination"
    echo "  create         create snapshot file from docker volume"
    echo "  restore        restore snapshot file to docker volume"
    echo "  source         source path"
    echo "  destination    destination path"
    echo
    echo "Tip: Supports tar's compression algorithms automatically"
    echo "     based on the file extention, for example .tar.gz"
    echo
    echo "Examples:"
    echo "docker-volume-snapshot create xyz_volume xyz_volume.tar"
    echo "docker-volume-snapshot create xyz_volume xyz_volume.tar.gz"
    echo "docker-volume-snapshot restore xyz_volume.tar xyz_volume"
    echo "docker-volume-snapshot restore xyz_volume.tar.gz xyz_volume"
}

case "$1" in
    "create")
        if [[ -z "$2" || -z "$3" ]]; then display_usage; exit 1; fi
        # shellcheck disable=SC2006
        directory=`dirname "$3"`
        if [ "$directory" == "." ]; then directory=$(pwd); fi
        # shellcheck disable=SC2006
        filename=`basename "$3"`
        docker run --rm -v "$2:/source" -v "$directory:/dest" busybox tar cvaf "/dest/$filename" -C /source .
        ;;
    "restore")
        if [[ -z "$2" || -z "$3" ]]; then display_usage; exit 1; fi
        # shellcheck disable=SC2006
        directory=`dirname "$2"`
        if [ "$directory" == "." ]; then directory=$(pwd); fi
        # shellcheck disable=SC2006
        filename=`basename "$2"`
        docker run --rm -v "$3:/dest" -v "$directory:/source" busybox tar xvf "/source/$filename" -C /dest
        ;;
    *)
        display_usage
        exit 1 # Command to come out of the program with status 1
        ;;
esac
gesichert oder woanders hin verschoben.

Das Skript ist nicht von mir. Hatte es irgendwo mal gefunden.
 
  • Gefällt mir
Reaktionen: Skudrinka
oicfar schrieb:
Ne ne, damit fange ich erst gar nicht an. :)
Möchte möglichst die volle Kontrolle darüber, wo sich was befindet. - Vor und nach dem Backup.

Danke, das ist mir zu viel unverständlicher Code, dafür dass es mir am Ende um das wichtigste geht. - Um meine Passwort-Datenbank.

Werde wohl einfach Proxmox Backup Server als VM auf meiner NAS installieren.

Seit Stunden gehe ich alle Eventualitäten durch, wie ich die Datenbank gänzlich verlieren könnte und was ich dagegen machen kann.

Scheiß rubbithole 😄
Ergänzung ()

Momentan kann ich mir meine Passwörter alle merken, da sie ein gewisses Grundgerüst besitzen, welches ich würfel. Damit habe ich nicht überall das gleiche, aber doch zu ähnlich.

Das soll sich in Zukunft ändern, doch mit der Gewissheit, dass ich bei allen Eventualitäten immer meine Datenbank wiederherstellen kann, bzw. gesichert habe.
 
  • Gefällt mir
Reaktionen: oicfar
Skudrinka schrieb:
Ne ne, damit fange ich erst gar nicht an. :)
Möchte möglichst die volle Kontrolle darüber, wo sich was befindet. - Vor und nach dem Backup.
Ich dachte mir @Skudrinka möchte noch was lernen. ;)
 
Zurück
Oben