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
- Bucket-Name: lowercase (z. B.
Lifecycle-Einstellungen für den Bucket setzen:
Nur die letzte Version der Datei aufbewahren
Application Keys erstellen
Im Menü
Application Keys
→Add 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…