Backup & Restore – Systemdokumentation
1. Einleitung
Das YachtMemory Backup-System ist so aufgebaut, dass Backup, Speicherung und Validierung
klar voneinander getrennt sind. Ziel ist es, nicht nur Backups zu erzeugen, sondern
deren Wiederherstellbarkeit regelmäßig und automatisiert zu überprüfen.
Das System besteht aus drei dedizierten Komponenten:
- YMServer: produktives System (Quelle der Daten)
- YMBackup: Backup-Speicher (Repository)
- YMRestore: unabhängiges Restore-Test-System
---
2. Systemarchitektur
YMServer (Produktivsystem)
│
│ restic backup
▼
YMBackup (Repository /mnt/backup/restic-repo)
│
│ restic restore
▼
YMRestore (/mnt/backup/restore-test-auto)
Die Trennung stellt sicher:
- Backup und Storage sind entkoppelt
- Restore erfolgt auf einem unabhängigen System
- Fehler im Produktivsystem beeinflussen den Restore-Test nicht
---
3. Komponenten im Detail
3.1 YMServer (Backup-Client)
- führt Backups aus
- enthält alle produktiven Daten
- verwendet Restic als Backup-Tool
Backup-Skript:
/usr/local/bin/restic-backup
Repository-Konfiguration:
/etc/restic/backup.env
Beispiel:
RESTIC_REPOSITORY=sftp:backupadmin@10.99.0.6:/mnt/backup/restic-repo
---
3.2 YMBackup (Storage-Server)
- stellt Speicher für das Repository bereit
- Zugriff ausschließlich über SFTP
- führt selbst keine Backups aus
Repository-Pfad:
/mnt/backup/restic-repo
---
3.3 YMRestore (Restore-Validator)
- führt regelmäßige Restore-Tests aus
- greift auf das Repository zu
- schreibt Testdaten auf lokale Festplatte
Restore-Test:
/usr/local/sbin/restic-restore-test
---
4. Definition des Backup-Umfangs
Der Umfang wird im Backup-Skript definiert:
restic backup \
/etc \
/home \
/var/www \
/var/backups/mysql
Hier wird festgelegt, welche Verzeichnisse gesichert werden.
---
Ausschlüsse
Datei:
/etc/restic/excludes.txt
Beispiel:
/tmp/*
/var/log/*
*.log
---
5. Automatischer Restore-Test
Zielverzeichnis
/mnt/backup/restore-test-auto/
Beispiel:
/mnt/backup/restore-test-auto/etc/hosts
Der Test wird bei jedem Lauf neu erstellt und überschreibt vorhandene Daten.
---
Funktion des Tests
Der Restore-Test prüft:
- Zugriff auf das Repository
- Entschlüsselung der Daten
- Dateisystem und Schreibrechte
- Korrekte Wiederherstellung einzelner Dateien
---
6. Automatisierung
YMRestore
30 3 * * * /usr/local/sbin/restic-restore-test
---
YMServer
Statusabgleich:
*/5 * * * * /usr/local/sbin/ymrestore-check
Überwachung:
/usr/local/sbin/backup-watchdog
---
7. Überwachung und Alarmierung
Überwacht wird:
- Backup erfolgreich
- Backup aktuell (<24h)
- YMRestore erreichbar
- Mount vorhanden
- Restore-Test erfolgreich
- Restore-Test aktuell (<24h / 48h)
Bei Fehlern erfolgt automatische E-Mail-Benachrichtigung.
---
8. Manuelles Restore einzelner Daten
restic restore <snapshot-id> \
--target /mnt/backup/manual-restore \
--include /etc/hosts
---
9. Zielverzeichnisse
- Automatischer Test: /mnt/backup/restore-test-auto
- Manueller Restore: /mnt/backup/manual-restore
---
10. Vollständiger Restore (Disaster Recovery)
10.1 Ziel
Wiederherstellung eines kompletten Systems nach Ausfall.
---
10.2 Voraussetzungen
- neues oder leeres System
- Netzwerkzugriff auf YMBackup
- Restic installiert
---
10.3 Zugriff konfigurieren
export RESTIC_REPOSITORY="sftp:backupadmin@10.99.0.6:/mnt/backup/restic-repo"
export RESTIC_PASSWORD="..."
---
10.4 Snapshot auswählen
restic snapshots
---
10.5 Restore durchführen
restic restore <snapshot-id> \
--target /mnt/backup/manual-restore
---
10.6 Daten zurückspielen
Beispiele:
rsync -a /mnt/backup/manual-restore/etc/ /
rsync -a /mnt/backup/manual-restore/var/www/ /var/www/
---
10.7 Datenbanken wiederherstellen
mysql < /mnt/backup/manual-restore/var/backups/mysql/*.sql
---
10.8 Dienste starten
sudo systemctl restart apache2
sudo systemctl restart mariadb
---
11. Betriebsempfehlungen
- Restore-Test täglich durchführen
- Status regelmäßig prüfen
- Snapshots überwachen
- Recovery-Prozess dokumentiert halten
---
12. Fazit
Das System stellt sicher, dass Backups nicht nur existieren,
sondern regelmäßig und automatisiert auf Wiederherstellbarkeit geprüft werden.
Durch die Trennung von Produktivsystem, Backup-Speicher und Restore-Test-System
wird ein hohes Maß an Ausfallsicherheit erreicht.