Skip to content

REC-S7 — Storage off-site pour les backups Postgres #85

@aliceout

Description

@aliceout

Sévérité : élevée (ops)

Pré-requis applicatif : le script scripts/backup.sh (à créer côté app) génère les dumps. Il faut un endroit off-site où les uploader.

Options :

Provider Coût Notes
Backblaze B2 10 GB gratuits, puis $6/TB/mois API S3-compatible, simple
Wasabi $7/TB/mois minimum S3-compatible, pas de frais egress
AWS S3 $0.023/GB/mois + egress Standard mais cher pour faible volume
rsync vers second VPS Coût VPS Si tu as déjà un autre VPS, simple et gratuit

Recommandation : Backblaze B2 pour démarrer (10 GB gratuits couvre largement un Postgres Nodea early-stage).

Procédure de setup (~30 min) :

  1. Créer compte B2 + bucket nodea-backups.
  2. Créer une App Key avec accès nodea-backups seulement.
  3. Stocker les credentials sur le VPS (/etc/nodea/b2-credentials chmod 600).
  4. Le script backup.sh upload via rclone ou b2 cli.
  5. Cron quotidien à 4h du matin.

Rétention recommandée :

  • 7 jours quotidiens
  • 4 backups hebdomadaires (mardi par ex.)
  • 6 backups mensuels (1er du mois)
  • Total ~1.5 mois de profondeur, gérable en quelques GB.

Test de restauration : à faire 1 fois par trimestre minimum. Restaurer dans une instance Postgres temporaire + vérifier que pnpm db:migrate est idempotent + smoke test sur un user de test. Un backup non-restauré n'est pas un backup.

Metadata

Metadata

Assignees

No one assigned

    Labels

    server-sideConfig / déploiement côté VPS (hors code applicatif)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions