Zielsetzung
Ein Backup ist nur dann wertvoll, wenn es sich nachweislich wiederherstellen lässt. Ziel dieses Tickets ist die Schaffung eines automatisierten Prozesses, der in regelmäßigen Abständen die Integrität der Backup-Artefakte durch einen realen Test-Restore prüft.
Funktionale Anforderungen
- Automatisierter Test-Import: Regelmäßiger (z. B. monatlicher) automatisierter Import eines aktuellen Datenbank-Dumps in eine isolierte Test-Umgebung (Docker-Container).
- Integritäts-Check auf Anwendungsebene: Durchführung einfacher Abfragen gegen die Test-Datenbank, um sicherzustellen, dass die Schemata korrekt und die Daten lesbar sind (z. B. Zeilen-Count in Kern-Tabellen).
- Stichprobenartige Dateiprüfung: Automatisierte Prüfung der Repository- und File-Volumes auf Lesbarkeit und Plausibilität (z. B. Existenzprüfung zufällig ausgewählter Attachments).
- Reporting: Das Ergebnis der Validierung muss protokolliert werden. Ein fehlgeschlagener Restore-Test ist wie ein fehlgeschlagenes Backup zu behandeln und muss einen Alarm auslösen.
Nicht-funktionale Anforderungen
- Isolierung: Der Test-Restore muss strikt von der Produktivumgebung getrennt stattfinden, um Seiteneffekte (z. B. versehentliches Senden von E-Mails aus dem Testsystem) auszuschließen.
- Ressourceneffizienz: Die Validierung sollte zu Zeiten geringer Last erfolgen und die Test-Ressourcen nach Abschluss wieder freigeben.
Abnahmekriterien
- Erfolgreicher Testlauf der automatisierten Wiederherstellung.
- Dokumentation des Validierungs-Protokolls.