Loading... redis3主3从集群一般对于中小互联网企业是够用的了,也保留了扩展6主6从的空间。之前办公测试环境中有一套redis3主3从集群,为了扩展也测试了6主6从,而后将测试云主机删掉了。但是,在cluster nodes信息中留下了6个fail信息。看着挺别扭的。 ![2023-11-22T08:41:21.png][1] 搜索资料可以如下方式删除: ``` ../../src/redis-trib.rb del-node 192.168.124.102:7010 0f38ec60781919ed7c15c386a711e72a3f43bd81 ``` 但是,需要该节点在线才行,否则会得到报错,大概内容是无法连接该节点。 使用gpt询问,还有一种办法。使用redis-cli登录任一redis节点,然后执行cluster forget fail节点id。但是呢,如果只在1个redis节点执行是不行的,需要在所有节点执行。 一共6个节点,每个节点执行6个命令,妥妥的两个循环。 ``` #!/bin/env python3 nodes=["192.168.124.200:7000", "192.168.124.200:7001","192.168.124.179:7002","192.168.124.179:7003","192.168.124.180:7004","192.168.124.180:7005"] commands=[] commands.append("cluster forget 0f38ec60781919ed7c15c386a711e72a3f43bd81") commands.append("cluster forget d9798113e286484abc1b32d6dbae218bc60ee4f4") commands.append("cluster forget 986f2fc487b0449a9f62cfea7c333cec858d6e23") commands.append("cluster forget 87b6515fe84944ffa10dfe9c1abb3daa21bfdf6b") commands.append("cluster forget 034f7dcd918e5eb1596aca04fec740f628ad6408") commands.append("cluster forget a0fe17bcf0cb2af63fca33d2456edcbb78bb6579") for node in nodes: # print(node) for command in commands: # print(command) node_split = node.split(":") result = f"/opt/machtalk/redis/src/redis-cli -h {node_split[0]} -p {node_split[1]} -a xxx {command}" print(result) # 如需检查,使用如下命令 #print(f"/opt/machtalk/redis/src/redis-cli -h {node_split[0]} -p {node_split[1]} -a xxx cluster nodes") break print("\n") ``` 执行成功后,过一段时间看看,然后再看看,发现fail的节点已经彻底消失了。 ![2023-11-22T08:46:08.png][2] [1]: https://www.sddts.cn/usr/uploads/2023/11/2663330132.png [2]: https://www.sddts.cn/usr/uploads/2023/11/1122356292.png 最后修改:2024 年 05 月 11 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏