fase 3 (operacion): backups automaticos por instancia con descubrimiento dinamico, verificacion de integridad, retencion GFS 14/8/6, prueba de restauracion semanal, timers systemd y logrotate; panel CLI multi-instancia (admin_instancias.py) + doc de operacion y restauracion
This commit is contained in:
42
infra/ops/backup.env
Normal file
42
infra/ops/backup.env
Normal file
@@ -0,0 +1,42 @@
|
||||
# Configuración central de backups SKEEN.
|
||||
# La lee backup_instancias.sh (con `source`) y admin_instancias.py (como clave=valor).
|
||||
# Editar aquí y no en el script. Formato estricto: CLAVE=valor, sin espacios.
|
||||
|
||||
# --- Destinos ---
|
||||
BACKUP_ROOT=/root/backups
|
||||
LOG_FILE=/var/log/skeen-backup.log
|
||||
LOCK_FILE=/var/lock/skeen-backup.lock
|
||||
|
||||
# --- Conexión PostgreSQL ---
|
||||
# Por defecto se usa el rol compartido de Odoo sobre TCP (localhost).
|
||||
DB_HOST=localhost
|
||||
DB_PORT=5432
|
||||
DB_USER=skeen
|
||||
DB_PASSWORD=skeen_dev_2026
|
||||
# Alternativa sin password: dejar DB_PASSWORD vacío y exportar PG_OS_USER=postgres
|
||||
# (usa autenticación peer local: `su postgres -c pg_dump`).
|
||||
PG_OS_USER=postgres
|
||||
|
||||
# --- Verificación (--verificar) ---
|
||||
# Restaura el dump a una DB temporal y compara conteos. Requiere espacio libre
|
||||
# igual a este factor x tamaño de la base en el filesystem de PostgreSQL.
|
||||
VERIFY_MIN_FREE_FACTOR=2
|
||||
|
||||
# --- Retención (esquema abuelo-padre-hijo, buckets exclusivos) ---
|
||||
# Se conserva el más reciente de cada mes (hasta RETAIN_MONTHLY),
|
||||
# luego el más reciente de cada semana ISO (hasta RETAIN_WEEKLY),
|
||||
# luego el más reciente de cada día (hasta RETAIN_DAILY).
|
||||
# El backup más reciente NUNCA se borra (último bueno).
|
||||
RETAIN_DAILY=14
|
||||
RETAIN_WEEKLY=8
|
||||
RETAIN_MONTHLY=6
|
||||
|
||||
# --- Log ---
|
||||
# Además de logrotate, el script trunca el log si supera este tamaño (bytes).
|
||||
LOG_MAX_BYTES=5242880
|
||||
|
||||
# --- Componentes opcionales (Docker, fuera del backup por instancia) ---
|
||||
# Gestionados aparte; se documentan para el panel. 1 = respaldar (no implementado
|
||||
# aquí), 0 = no. Supabase y WACRM self-hosted viven en Docker.
|
||||
SUPABASE_BACKUP=0
|
||||
WACRM_BACKUP=0
|
||||
Reference in New Issue
Block a user