feat(backup): Glesys primary + Hetzner secondary off-site #67
Inga granskare
Etiketter
Inga etiketter
area/backups
area/ci
area/control-panel
area/identity
area/infra
area/observability
area/payments
area/security
area/storage
area/web
blocked
needs-info
needs-triage
ready-for-implementation
type
bug
type
chore
type
docs
type
epic
type
feature
type
task
wontfix
Ingen milstolpe
Inget projekt
Inga tilldelade
1 deltagare
Notiser
Förfallodatum
Inget förfallodatum satt.
Beroenden
Inga beroenden satta
Referens
bitborg/bitborg-infra!67
Läser in…
Hänvisa till i nytt ärende
Ingen beskrivning angiven.
Ta bort grenen "backup-glesys-primary"
Borttagning av en gren är permanent. Även om den borttagna grenen kan fortsätta existera en kort tid innan den faktiskt tas bort, kan det INTE ångras i de flesta fall. Vill du fortsätta?
What
Adds Glesys (Swedish, Falkenberg — Ceph/RGW S3) as the primary off-site backup destination and demotes Hetzner (hel1, EU) to a secondary cross-provider redundancy copy. This satisfies #41 (a second off-provider destination) and advances the sovereignty goal: the primary off-site copy — the one the restore drill pulls from and a real recovery starts from — now lives on Swedish soil, largely closing the principle-#1 exception (ADR 0011).
backup_s3_destinationslist (index 0 = primary). Non-secret S3 shape in group_vars; bucket names + keys are vaulted (repo is public).gitborg_backup_offsite_last_status{destination}+BackupOffsiteFailed(warning) alongside the existingBackupFailed(critical).See ADR 0011 update + architecture (both mermaid diagrams) + principles in gitborg/gitborg-docs#18 (companion PR), and the runbook section here.
Verified live on prod
gitborg_backup_offsite_last_status{glesys}=0,{hetzner}=0, overallgitborg_backup_last_run_status=0.forgejo doctorconfirmed 5 repos + DB consistency, VM torn down (no leak),gitborg_backup_drill_last_run_status=0.BackupOffsiteFailedloaded (warning) and not firing; both per-destination series scraped into VictoriaMetrics.Two review-caught fixes: a bash
local a=$1 b=${a}evaluation bug (would crash underset -u); alert severity aligned to the design (warning, not critical) to avoid double-critical paging.Epic: gitborg/gitborg-docs#2
Closes #41