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
- sortie par défaut :
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'])"
doneEnsuite, 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_miniocôté hôte (si vous gérez les volumes). - Export logique via
mc mirror(selon votre réseau/reverse proxy).
2) Restore (rollback)
Postgres
- Vérifier que la stack est démarrée :
docker compose up -d postgres - Restaurer :
bash ops/restore_postgres.sh tmp/backups/postgres_YYYYmmdd_HHMMSS.sql.gzNotes :
- 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.