Proxmox Backup Server 4 hat eine erste tech preview für S3-Speicher mit drin, um offsite Backups zu speichern. Das ist durch die Deduplizierung und Komprimierung ideal, um günstig Backups zu machen. Als S3-Provider nutze ich Backblaze B2, da der Storage hier recht günstig ist (okay, ich hab auch einfach schon einen Account da). Die Backups werden auch lokal zwischengespeichert, es bedeutet also einiges an Schreibvorgängen auf der SSD/HDD.

Achtung! Das ganze ist noch im Preview-Stadium und ist mit Vorsicht zu genießen!

Bucket erstellen

  • Im Backblaze B2 Webinterface einen neuen Bucket anlegen.

    • Bucket-Name: lowercase (z. B. pbsoffsite)
    • Endpunkt notieren, z. B.: s3.eu-central-002.backblazeb2.com
  • Lifecycle-Einstellungen für den Bucket setzen:

    • Nur die letzte Version der Datei aufbewahren

Application Keys erstellen

  • Im Menü Application KeysAdd New wählen.

  • Namen definieren, z. B.: PBSOffsiteKey

  • Im Feld Allow access to Bucket(s) den eben erstellten Bucket auswählen.

  • Haken setzen bei Allow List All Bucket Names

  • Die Ausgabe enthält die benötigten Werte:

    keyID: keyIDblablablub
    applicationKey: blablablub
    

S3 Endpoint im PBS hinzufügen

Im PBS-Webinterface einen S3-Endpoint hinzufügen:

  • ID: bspw. backblaze
  • Endpoint: ``{{bucket}}.s3.{{region}}.backblazeb2.com`
  • Region aus dem Endpunkt ableiten, z. B. eu-central-002
  • Access Key (keyID) und Secret Key (applicationKey) eintragen
  • Advanced → Provider Quirks: Skip If-None-Match header aktivieren

Cache-Verzeichnis erstellen

Die Doku empfiehlt hier 64-128GB Speicher. Ich nutze LVM-Thin und habe dementsprechend auf dem Host ein neues Volume erstellt und gemountet. Das Anlegen eines neuen logischen Volumes bei LVM geht mit folgendem Befehl:

lvcreate -V 100G -T vg-data/thinpool -n pbs-s3

Gemountet habe ich das unter /mnt/pbs-s3.

Datastore hinzufügen

  • Name: backblaze
  • Local Cache: /mnt/pbs-s3
  • S3 Endpoint ID: passenden Endpoint auswählen
  • Bucket: den angelegten Bucket auswählen. Wenn hier nichts auftaucht oder ein Fehler erscheint, stimmt was mit den Zugangsdaten nicht oder der Bucketname ist z.B. nicht kleingeschrieben.
  • Prune Options: nach Bedarf konfigurieren

Datastore nutzen

Ich habe nun also in Proxmox einen zweiten Proxmox Backup Server als Storage eingefügt und einen zweiten Backup-Job mit dem Offsite-Storage und nur den wichtigsten Containern und VMs angelegt. Ich lasse das aktuell erstmal nur mit eher kleinen Backups laufen, bis ich ein Gefühl dafür bekommen habe, was mich das dann am Ende so kostet. Irgendwann wird dementsprechend ein Update-Post folgen.

Ein Restore-Test steht auch noch aus…