Saltar a contenido

Copia de seguridad y restauración

Las bases PostgreSQL —ya sea la plantilla PostgreSQL independiente o el PostgreSQL integrado en Digdash BI— pueden respaldarse de forma continua en un almacenamiento S3, y luego restaurarse en una nueva aplicación.

Activar las copias de seguridad

En el formulario de despliegue (sección Copia de seguridad), o más adelante desde Configurar → Ajustes avanzados:

  1. Activar copias de seguridad programadas: activa a la vez el archivado continuo de los registros (WAL) y la copia de seguridad base programada — ambas son necesarias para poder restaurar.
  2. Política de retención: duración de conservación, por ejemplo 7d, 4w.
  3. Ruta S3 (destinationPath): el bucket de destino. Elija Bucket existente para seleccionar un bucket de la plataforma — la ruta s3://… y el endpoint se completan automáticamente.
  4. Access Key / Secret Key: las credenciales del bucket (proporcionadas por la página Buckets).

Copia de seguridad inmediata

La planificación predeterminada es diaria. Para generar una primera copia de seguridad sin esperar, hay disponible una opción de copia de seguridad inmediata en los ajustes de copia de seguridad.

Restaurar

La restauración crea una nueva aplicación cuya base arranca desde la copia de seguridad — la aplicación original no se modifica.

  1. Nueva app → la misma plantilla que la de origen (PostgreSQL o Digdash BI).
  2. En la sección Restauración:
    • active la restauración;
    • Nombre de la app de origen: el nombre exacto de la aplicación cuya copia de seguridad se escribió (tal como aparece en su tarjeta);
    • Ruta S3 de la copia de seguridad a restaurar: el mismo bucket que el de la copia de seguridad;
    • las credenciales S3 del bucket.
  3. Despliegue: la nueva aplicación arranca reproduciendo la copia de seguridad y luego pasa a Running.

Warning

Si el origen S3 está vacío, es inaccesible o está corrupto, la nueva aplicación no arrancará (reinicios en bucle). Compruebe el contenido del bucket desde la página Buckets antes de iniciar la restauración.

Restaurar a una fecha precisa

Por defecto, la restauración reproduce la copia de seguridad hasta el punto más reciente disponible (el final del flujo de registros WAL). También es posible restaurar la base tal como estaba exactamente en un instante concreto del pasado — útil, por ejemplo, para deshacer los efectos de una eliminación o de una migración fallida ocurrida después de la última copia de seguridad válida.

Ejemplo: copias de seguridad diarias, restauración al estado de ayer a las 23:59

Una aplicación de origen tiene las copias de seguridad programadas activadas con una planificación diaria (0 0 0 * * *, es decir, medianoche cada día) y una retención de 7 días. Hoy se detecta un error y se desea recuperar la base tal como estaba ayer a las 23:59, justo antes de la copia de seguridad de medianoche:

  1. Nueva app → la misma plantilla que la de origen.
  2. Sección Restauración: actívela, complete el Nombre de la app de origen y la Ruta S3 de la copia de seguridad a restaurar como en una restauración normal.
  3. Restaurar a una fecha precisa (opcional): introduzca 2024-06-24 23:59:00+02 (ajuste la fecha y la zona horaria).
  4. Despliegue: CNPG restaura la copia de seguridad y luego reproduce los registros WAL archivados hasta el instante indicado, sin ir más allá.

Tip

La zona horaria forma parte del valor (+02, +00…) — sin ella, la hora se interpreta en la zona horaria del propio servidor PostgreSQL. La continuidad de los registros WAL entre la copia de seguridad y el instante objetivo debe estar intacta: una retención demasiado corta o una copia de seguridad faltante entre ambos impide que la restauración alcance la fecha solicitada.

Instantáneas de volúmenes

Independientemente de las copias de seguridad S3, cualquier volumen persistente puede ser objeto de instantáneas puntuales y clones — véase Volúmenes.