Waiting for the cluster to join..

   假如现在有3台机器信息如下:
   A 192.168.131.1 1111(Master)  1112(Slave)
   B 192.168.131.2 2221(Master)  2222(Slave)
   C 192.168.131.3 3331(Master)  3332(Slave)
  • 在3主3从的redis-cluster配置过程中,如果出现了,Waiting for the cluster to join… 这句话,并一直卡在这里,需要考虑以下原因:

    1)配置文件redis.conf 中的bind 设置,IP要是本机地址

  •     A-redis.conf :bind 192.168.131.1
    
  •     B-redis.conf :bind 192.168.131.2
    
  •     C-redis.conf :bind 192.168.131.3
    

    2)确保所有使用的端口之间互通,可用telnet ip port 测试**
    3)登录到每个客户端,执行 flushall、 cluster reset,重启实例之前你要删除以下文件:

 	 rm -rf nodes.conf          // cluster-config-file
	 rm -rf dump.rdb            // dbfilename
	 rm -rf appendonly.aof      // appendfilename

4)如果通讯端口为6379,那么集群总线端口16379一定要打开【重要】
5)使用cluster meet语法

  • 如果B给 A、C发送cluster meet信息(这里挺坑的):

    B上执行redis-cli -c -h 192.168.131.2 -p 2221
        cluster meet 192.168.131.1 1111
        cluster meet 192.168.131.1 1112
        cluster meet 192.168.131.3 3331
        cluster meet 192.168.131.3 3332
    

    如果执行完cluster meet之后,A与B处于handshanke,然后就断掉,导致cluster meet不成功

    尝试检查你机器上的这些端口是否已打开:


        A-port 打开:1111(通讯端口)、11111(总线端口)
                     1112(通讯端口)、11112(总线端口)
        B-port 打开:2221(通讯端口)、12221(总线端口)
                     2222(通讯端口)、12222(总线端口)
        C-port 打开:3331(通讯端口)、13331(总线端口)
                     3332(通讯端口)、13332(总线端口)

现在再去执行cluster meet操作便可以成功了

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值