Dies ist eine alte Version des Dokuments!
Mermaid-Labor
Versuch 001 — Borg-Infrastruktur
flowchart LR
A["OMNISRV
Borg Backup"] --> B["wg-easy
WireGuard"]
B --> C["s2s-home0"]
C --> D["HOME0"]
D --> E["OMV8"]
E --> F[("Borg Repository")]
A -. "Readiness" .-> E
Versuch 002 — Borg Readiness
flowchart TD
A([Readiness startet]) --> B["Nächste konfigurierte Ziel-IP prüfen"]
B --> C{"Ziel erreichbar?"}
C -- "Ja" --> D["BORG_TARGET_IP setzen"]
D --> E["Grace-Time abwarten"]
E --> F([Borg-Backup freigegeben])
C -- "Nein" --> G{"Weitere Ziel-IP vorhanden?"}
G -- "Ja" --> B
G -- "Nein" --> H["60 Sekunden warten"]
H --> B
Versuch 003 — Systemstart bis Borg-Backup
gantt
title OMNISRV — Vom Systemstart bis zum Borg-Backup
dateFormat HH:mm
axisFormat %H:%M
section System
OMNISRV startet :a1, 00:00, 1m
Docker initialisiert :a2, after a1, 1m
section WireGuard
wg-easy startet :w1, after a1, 1m
Tunnel s2s-home0 kommt hoch :w2, after w1, 2m
section Readiness
Ziel noch nicht erreichbar :crit, r1, after a1, 3m
OMV8 erkannt :milestone, r2, after r1, 0m
Grace-Time :r3, after r2, 3m
section Backup
Borg freigegeben :milestone, b1, after r3, 0m
Borg-Backup :b2, after b1, 2m
Versuch 004 — Erklärung und Detailvergrößerung
Was macht die Readiness?
Die Readiness prüft nach dem Systemstart, ob das konfigurierte Borg-Ziel tatsächlich erreichbar ist.
Dabei verlässt sie sich nicht darauf, dass einzelne Container bereits als gestartet oder HEALTHY gemeldet werden. Entscheidend ist ausschließlich, ob der für die Datensicherung benötigte Zielhost über eine der ermittelten IP-Adressen erreichbar ist.
Ist keine Ziel-IP erreichbar, wartet die Readiness 60 Sekunden und beginnt anschließend erneut mit der Prüfung.
Sobald eine erreichbare IP gefunden wurde, wird diese als aktueller Zustand gespeichert und der nachfolgende Backup-Timer freigegeben.
Die Readiness selbst führt kein Backup aus. Ihre kleine Welt endet mit der Feststellung:
„Das Ziel ist erreichbar. Der nächste Prozess darf übernehmen.“
flowchart TD
A([Readiness startet]) --> B["Nächste konfigurierte Ziel-IP prüfen"]
B --> C{"Ziel erreichbar?"}
C -- "Ja" --> D["BORG_TARGET_IP setzen"]
D --> E["Grace-Time abwarten"]
E --> F([Borg-Backup freigegeben])
C -- "Nein" --> G{"Weitere Ziel-IP vorhanden?"}
G -- "Ja" --> B
G -- "Nein" --> H["60 Sekunden warten"]
H --> B