DBAtlas · Atlas de operaciones de bases de datos

Backup y restauración de Redis (RDB, AOF, réplica y cluster)

RedisNivel: IntermedioDuración: 30–60 min

Configura la rutina de backup de un Redis o Valkey ya instalado (instancia única, master/réplica con Sentinel o Redis Cluster) y explica cómo restaurar desde el backup. Paso a paso: backups RDB (regla save, BGSAVE, LASTSAVE, copia de dump.rdb) y AOF (BGREWRITEAOF, appendonlydir multiarchivo de 7.x), backup desde una réplica, backup de todos los masters en un Cluster, restauración de prueba en una instancia temporal, restauración in situ sin caer en la trampa de la precedencia del AOF, y backup programado con retención y copia remota mediante systemd timer / cron; el resultado es un backup que se ejecuta con regularidad y cuya restauración se ha comprobado. La replicación (Sentinel, Cluster) no sustituye al backup: los datos borrados por error se propagan a todas las réplicas. La instalación y la operación diaria están en guías de Redis aparte.

Topología: Instancia única, réplica o servidor Redis Cluster (Redis 7.2 / 8.x, Valkey)

Antes de empezar

  • … está en funcionamiento y en el archivo de configuración … está definido requirepass (la contraseña se lee de este archivo). La instalación debe haberse hecho con las rutas de la guía DBAtlas …Redis Cluster…Redis Sentinel…; si son distintas, adapte las rutas.
  • … está en un disco distinto del disco de datos o en un recurso de red; el espacio libre es como mínimo el tamaño de los datos en memoria (used_memory) multiplicado por el periodo de retención. Además, el directorio de datos necesita espacio libre suficiente para que BGSAVE escriba el nuevo RDB.
  • BGSAVE/BGREWRITEAOF funcionan con un fork: según el ritmo de escritura, hace falta memoria adicional (copy-on-write). Debe estar configurado vm.overcommit_memory = 1; de lo contrario el fork falla con "Can't save in background: fork: Cannot allocate memory".
  • Los comandos usados en el backup (CONFIG, BGSAVE, LASTSAVE, BGREWRITEAOF…, CLUSTER, SYNC…) no están desactivados con rename-command y el usuario propietario de la contraseña (default) puede ejecutarlos.
  • Dispone de permisos de root o sudo. Si se va a hacer una restauración in situ, se ha acordado una ventana de mantenimiento y se ha informado al equipo de aplicación.

Fases de la guía

  • Configuración de persistencia actual — Revisar la información de persistencia y de rol · Configurar la regla save de RDB · Activar AOF en caliente · Preparar el directorio de backup
  • Backup RDB — Verificar que la réplica está al día · Obtener un RDB actual con BGSAVE · Copiar dump.rdb al directorio de backup y verificarlo · Listar los masters del Cluster · Obtener un RDB de cada master (--rdb)
  • Backup del AOF — Compactar el AOF (BGREWRITEAOF) · Hacer backup de appendonlydir · Verificar los archivos AOF
  • Restauración de prueba (instancia temporal) — Abrir el RDB en una instancia temporal · Comparar con el origen y parar la instancia temporal · Abrir el backup AOF en una instancia temporal
  • Restauración in situ — Parar el servicio y apartar los archivos actuales · Colocar el backup RDB · Desactivar AOF temporalmente · Colocar el backup AOF · Iniciar el servicio y verificar los datos · Volver a activar AOF en caliente …
  • Backup programado y retención — Escribir el script de backup · Hacer ejecutable el script · Preparar el acceso SSH al servidor remoto · Crear el service y el timer de systemd · Lanzar manualmente el backup programado y verificarlo · Escribir la tarea cron …
  • Monitorización — Monitorizar la persistencia y la antigüedad del backup · Simulacro periódico de restauración
Abrir el plan paso a paso para su entorno →