La replicación de PostgreSQL es una característica esencial para garantizar la alta disponibilidad y la recuperación ante desastres de tus bases de datos. Permite mantener una copia sincronizada de tu base de datos principal en uno o más servidores secundarios. En este tutorial, te guiaremos a través de los pasos para configurar la replicación de PostgreSQL en tu servidor VPS con Debian 11.
Requisitos previos
- Al menos dos servidores VPS con Debian 11.
- Acceso SSH a ambos servidores con privilegios de root o sudo.
- PostgreSQL instalado en ambos servidores.
- Conexión de red entre los servidores.
Pasos
-
Configurar el servidor principal (maestro)
-
Editar el archivo postgresql.conf
Accede al servidor principal y edita el archivo de configuración principal de PostgreSQL:
sudo nano /etc/postgresql/13/main/postgresql.conf
Realiza los siguientes cambios:
- Descomenta la línea `listen_addresses = ‘*’` y asegúrate de que su valor sea `’*’` (o la dirección IP específica si lo deseas).
- Descomenta la línea `wal_level = replica`.
- Descomenta la línea `max_wal_senders = 10` y ajusta el valor según el número de réplicas que planeas tener.
- Descomenta la línea `max_replication_slots = 10` y ajusta el valor según el número de réplicas que planeas tener.
- (Opcional) Si deseas replicación síncrona, descomenta `synchronous_commit = on` y añade el nombre de tu réplica en `synchronous_standby_names`.
Guarda los cambios y cierra el editor.
-
Editar el archivo pg_hba.conf
Edita el archivo de configuración de autenticación de PostgreSQL:
sudo nano /etc/postgresql/13/main/pg_hba.conf
Añade la siguiente línea al final del archivo, reemplazando `ip_de_la_réplica` con la dirección IP del servidor secundario y `replicator` con el nombre de usuario que usarás para la replicación:
host replication replicator ip_de_la_réplica/32 md5
Guarda los cambios y cierra el editor.
-
Crear el usuario de replicación
Accede a la consola de PostgreSQL como usuario postgres:
sudo -u postgres psql
Crea el usuario de replicación:
CREATE USER replicator WITH REPLICATION LOGIN ENCRYPTED PASSWORD 'tu_contraseña_segura';
Reemplaza `tu_contraseña_segura` con una contraseña fuerte.
Sal de la consola de PostgreSQL:
\q
-
Reiniciar PostgreSQL
sudo systemctl restart postgresql
-
-
Configurar el servidor secundario (réplica)
-
Realizar una copia base de la base de datos
En el servidor secundario, detén el servicio de PostgreSQL:
sudo systemctl stop postgresql
Realiza una copia base de la base de datos del servidor principal. Puedes usar `pg_basebackup` o herramientas como `rsync`.
**Ejemplo con pg_basebackup:**
pg_basebackup -h ip_del_servidor_principal -D /var/lib/postgresql/13/main -U replicator -v -P -X stream
Reemplaza `ip_del_servidor_principal` con la dirección IP del servidor principal.
**Ejemplo con rsync:**
sudo -u postgres rsync -av --delete 'ip_del_servidor_principal:/var/lib/postgresql/13/main/' /var/lib/postgresql/13/main/
-
Crear el archivo recovery.conf
Crea el archivo `recovery.conf` en el directorio de datos de PostgreSQL en el servidor secundario:
sudo nano /var/lib/postgresql/13/main/recovery.conf
Añade las siguientes líneas:
standby_mode = 'on' primary_conninfo = 'host=ip_del_servidor_principal port=5432 user=replicator password=tu_contraseña_segura' trigger_file = '/tmp/postgresql.trigger'
Reemplaza `ip_del_servidor_principal` y `tu_contraseña_segura` con los valores correspondientes.
Guarda los cambios y cierra el editor.
-
Iniciar PostgreSQL en el servidor secundario
sudo systemctl start postgresql
-
-
Verificar la replicación
En el servidor principal, accede a la consola de PostgreSQL y ejecuta:
sudo -u postgres psql SELECT * FROM pg_stat_replication;
Deberías ver información sobre la conexión de replicación establecida con el servidor secundario.
Conclusión
¡Listo! Has configurado la replicación de PostgreSQL en Debian 11. Ahora tienes un servidor secundario que se mantiene sincronizado con el principal, lo que mejora la disponibilidad y la capacidad de recuperación de tus datos.
RDS CAL (Client Access License)
Keywords: windows vps uk, windows vps, uk windows vps, windows vps hosting uk, vps windows server, uk vps windows, vps windows, servidor vps windows, vps uk windows, vps with windows, virtual private server windows, windows virtual private server, windows vps server uk, vps for windows, servidores vps windows, vps windows uk, windows vps hosting, vps windows hosting, windows vps server, windows virtual private servers, vps on windows, vps windows servers, cheap windows vps uk, windowsvps, windows desktop vps, buy vps windows, windows server vps, windows 10 vps uk, rds services, rds cal, remote desktop services, remote desktop hosting
#windowsvps #vpshosting #ukvps #virtualserver #windowsvpsuk #vpsserver #hostingvps #cloudvps #windowsvpshosting #cheapvps #vpswithwindows #windowsserver #servervps #vpssolutions #vpswindows #rdscal #remotedesktop #remotedesktopvps #rds #windowsrds