Aurora Nexus
Aurora NexusOperations

Backup / Restore — Aurora Nexus (MVP Safe)

(depuis `BACKUP_RESTORE.md`)

Objectif : disposer d’un rollback clair avant toute livraison client (cf. docs/MVP_SAFE_ROLLOUT.md).

1) Backup (recommandé)

Postgres (obligatoire)

  • Préflight + backup DB : bash ops/preflight_safe_rollout.sh
  • Backup DB seul : bash ops/backup_postgres.sh
    • sortie par défaut : tmp/backups/postgres_YYYYmmdd_HHMMSS.sql.gz

Qdrant (optionnel mais recommandé)

Qdrant supporte les snapshots via API REST. Exemple (à exécuter sur l’hôte) :

QDRANT_URL="http://127.0.0.1:${HOST_QDRANT_PORT:-16500}"
for c in "${QDRANT_COLLECTION:-aurora_documents}" "${QDRANT_CACHE_COLLECTION:-llm_cache_semantic}"; do
  curl -sf -X POST "${QDRANT_URL}/collections/${c}/snapshots" | python -c "import sys,json; print(json.load(sys.stdin)['result']['name'])"
done

Ensuite, télécharger le snapshot renvoyé :

curl -sf "${QDRANT_URL}/collections/<collection>/snapshots/<name>" -o "tmp/backups/qdrant_<collection>_<name>.snapshot"

MinIO (optionnel mais recommandé)

Deux options :

  • Snapshot du volume Docker aurorarag_minio côté hôte (si vous gérez les volumes).
  • Export logique via mc mirror (selon votre réseau/reverse proxy).

2) Restore (rollback)

Postgres

  1. Vérifier que la stack est démarrée : docker compose up -d postgres
  2. Restaurer :
bash ops/restore_postgres.sh tmp/backups/postgres_YYYYmmdd_HHMMSS.sql.gz

Notes :

  • Cette restauration n’efface pas automatiquement le schéma existant ; elle rejoue le dump SQL.
  • En cas de conflit, restaurer sur une base vierge est plus simple (runbook “prod” à formaliser si besoin).

Qdrant / MinIO

À ce stade MVP, la restauration dépend de votre politique d’exploitation (volumes, snapshots, ou export logique). Recommandation : documenter une procédure DR “prod-like” (reverse proxy + TLS) si vous exposez la solution.

On this page