Saltar a contenido

4. Nivel 0 y Espejo Local de Dependencias

Reconstruir todo desde cero es el principio más exigente del sistema. Para que sea posible sin internet, hace falta un "kit de rescate" físico y tres almacenes locales de dependencias. Mientras estos componentes funcionen, SmallCountry puede reconstruirse aunque el resto del mundo esté desconectado.


Nivel 0 — Rescue Boat

Dispositivo físico (SSD externo o USB de alta capacidad) que contiene:

Recurso Contenido
Binarios esenciales OpenTofu, Ansible, git, curl, jq
Estado de infraestructura .tfstate de OpenTofu
Script de arranque bootstrap.sh
Credenciales mínimas Claves SSH, tokens API (interfaz de programación)
Documentación offline Copia estática de docs.sc con runbooks

Se actualiza trimestralmente y se guarda en ubicación física separada del servidor.


Espejo Local de Dependencias

1. Apt-Cacher-NG — proxy de paquetes

Caché transparente de paquetes Debian/Proxmox. Cada apt install pasa por él. Si internet cae, los paquetes ya descargados se siguen sirviendo a velocidad local.

2. Forgejo Registry OCI — imágenes Docker

Todas las imágenes se cachean localmente. Flujo: Docker Hub → Forgejo Registry → Trivy + Cosign + SBOM (lista de componentes de software) → cuarentena → disponible para LXCs (contenedores ligeros de Proxmox). Los nodos de producción NUNCA acceden a Docker Hub.

3. Espejo PyPI — paquetes Python

Dependencias de Ansible, code-server y otras herramientas cacheadas localmente. Mismo principio que APT.


Reconstrucción offline

Rescue Boat conectado
  → bootstrap.sh instala OpenTofu + Ansible desde binarios locales
  → OpenTofu recrea infraestructura (bridges, VLANs, LXCs, ZFS)
  → Ansible provisiona cada LXC:
      apt install → desde Apt-Cacher-NG (offline)
      docker pull → desde Forgejo Registry (offline)
      pip install → desde espejo PyPI (offline)
  → Restauración de datos desde PBS (backups locales)
  → Verificación funcional: healthchecks, consultas BD
  → RTO objetivo: < 15 minutos

Mantenimiento

Componente Frecuencia Verificación
Rescue Boat Trimestral Simulacro: arrancar Proxmox limpio desde Rescue Boat
Apt-Cacher-NG Continuo (transparente) Automático
Forgejo Registry Nocturno Renovate + cuarentena
Espejo PyPI Bajo demanda Semaphore

Relaciones con otros mecanismos


El Nivel 0 y el Espejo Local son la diferencia entre "tengo backups" y "puedo reconstruir". Lo primero es necesario. Lo segundo es soberanía.


Secciones relacionadas