Runbook: Restaurar Jellyfin¶
Propósito¶
Restaurar el servicio Jellyfin tras fallo del servidor primario o pérdida de datos.
Síntomas¶
- Jellyfin no responde en jellyfin.gntech.dev
- Error 502/503
- Base de datos de metadatos corrupta
- Servidor primario (Jellyfin-01) caído
Prerrequisitos¶
- Acceso SSH a Jellyfin-01 o Jellyfin-02
- Backup disponible en PBS (datastore docker-services)
- Acceso NFS a Storage
Procedimiento¶
Escenario A: Servicio caído (recuperación rápida)¶
# 1. Verificar estado
ssh usuario@192.168.20.10
cd /opt/jellyfin
docker compose ps
# 2. Verificar logs
docker compose logs --tail=50
# 3. Reiniciar servicio
docker compose restart
# 4. Verificar respuesta
curl -I http://localhost:8096
Escenario B: Jellyfin-01 caído irreparablemente¶
# 1. Activar Jellyfin-02 como servidor primario
ssh usuario@192.168.20.11
cd /opt/jellyfin
# 2. Verificar NFS montado
df -h | grep media
# 3. Iniciar servicio
docker compose up -d
# 4. Actualizar DNS/tunnel para apuntar a Jellyfin-02
Escenario C: Restaurar desde backup PBS¶
# 1. Restaurar datos desde PBS
# En la interfaz de PBS:
# - Seleccionar datastore docker-services
# - Buscar backup de jellyfin
# - Restaurar a Jellyfin-01
# 2. O desde CLI
proxmox-backup-client restore \
--repository 192.168.10.20:docker-services \
host/jellyfin.pxar /opt/jellyfin/data/
# 3. Recrear contenedor
cd /opt/jellyfin
docker compose down
docker compose up -d
# 4. Reconstruir metadatos
# Jellyfin reconstruirá metadatos desde los archivos multimedia
3. Validación¶
- Jellyfin responde en jellyfin.gntech.dev
- Biblioteca multimedia visible
- Usuarios pueden hacer login
- Transcodificación funciona
- Clientes conectados sin errores
- Monitoreo reporta estado OK
Post-recuperación¶
- Registrar incidente en bitácora
- Verificar sincronización entre Jellyfin-01 y Jellyfin-02
- Ejecutar backup completo
- Revisar causa raíz