Zum Inhalt

Backup & Disaster Recovery

Backups sind ein wesentlicher Bestandteil der Datensicherheit und Business Continuity. Die ayedo Kubernetes Distribution bietet umfassende Backup-Lösungen via Velero.

Relevante Vorschriften

GDPR Art. 32

GDPR Artikel 32 fordert:

Bei der Beurteilung des angemessenen Schutzniveaus sind insbesondere die Risiken zu berücksichtigen, die sich aus der Verarbeitung ergeben, insbesondere durch unbeabsichtigte oder unrechtmäßige Vernichtung, Verlust, Veränderung, unbefugte Offenlegung oder unbefugten Zugriff auf personenbezogene Daten. [Hervorhebung hinzugefügt]

BSI IT-Grundschutz APP.4.4.A18

Fordert regelmäßige Backups und getestete Wiederherstellungsprozesse für Kubernetes-Cluster.

NIS2 Art. 21(2)©

Anforderung an "Business Continuity, Backup-Management und Wiederherstellung nach Katastrophen".

ISO 27001

  • A.8.13: Information Backup
  • A.8.14: Redundancy of Information Processing Facilities

Backup-Strategie

Die ayedo Kubernetes Distribution implementiert eine umfassende Backup-Strategie:

Was wird gesichert?

  • Kubernetes Ressourcen: Deployments, StatefulSets, ConfigMaps, Secrets, etc.
  • Persistent Volumes: Alle PVCs und deren Daten
  • Cluster State: Cluster-Konfiguration und Metadaten
  • Namespaces: Vollständige Namespace-Backups

Backup-Frequenz

Standard-Backup-Schedule:

  • Täglich: Automatische Backups um 2:00 Uhr (UTC)
  • Wöchentlich: Vollständige Cluster-Backups (Sonntag)
  • On-Demand: Manuelle Backups vor größeren Changes

Anpassbare Frequenz je nach Anforderung:

  • Stündlich für kritische Anwendungen
  • Mehrmals täglich für hochfrequente Änderungen

Retention Policy

Standard-Aufbewahrungsfristen:

  • Tägliche Backups: 30 Tage
  • Wöchentliche Backups: 90 Tage
  • Monatliche Backups: 365 Tage (optional)

Velero - Die Backup-Lösung

Velero ist die zentrale Backup-Lösung der ayedo Kubernetes Distribution.

Features

  • Cluster-Backups: Vollständige oder selektive Backups
  • Namespace-Backups: Backup einzelner Namespaces
  • PV Snapshots: Volume Snapshots via CSI
  • Scheduled Backups: Automatisierte Backup-Schedules
  • Restore: Einfache Wiederherstellung

Backup-Konfiguration

Beispiel: Scheduled Backup

apiVersion: velero.io/v1
kind: Schedule
metadata:
  name: daily-backup
  namespace: velero
spec:
  schedule: "0 2 * * *"  # Täglich um 2:00 Uhr
  template:
    includedNamespaces:
    - production
    - staging
    ttl: 720h  # 30 Tage Retention
    storageLocation: default

Backup-Annotations

Ressourcen können mit Annotations markiert werden, um Backup-Verhalten zu steuern:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: database-pvc
  annotations:
    backup.velero.io/backup-volumes: "true"

Offsite Storage

Backups werden in geografisch getrennten Rechenzentren gespeichert:

  • Primary Backup: Rechenzentrum A
  • Offsite Backup: Rechenzentrum B (mindestens 100 km entfernt)

Storage Backend:

  • S3-kompatibel: MinIO, Hetzner Object Storage, AWS S3
  • Verschlüsselt: AES-256 Encryption at Rest
  • Immutable: Write-Once-Read-Many (WORM) für Compliance

Recovery Testing

Regelmäßige Tests der Wiederherstellung sind entscheidend:

Test-Frequenz

  • Monatlich: Stichproben-Tests einzelner Ressourcen
  • Quartalsweise: Vollständige Namespace-Wiederherstellung
  • Jährlich: Disaster-Recovery-Drill (kompletter Cluster)

Test-Prozess

  1. Backup-Auswahl: Wählen Sie ein aktuelles Backup
  2. Test-Umgebung: Separate Test-Cluster oder Namespace
  3. Restore: Wiederherstellung mit Velero
  4. Validation: Verifizierung der Daten und Funktionalität
  5. Dokumentation: Ergebnisse dokumentieren

Recovery Point Objective (RPO)

RPO definiert, wie viele Daten maximal verloren gehen dürfen:

  • Standard: 24 Stunden (tägliche Backups)
  • Enhanced: 4 Stunden (4x täglich)
  • Critical: 1 Stunde (stündliche Backups)

Recovery Time Objective (RTO)

RTO definiert, wie lange die Wiederherstellung maximal dauern darf:

  • Standard: 4 Stunden
  • Enhanced: 2 Stunden
  • Critical: 1 Stunde

Backup Monitoring

Backup-Status kann über Grafana Dashboards überwacht werden:

Velero Backup Dashboard

  • Erfolgreiche Backups: Anzahl und Zeitstempel
  • Fehlgeschlagene Backups: Fehler und Warnungen
  • Backup-Größe: Storage-Verbrauch
  • Backup-Dauer: Performance-Metriken

Alerting

Automatische Benachrichtigungen bei:

  • Fehlgeschlagenen Backups
  • Überschreitung der Backup-Dauer
  • Storage-Engpässen
  • Veralteten Backups (> 25 Stunden)

Disaster Recovery Prozess

Im Notfall

  1. Incident Response: Aktivierung des DR-Plans
  2. Assessment: Bewertung des Schadensumfangs
  3. Decision: Entscheidung über Restore-Strategie
  4. Restore: Wiederherstellung via Velero
  5. Validation: Verifizierung der Wiederherstellung
  6. Communication: Stakeholder informieren

Restore-Befehle

Vollständiger Namespace-Restore:

velero restore create --from-backup daily-backup-20251106 \
  --include-namespaces production

Selective Restore:

velero restore create --from-backup daily-backup-20251106 \
  --include-resources deployment,service \
  --namespace production

Backup für Datenbanken

Die SDP implementiert für jede Managed App, die nicht von Velero allein gesichert werden kann, einen spezialisierten Backup- und Restore-Prozess. Diese Prozesse sind Teil der Plattform- oder Block-Logik der jeweiligen Managed App.

Automatisiertes Monitoring & Alerting

Alle Datenbank-Backups werden überwacht:

  • Backup-Ausführung: Kontinuierliche Überwachung der Backup-Jobs
  • Backup-Validierung: Automatische Prüfung auf Vollständigkeit und Integrität
  • Alerting: Automatische Benachrichtigung bei:
  • Fehlgeschlagenen Backups
  • Überschreitung der erwarteten Backup-Dauer
  • Fehlenden Backups (verpasste Schedule)
  • Problemen mit WAL-Archivierung
  • Dashboard: Zentrale Übersicht aller Datenbank-Backups in Grafana

PostgreSQL - CloudNativePG

Für PostgreSQL Datenbanken nutzt die SDP den CloudNativePG-Operator mit integriertem Backup-Management:

Backup-Mechanismen:

  • Physical Backups: Vollständige physische Datenbank-Backups
  • WAL (Write-Ahead Log) Archiving: Kontinuierliche Archivierung aller Transaktionen
  • Point-in-Time Recovery (PITR): Wiederherstellung zu jedem beliebigen Zeitpunkt
  • Incremental Backups: Effiziente inkrementelle Backups basierend auf WAL

Konfiguration:

apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
  name: production-db
spec:
  backup:
    barmanObjectStore:
      destinationPath: s3://backups/postgresql/
      s3Credentials:
        accessKeyId:
          name: backup-creds
          key: ACCESS_KEY_ID
        secretAccessKey:
          name: backup-creds
          key: SECRET_ACCESS_KEY
    retentionPolicy: "30d"

Features:

  • Automatische Scheduled Backups
  • Verschlüsselte Backup-Speicherung
  • Automatisches WAL-Archiving
  • Backup-Monitoring und Health-Checks
  • One-Click Restore via Kubernetes CRD

MongoDB

Für MongoDB implementiert die SDP spezialisierte Backup-Prozesse:

Backup-Mechanismen:

  • mongodump: Logische Backups der Datenbank
  • Oplog Archiving: Continuous Backup via Oplog
  • Point-in-Time Recovery: Wiederherstellung zu spezifischem Zeitpunkt
  • Replica Set Backups: Backups von sekundären Nodes ohne Produktions-Impact

Features:

  • Automatisierte Backup-Jobs via CronJob
  • Integriert in Monitoring und Alerting
  • Verschlüsselte Backup-Speicherung
  • Validierung der Backup-Integrität

MariaDB / MySQL

Für MariaDB und MySQL nutzt die SDP spezialisierte Backup-Strategien:

Backup-Mechanismen:

  • Percona XtraBackup: Hot Backups ohne Downtime
  • mysqldump: Logische Backups für kleinere Datenbanken
  • Binary Log Archiving: Continuous Replication Log Archiving
  • Point-in-Time Recovery: Wiederherstellung via Binary Logs

Features:

  • Automatische Scheduled Backups
  • Backup-Validierung und Monitoring
  • Verschlüsselte Offsite-Speicherung
  • Dokumentierte Restore-Prozesse

Weitere Datenbanken

Auch für andere Managed Datenbanken (Redis, ClickHouse, InfluxDB, etc.) implementiert die SDP spezialisierte Backup-Prozesse als Teil der jeweiligen Block-Logik:

  • Datenbankspezifische Backup-Tools
  • Integriert in zentrales Monitoring
  • Automatisches Alerting bei Problemen
  • Dokumentierte Restore-Prozeduren

Compliance Checkliste

  • ✅ Automatische tägliche Backups konfiguriert
  • ✅ Offsite Storage in geografisch getrenntem RZ
  • ✅ Verschlüsselte Backup-Speicherung
  • ✅ Dokumentierte Retention Policy
  • ✅ Regelmäßige Restore-Tests (quartalsweise)
  • ✅ Backup-Monitoring und Alerting aktiv
  • ✅ Dokumentierter Disaster Recovery Plan
  • ✅ RPO und RTO definiert

Weitere Informationen

Support

Für Fragen zu Backups und Disaster Recovery: