Backup-Konzept Object Storage
Diese Dokumentation beschreibt, wie die Daten aus dem Hetzner Object Storage gesichert werden.
Überblick
Ausgangslage
- Die produktiven Mediendaten des Projekts bakehouse liegen in einem Hetzner Object Storage Bucket im Rechenzentrum Nürnberg.
- Hetzner sichert die Daten innerhalb des Clusters gegen den Ausfall einzelner Storage-Server ab, aber wenn das Rechenzentrum abbrennt wars das.
- Deshalb werden die Daten von uns an zwei zusätzliche, voneinander unabhängige Wege gesichert.
Drei Kopien von uns
- Kopie 1 – Produktion: Hetzner Object Storage, Standort Nürnberg
- Kopie 2 – lokal in Imst: TrueNAS-Server im Büro, ZFS-Pool Z2
- Kopie 3 – offsite: Hetzner Object Storage, Standort Helsinki
Beteiligte Systeme
Hetzner Object Storage Nürnberg (Quelle)
- Bucket: bakehouse
- Standort: Nürnberg (NBG1), Endpunkt
nbg1.your-objectstorage.com - Zugriff ausschließlich über die S3-API per HTTPS
- Zugangsdaten: Access Key und Secret Key, zu finden in der Hetzner Cloud Console unter Security → S3 credentials des jeweiligen Projekts
2.2 TrueNAS im Büro (lokale Kopie)
- System: TrueNAS SCALE, Hostname truenas
- Pool: Z2
- Zielverzeichnis:
/mnt/Z2/Backups/bakehouse.nbg1.your-objectstorage.com - Konfiguration des Sicherungswerkzeugs:
/mnt/Z2/Backups/.rclone/rclone.conf - Ausführender Benutzer: backup_1
2.3 Hetzner Object Storage Helsinki (Offsite-Kopie)
- Bucket: bakehouse-backup
- Standort: Helsinki (HEL1), Endpunkt
hel1.your-objectstorage.com - Eigenes Hetzner-Projekt mit eigenen Zugangsdaten, damit ein gestohlener Schlüssel nicht beide Kopien erreichen kann
Das Sicherungswerkzeug: rclone
- rclone ist das Gegenstück zu rsync für Objektspeicher und in TrueNAS bereits enthalten.
- Es vergleicht Dateigröße und Änderungszeitpunkt und überträgt nur, was sich tatsächlich geändert hat. Der erste Lauf dauert lange, alle weiteren sind kurz.
- Es wird bewusst der Modus copy und nicht sync verwendet: Dateien, die in Nürnberg gelöscht werden, bleiben in den Sicherungen erhalten. Ein versehentliches Löschen in der Produktion vernichtet also nicht automatisch das Backup.
- Die Zugangsdaten stehen nicht im Befehl selbst, sondern in der Konfigurationsdatei auf dem NAS. Dort sind zwei Ziele hinterlegt: nbg1 (Nürnberg) und hel1 (Helsinki).
Ablauf und Reihenfolge der Sicherung
Zeitplan
- Die Sicherung läuft täglich um 00:00 Uhr als Cron Job auf dem TrueNAS.
- Eingerichtet ist der Job in der TrueNAS-Oberfläche unter System → Advanced → Cron Jobs.
- Ausgeführt wird er als Benutzer backup_1.
- Schritt 1 – Herunterladen: Die Daten werden aus dem Bucket bakehouse in Nürnberg auf den TrueNAS-Pool Z2 geholt.
- Schritt 2 – Hochladen: Erst wenn Schritt 1 fehlerfrei durchgelaufen ist, wird die lokale Kopie in den Bucket bakehouse-backup nach Helsinki hochgeladen.
Wichtig - zuerst läuft es nach Imst, dann erst nach Helsinki
- Wir brauchen einen Server der den rclone macht - das kann nur die TrueNas
- Durch die Verkettung sparen wir uns Übertragungskosten
Zuständigkeiten
- Einrichtung und Änderungen an der Sicherung: Manuel
- Hetzner-Projekte und Zugangsdaten: Manuel
- Im Notfall zu informieren: Manuel, danach das Team