Page MenuHomePhorge – Wikonia

Entwicklung und Implementierung eines Pre-Upgrade-Sicherungsscripts
Proudly completedPublictask

Assigned To
Authored By
muke
Fri, Jan 9, 9:54 AM
Tags
Referenced Files
None
Subscribers

Description

Zielsetzung

Um das Risiko eines Datenverlusts bei zukünftigen Wartungsarbeiten zu minimieren, soll ein zentrales Steuerungsscript ("Pre-Flight-Safety") entwickelt werden. Dieses Script dient dazu, vor manuellen Eingriffen (Docker-Upgrades, Host-Updates, Konfigurationsänderungen) einen konsistenten und validierten Zustand aller produktiven Daten einzufrieren.

Funktionale Anforderungen

  • Sequenzielle Orchestrierung: Das Script muss alle vorhandenen Backup-Routinen (DB-Dump, File-Sync, Repo-Sync) nacheinander triggern.
  • Blockier-Logik: Ein Fortfahren mit den Wartungsarbeiten darf nur empfohlen werden, wenn alle Teil-Backups mit dem Exit-Code 0 (Erfolg) abgeschlossen wurden.
  • Manuelle Bestätigung: Das Script soll nach Abschluss der Sicherung eine explizite Bestätigung vom Operator fordern, bevor das System für Wartungsarbeiten "freigegeben" wird.
  • Transparenz: Während des Laufs muss eine klare Statusausgabe erfolgen (welcher Task läuft gerade, welche Dateigrößen wurden gesichert).

Nicht-funktionale Anforderungen

  • Unabhängigkeit: Das Script sollte so wenig Abhängigkeiten wie möglich haben (Plain Shell/Bash), um auch bei instabilen Docker-Umgebungen lauffähig zu bleiben.
  • Idempotenz: Mehrfaches Ausführen hintereinander darf nicht zu inkonsistenten Zuständen oder Datenmüll führen.
  • Sicherheits-Check: Das Script sollte prüfen, ob auf dem Zielmedium (lokaler Backup-Pfad) ausreichend Speicherplatz für den aktuellen Snapshot vorhanden ist.

Rahmenparameter für die Umsetzung

  • Input: Das Script benötigt keine komplexen Parameter, sollte aber einen --dry-run Modus unterstützen.
  • Output: Ein finales Logfile pro Lauf, das im Falle eines Scheiterns eine schnelle Fehleranalyse ermöglicht.
  • Integration: Das Script bildet die technische Basis für die prozessuale Vorgabe: "Kein docker compose pull ohne erfolgreichen Pre-Flight-Check".

Abnahmekriterien

  • Erfolgreicher Durchlauf aller Backup-Module im Testsystem.
  • Simulation eines Fehlers (z.B. voller Datenträger) führt zum Abbruch mit klarer Fehlermeldung.
  • Dokumentation des Skript-Aufrufs im Wartungshandbuch.

Details

Schwierigkeitsgrad
Intermediate
Ticket-Details
Komponente
Server

Event Timeline

WikiMeister moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Wed, Jan 14, 11:34 AM
WikiMeister moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.