¿Qué es la replicación redis master-slave?
Varios servidores trabajan juntos. Uno de los servidores es el servidor principal y se utiliza para operaciones de escritura. Otros servidores esclavos se utilizan para operaciones de lectura. La replicación maestro-esclavo es para garantizar
la coherencia de las bases de datos en estos servidores.
1. Un servicio de redis simula tres hosts:
1), copie tres archivos de configuración de redis y modifique la información de configuración correspondiente:
puerto 6379
pidfile /var/run/redis_6379.pid
logfile redis6379.log
dbfilename dump6379.rdb
2), inicie Tres servicios de redis:
redis-server redis6379.conf y
redis-server redis6380.conf y
redis-server redis6381.conf &
3), utilizando tres clientes para conectar tres servicios de
redis : redis-cli -p 6379 (6379 fue Lo configuramos como el servidor maestro)
redis-cli -p 6380
redis-cli -p 6381
4), vea la relación maestro-esclavo de los tres servicios de redis: la replicación de información
redis acaba de comenzar, todos son maestros y no hay conexión esclava.
2. Escribir datos en 6379:
establecer k1 v1
3. Establecer una relación maestro-esclavo entre los servicios de redis:
ejecutar en 6380: esclavo de 127.0.0.1 6379
ejecutar en 6381: esclavo de 127.0.0.1 6379
esclavo pondrá la biblioteca maestra en Todos los datos se copian-copia completa.
4. Escriba datos en 6379 : la biblioteca esclava
set k2 v2
copiará todos los datos nuevos en la biblioteca maestra --- copia incremental.
5. Escriba datos en 6380 y 6381:
configure k3 v3 ---- error, ya que estos dos servidores son servidores esclavos, solo pueden leer, no escribir
6. Host apagado:
cierre el servicio 6379 (simulado): redis -cli -p El apagado de 6379
se ejecuta en 6380 y 6381: el
esclavo de replicación de información se mantiene in situ.
7. Recuperación del host: redis-server redis6379.conf y
todo funciona
8. Esclavo apagado:
Apague el servicio 6380: redis-cli -p 6380 apagado El
host reduce un esclavo, otros esclavos permanecen sin cambios.
9. Recuperación de esclavos : redis-server redis6380.conf y
se convierte automáticamente en el maestro, necesita restablecer la relación maestro-esclavo.
slaveof 127.0.0.1 6379
10. Host esclavo:
1).
Tiempo de inactividad del host: ejecutar en 6379: redis-cli -p 6379 apagado El
esclavo se mantiene en su lugar.
2) Encuentra el esclavo superior: 6380
desconecta la relación maestro-esclavo original: esclavo de nadie
3), restablecer la relación maestro-esclavo:
ejecutar en 6381: esclavo de 127.0.0.1 6380
4), la recuperación del host original: redis-servidor redis6379.conf y
convertirse en un hombre solitario
5) 、 El cielo se convierte en infierno: convierte al maestro en esclavo esclavo
en 6379: esclavo de 127.0.0.1 6381
Un maestro está configurado con múltiples esclavos, y un esclavo está configurado con esclavos de varios estados, formando así una gran arquitectura de clúster.
11. Modo centinela: la versión automática del esclavo.
1), configure un maestro y dos esclavos, maestro escriba esclavo, lea, lea y escriba la separación
2), proporcione el archivo de configuración de monitoreo centinela: cree el archivo redis_sentinel.conf
edite el contenido: monitor centinela dc-redis 127.0.0.1 6379 1
3), inicie el servicio centinela :
Redis-sentinel redis_sentinel.conf
4), el host está inactivo:
ejecutar en 6379: el apagado redis-cli -p 6379
inicia automáticamente el mecanismo de votación centinela y selecciona automáticamente la posición superior del esclavo.
5), la recuperación del host original:
redis-server redis6379.conf y
se subordina automáticamente al nuevo host.