javaee论坛

普通会员

225648

帖子

334

回复

348

积分

楼主
发表于 2019-11-03 07:02:08 | 查看: 143 | 回复: 3

一:Redis集群Waitingfortheclustertojoin一直等待的问题 

仔细看前面 Waitingfortheclustertojoin上面一句>>>SendingCLUSTERMEETmessagestojointhecluster(发送群集会议消息以加入群集)

多台服务器,需要跑到其他服务器上做 192.168.1.29,redis-cli-c-p700* 分别进入redis各节点的客户端命令窗口,依次输入clustermeet192.168.1.127000……

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

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

可能会出现:[ERR]Notall16384slotsarecoveredbynodes.

原因:

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

官方是推荐使用redis-cli—clusterfix来修复集群….…. 通过PerformingClusterCheck(usingnode192.168.1.12:7001)看到7001这个节点被干掉了…那么

[root@ewqsrc]# ./redis-cli—clusterfix192.168.1.12:7001

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

二:报错:Node..isnotempty.Eitherthenodealreadyknowsothernodes(checkwithCLUSTERNODES)orcontainssomekeyindatabase0.

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

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

连接Redis数据库,执行命令

清除redis各节点数据:./redis-cli-c-h192.168.199.92-p9001,用redis-cli登录到每个节点执行

flushall和clusterreset。

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

 

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


普通会员

0

帖子

276

回复

285

积分
沙发
发表于 2019-12-15 09:11:34

如果这就是爱,再转身的时候就该留下

普通会员

0

帖子

278

回复

285

积分
板凳
发表于 2023-01-30 08:24:44

围观

普通会员

0

帖子

231

回复

233

积分
地板
发表于 2023-10-30 05:40:10

信春哥,得永生!

您需要登录后才可以回帖 登录 | 立即注册

触屏版| 电脑版

技术支持 历史网 V2.0 © 2016-2017