Redis集群节点分片重哈希
#分片重哈希,可以连接任意节点
./redis-trib.rb reshard 192.168.200.129:7001
#提示需要移动多少hash槽,直接输入数量
#提示接受的节点id是多少,填写对应的节点id
#提示移出hash槽的节点id,all表示所有节点都移除插槽,也可单独节点
#最后我们确定是否这样进行重哈希,填写yes
移除节点
#第一个参数连接任意节点,第二个参数是想要移除的节点id
./redis-trib.rb del-node (节点IP地址) 移除节点id
注意:移除主节点前,需要确定这个节点是空的,如果不是空的,需要将这个节点的数据重新 分片到其他主节点上
替代移除主节点的方法是手动执行故障恢复,被移除的主节点会作为一个从节点存在,不过这种情况下不会减少集群节点的数 量,也需要重新分片数据
添加节点
添加节点前需要保证新的节点是一个干净的,空的redis。主要删除持久化和节点配置:
-rm -rf appendonly.aof
-rm -rf dump.rdb
-rm -rf nodes.conf
添加新的主节点
./redis-trib.rb add-node <从节点ip> <任意节点ip>
注:添加新节点默认是没有哈希槽的,需要手动分配哈希槽《分片重哈希》
添加新的从节点
./redis-trib.rb add-node --slave <从节点ip> <主节点ip>
注:添加新的从节点,集群默认自动分配对应的主节点