2016-10-26 6 views
0

J'essaie de comprendre comment résoudre ma réplication redis maître/esclave. Il a "juste arrêté" de travailler.Redis réplication de l'esclave maître a cessé de fonctionner

Informations d'installation

Disons que mon adresse IP maître est 10.1.2.3

Voici ce que j'ai vérifié à ce jour:

  1. J'ai remis en marche Redis sur à la fois le maître et l'esclave ... mais chaque fois que je lance INFO REPLICATION sur l'esclave, il montre le lien comme "vers le bas"

  2. Ran netstat -lnp à la fois sur le maître et l'esclave. Voici la sortie du maître:

masterdb:~# netstat -lnp | grep 6379 
tcp  0  0 127.0.0.1:6379   0.0.0.0:*    LISTEN  21611/redis-server 
tcp  0  0 10.1.2.3:6379  0.0.0.0:*    LISTEN  21611/redis-server 

Et de la machine esclave:

slavedb:~# netstat -lnp | grep 6379 
tcp  0  0 0.0.0.0:6379   0.0.0.0:*    LISTEN  5577/redis-server 
tcp  0  0 :::6379     :::*     LISTEN  5577/redis-server 
slavedb:~# 
  1. J'ai vérifié les journaux sur le maître et l'esclave et je ne vois aucun message d'erreur. Mais je vois des messages de temporisation sur l'esclave ... que je pense avoir déjà vu, même lorsque la réplication fonctionnait. Le journal ressemble à ceci sur l'esclave:
5577:S 26 Oct 13:17:19.510 * MASTER <-> SLAVE sync started 
5577:S 26 Oct 13:18:20.597 # Timeout connecting to the MASTER... 
5577:S 26 Oct 13:18:20.597 * Connecting to MASTER 10.1.2.3:6379 
5577:S 26 Oct 13:18:20.597 * MASTER <-> SLAVE sync started 
5577:S 26 Oct 13:19:21.685 # Timeout connecting to the MASTER... 
  1. Quand je commence la Redis-cli sur l'esclave et réémettre la commande slaveof, je reçois ce message:

    127.0.0.1:6379> slaveof 10.1.2.3 6379 OK Déjà connecté à maître spécifié 127.0.0.1:6379>

  2. J'ai aussi essayé les commandes suivantes sur le maître:

127.0.0.1:6379> save 
OK 
127.0.0.1:6379> bgsave 
Background saving started 
127.0.0.1:6379> 

Mais cela ne réglait rien sur l'esclave. Il dit encore le lien est vers le bas quand je vérifie les informations sur REPLCIATION:

127.0.0.1:6379> info replication 
    # Replication 
    role:slave 
    master_host:10.1.2.3 
    master_port:6379 
    master_link_status:down 
    master_last_io_seconds_ago:-1 
    master_sync_in_progress:0 
    slave_repl_offset:1 
    master_link_down_since_seconds:1477488462 
    slave_priority:100 
    slave_read_only:1 
    connected_slaves:0 
    master_repl_offset:0 
    repl_backlog_active:0 
    repl_backlog_size:1048576 
    repl_backlog_first_byte_offset:0 
    repl_backlog_histlen:0 
    127.0.0.1:6379> 

Je ne sais pas quoi d'autre pour vérifier.

+0

J'ai redémarré l'esclave et il est "revenu". Je ne sais pas pourquoi ... – Happydevdays

Répondre

0

ressemble à un problème de réseau. Essayez de telnet masterip 6379 à partir de l'esclave la prochaine fois qu'il se produit pour vous assurer qu'il s'agit d'un problème réseau.