Files
dtic-DIIAA/docs/ambito/dtic-BKPs/A03.P002_Automatizacion_Backups.md
T
Ricardo MonlaandClaude Opus 4.6 1802c25194 refactor(ambitos): Migración completa dtic-DASUTEN (A04) y dtic-BKPs (A03) + herramientas ADN
Migración dtic-DASUTEN a estándar A04:
- A04_dtic-DASUTEN.md: Manifiesto creado
- A04.P001 a A04.P005: Planes renombrados de P2601.*
- _hist/_hist_P2601_dasuten.md: Legacy archivado

Migración dtic-BKPs a estándar A03:
- A03_dtic-BKPs.md: Manifiesto creado
- A03.P001, A03.P002: Planes migrados
- docs/ambito/dtic-BKPs/: Nueva estructura

Herramientas ADN nuevas:
- adn/tools/bkps/: BKPs migrado a tools ADN
- adn/tools/cli/dron.rb: Vigía de tareas largas
- adn/tools/cli/copiloto.rb: Asistente CLI
- adn/tools/cli/novato.rb: CLI de aprendizaje

Limpieza:
- dtic-BKPs/ → _hist/dtic-BKPs/ (legacy archivado)
- adn/tools/cli/backup.rb → _hist/ (migrado a bkps.rb)

Otros:
- nodos/pcv-dasu1.md, srvv-data.md, srvv-nginx-rm.md: Actualizados
- adn/tools/core/conciliador.rb: Mejoras
- adn/tools/w-zombi/data/cmd.json: Actualizado

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-07 10:23:53 -03:00

4.5 KiB

Plan: Automatización de Backups de Servidores

Grupo de Trabajo: dtic-BKPs (Respaldos de Infraestructura)

Código: A03.P002
Fecha: 06 de abril de 2026
Autor: Sistema ADN
Versión: 1.2
Estado: COMPLETADO (F4.1 alertas pendiente futura iteración)
Dependencia: A03.P001 — Migración a Tools ADN Última verificación: 2026-04-06 13:17 (drones operativos)

📋 Resumen Ejecutivo

Automatizar el ciclo completo de backups de servidores virtualizados (XenServer y Proxmox). Gracias a la migración completada en A03.P001, ya se cuenta con:

  • CLI unificada: ./adn/tools/run bkps <subcomando> (11 subcomandos)
  • Modo batch: bkps run C4 --batch (pipeline completo sin interacción)
  • Saneamiento: bkps sanear --dias N (limpieza con retención)
  • Backup individual: bkps backup <nodo> (vzdump remoto)
  • Monitoreo: bkps estados (estado Proxmox en tiempo real)
  • Delegación: dron lanzar --evento ID -- <comando> (auto-cierre bitácora)

El objetivo de este plan es llevar esas capacidades a ejecución programada y desatendida con registro automático, notificaciones y políticas de retención.

🎯 Objetivo

  1. Ejecución programada — Cron jobs en horarios de baja carga sin intervención.
  2. Registro automático en bitácora — Cada ejecución crea/cierra su evento vía dron.
  3. Notificaciones — Alertas por resultado (éxito/fallo).
  4. Rotación y limpieza — Políticas de retención automatizadas vía bkps sanear.
  5. Monitoreo de salud — Reporte de estado ampliado en bkps status.

📅 Fases de Implementación

FASE 1: Ejecución No-Interactiva (Completada — heredada de A03.P001)

  • 1.1: bkps run C4 --batch — pipeline completo sin interacción.
  • 1.2: Logging con métricas: duración por tarea (▶→✔ Xm Ys) + total + conteo de fallos.
  • 1.3: Auto-cierre de bitácora vía dron lanzar --evento ID -- <comando>.

FASE 2: Programación y Orquestación (Completada 2026-04-06)

  • 2.1: Cron wrapper: adn/tools/bkps/cron-bkps.sh C4 "nota".
  • 2.2: Lockfile en tmp/locks/bkps_<ref>.lock (auto-cleanup, stale detection).
  • 2.3: Integración dron: bitácora automática (evento:crear + auto-cierre con resultado).
    # Ejemplo cron nocturno con bitácora automática
    ./adn/tools/run dron lanzar --evento AUTO --nota "Cron: backup nocturno C4" -- ./adn/tools/run bkps run C4 --batch
    

FASE 3: Retención y Limpieza Automática (Completada 2026-04-06)

  • 3.1: Retención 3 tiers en YAML: Proxmox (zfsDISCO1), Local (ns8Disco3), Nube (rmOneDrive).
  • 3.2: bkps sanear con protección 🛡️ más reciente por nodo por tier.
  • 3.3: bkps buscar <nodo> — localizar backups en los 3 tiers.
  • 3.4: C5 (full_full_sanear) con post-sanear automático.

FASE 4: Notificaciones y Monitoreo (Completada 2026-04-06)

  • 4.1: Alertas por fallo (email/webhook) — pendiente futura iteración.
  • 4.2: bkps status ampliado: herramientas, espacio disco, retención configurada.
  • 4.3: Bitácora web ya muestra eventos de backups vía dron auto-cierre.

🛠 Herramientas Disponibles (heredadas de A03.P001)

Comando Función
bkps run C4 --batch Pipeline completo sin interacción
bkps backup <nodo> Backup individual vzdump remoto
bkps buscar <nodo> Localizar backups en 3 tiers
bkps estados Estado Proxmox en tiempo real
bkps sanear Sanear 3 tiers con protección por nodo
bkps sanear --tier N Sanear tier específico
bkps status Estado del sistema + espacio disco
dron lanzar --evento ID/AUTO -- <cmd> Auto-cierre de bitácora
dron flota Dashboard de flota
dron salud Health check (zombies/estancados)

🛸 Estado de Drones (Verificación 2026-04-06)

Flota: 2 drones completados y limpiados

  • dron_125106_654316 — Evento #1395: "Test diario de vuelo" → ✔ OK (0min)
  • dron_125505_657901 — Evento #1398: "Test diario v2" → ✔ OK

Diagnóstico: Ambos drones completaron exitosamente pero quedaron como "zombies" (PID muerto, estado=vigilando). El health check los auto-reparó marcándolos como fallidos y dron limpiar los removió.

Conclusión: Sistema de auto-reparación funciona correctamente. Verificar flota al inicio de sesión:

./adn/tools/run dron salud   # Detecta y auto-repara zombies
./adn/tools/run dron limpiar # Remueve completados