En esta página, se muestra cómo restablecer un clúster de AlloyDB Omni con una copia de seguridad creada con Barman, un servidor de copia de seguridad de bases de datos de código abierto.
Debido a que AlloyDB Omni es compatible con PostgreSQL, los comandos y las técnicas de restablecimiento de datos que se describen en el manual de Barman también se aplican a AlloyDB Omni. En esta página, se muestra una selección de tareas de recuperación comunes, con ejemplos de comandos relevantes.
Para obtener más información sobre cómo configurar Barman para que funcione con AlloyDB Omni, consulta Configura Barman para AlloyDB Omni.
Antes de comenzar
Antes de restablecer tus datos de AlloyDB Omni, necesitas lo siguiente:
Un servidor de base de datos de destino que ejecute la misma versión principal de AlloyDB Omni que el servidor de base de datos de origen Para obtener más información sobre cómo instalar AlloyDB Omni, consulta Cómo instalar AlloyDB Omni.
El servidor de destino puede ser la misma máquina que el servidor de origen.
La utilidad
rsync
, instalada en el servidor de destinoUn servidor de copia de seguridad de Barman, con al menos una copia de seguridad válida de Barman de la base de datos de AlloyDB Omni de origen.
Conectividad de SSH entre el servidor de copia de seguridad de Barman y el servidor de destino
Claves SSH configuradas para permitir que el usuario
barman
del servidor Barman se autentique con el servidor de destino como su usuariopostgres
sin una contraseña.Suficiente espacio en disco libre en el servidor de destino para contener la base de datos restablecida
Cómo recuperar con una copia de seguridad específica
En el servidor de destino, detén AlloyDB Omni.
Docker
docker stop CONTAINER_NAME
Reemplaza
CONTAINER_NAME
por el nombre que le asignaste al contenedor de AlloyDB Omni cuando lo instalaste, por ejemplo,my-omni
.Podman
podman stop CONTAINER_NAME
Reemplaza
CONTAINER_NAME
por el nombre que le asignaste al contenedor de AlloyDB Omni cuando lo instalaste, por ejemplo,my-omni
.En el servidor de Barman, elige una copia de seguridad desde la que deseas restablecer. Para ver las copias de seguridad disponibles, ejecuta el comando
barman list-backups
. Para ver los detalles de una copia de seguridad en particular, ejecuta el comandobarman show-backup
.Para recuperar la copia de seguridad elegida en el servidor de destino de AlloyDB Omni, ejecuta el comando
barman recover
.Cuando ejecutes el comando, incluye lo siguiente:
- Usa la opción de recuperación remota.
- Especifica el directorio de datos del servidor de destino como el directorio de destino.
En el siguiente comando, se muestra un ejemplo de uso de
barman recover
con AlloyDB Omni:barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID DATA_PATH
Reemplaza lo siguiente:
TARGET_IP
: Es la dirección IP del servidor de destino.TARGET_LABEL
: Es la etiqueta que asignaste al servidor en el archivo de configuración de Barman.BACKUP_ID
: Es el ID de la copia de seguridad desde la que se restablecerá, identificado en un paso anterior, por ejemplo,20230810T210200
.DATA_PATH
: Es la ruta de acceso al subdirectoriodata
del directorio de datos del servidor de destino, por ejemplo,/home/your-username/alloydb-data/data
.
En el servidor de base de datos de destino de AlloyDB Omni, inicia el servicio:
Docker
docker start CONTAINER_NAME
Podman
podman start CONTAINER_NAME
Después de que se reinicie el servicio, conéctate a tu servidor de AlloyDB Omni. Deberías ver tus bases de datos y datos restablecidos.
Recupera a un momento específico
Para realizar una recuperación de un momento determinado, sigue los mismos pasos que se indican en la sección anterior, con una modificación. Cuando ejecutes el comando barman recover
, también debes especificar una de las opciones de recuperación de punto en el tiempo de Barman.
En el siguiente comando, se muestra un ejemplo de uso de barman recover
con AlloyDB Omni con una opción de recuperación de un punto en el tiempo:
barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID --target-time="RESTORE_TIMESTAMP" DATA_PATH
Reemplaza lo siguiente:
TARGET_IP
: Es la dirección IP del servidor de destino.TARGET_LABEL
: Es la etiqueta que asignaste al servidor en el archivo de configuración de Barman.BACKUP_ID
: Es el ID de la copia de seguridad desde la que se restablecerá, identificado en un paso anterior, por ejemplo,20230810T210200
.TARGET_TIMESTAMP
: Es la hora a la que se debe restablecer, en cualquier formatotimestamp
de PostgreSQL que especifique una fecha y una hora, por ejemplo,2024-02-06 00:00:00
.DATA_PATH
: Es la ruta de acceso al subdirectoriodata
del directorio de datos del servidor de destino, por ejemplo,/home/your-username/alloydb-data/data
.