初次搭建Redis5.0集群,碰到了一系列的问题!!

一:Redis集群Waiting for the cluster to join 一直等待的问题 

仔细看前面 Waiting for the cluster to join 上面一句
>>> Sending CLUSTER MEET messages to join the cluster(发送群集会议消息以加入群集)

多台服务器,需要跑到其他服务器上做 192.168.1.29, redis-cli -c -p 700*  分别进入redis各节点的客户端命令窗口, 依次输入 cluster meet 192.168.1.12 7000……

如果以上方式行不通,则进行下一步操作

我们使用./redis-cli check 192.168.1.12:7000 检查是否有哪些异常!

可能会出现:[ERR] Not all 16384 slots are covered by nodes.

原因:

         这个往往是由于主node移除了,但是并没有移除node上面的slot,从而导致了slot总数没有达到16384,其实也就是slots分布不正确。所以在删除节点的时候一定要注意删除的是否是Master主节点。

官方是推荐使用redis-cli —cluster fix 来修复集群…. ….  通过 Performing Cluster Check (using node 192.168.1.12:7001) 看到7001这个节点被干掉了… 那么

[root@ewq src]#  ./redis-cli —cluster fix 192.168.1.12:7001

等待修复完成!!修复完成后,一直等待也就不会再让你等待了!!

二:报错:Node .. is not empty.Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

       这是因为原集群的结点含有原集群的配置,如果使用这些结点搭建新的集群,需要将原来的配置删除(多个服务器都需要删除)。如下图所示,删除dump.rdb和nodes.conf两个文件

结果重新构建集群还是报上面的错误,于是我们需要将几个Redis数据库结点清空。

连接Redis数据库,执行命令

清除redis各节点数据:./redis-cli -c -h 192.168.199.92 -p 9001 ,用redis-cli登录到每个节点执行

flushallcluster reset

通过这些问题的出现以及一个个问题的寻找答案。最终,完成了Redis5.0版的集群搭建。

 

各位小伙伴,有什么不足的地方,欢迎底下留言,谢谢!

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薄伤一宰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值