1.环境介绍
软件信息 | 版本 |
操作系统 | Linux release 7.8.2003 |
redis cluster(3分片) | 4.0.12 |
ruby版本 | ruby 2.3.4p301 |
gem | 3.0.8 |
2. redis cluster集群信息以及扩容步骤
2.1 redis cluster集群信息
90cd13ebe59f0b60315604da024a73b1d5e6bf59 192.168.248.203:6002@16002 master - 0 1631993159000 3 connected 10923-16383
54c264f8925a0516a1db5354c914a57796f6a776 192.168.248.203:6000@16000 myself,master - 0 1631993155000 1 connected 0-5460
dbd2721f1d7d74966d723269366d5dc9f0dc3026 192.168.248.203:6005@16005 slave 54c264f8925a0516a1db5354c914a57796f6a776 0 1631993159783 6 connected
8bf604a68311aa62b76e5fd9f9cb533a13f572d8 192.168.248.203:6001@16001 master - 0 1631993158000 2 connected 5461-10922
ab2fad8b826f6662c5acc2b9aef207526b3dc7f3 192.168.248.203:6004@16004 slave 90cd13ebe59f0b60315604da024a73b1d5e6bf59 0 1631993157000 5 connected
93426ea4d6c6e42bb43c1db5c36b23a7bba1fbce 192.168.248.203:6003@16003 slave 8bf604a68311aa62b76e5fd9f9cb533a13f572d8 0 1631993158000 4 connected
192.168.248.203:6000 master
192.168.248.203:6001 master
192.168.248.203:6002 master
192.168.248.203:6003 slave
192.168.248.203:6004 slave
192.168.248.203:6005 slave
新扩容节点信息
192.168.248.203:6006 new master
192.168.248.203:6007 new slave
2.2 增加一个节点
ruby ./redis-trib.rb add-node --password xxx 192.168.248.203:6006 192.168.248.203:6000
备注:
192.168.248.203:6006 ——新节点信息
192.168.248.203:6000 ——已存在的节点信息
2.3 获取新加入集群的master_id
[root@redis_zxb1 ~]# redis-cli -h 192.168.248.203 -p 6000 -a xxxx -c cluster nodes|grep master|sort -k2
Warning: Using a password with '-a' option on the command line interface may not be safe.
54c264f8925a0516a1db5354c914a57796f6a776 192.168.248.203:6000@16000 myself,master - 0 1631993709000 1 connected 0-5460
8bf604a68311aa62b76e5fd9f9cb533a13f572d8 192.168.248.203:6001@16001 master - 0 1631993713474 2 connected 5461-10922
90cd13ebe59f0b60315604da024a73b1d5e6bf59 192.168.248.203:6002@16002 master - 0 1631993712000 3 connected 10923-16383
e26f5016779a035c080bf71d554d74aeb5443869 192.168.248.203:6006@16006 master - 0 1631993711000 0 connected
2.4 为新节点迁移两个slots
[root@redis_zxb1 ~]# ruby ./redis-trib.rb reshard --password xxxx --from all --to e26f5016779a035c080bf71d554d74aeb5443869 --slots 2 --yes --pipeline 100000 192.168.248.203:6000
>>> Performing Cluster Check (using node 192.168.248.203:6000)
M: 54c264f8925a0516a1db5354c914a57796f6a776 192.168.248.203:6000
slots:0-5460 (5461 slots) master
1 additional replica(s)
M: 90cd13ebe59f0b60315604da024a73b1d5e6bf59 192.168.248.203:6002
slots:10923-16383 (5461 slots) master
1 additional replica(s)
S: dbd2721f1d7d74966d723269366d5dc9f0dc3026 192.168.248.203:6005
slots: (0 slots) slave
replicates 54c264f8925a0516a1db5354c914a57796f6a776
M: 8bf604a68311aa62b76e5fd9f9cb533a13f572d8 192.168.248.203:6001
slots:5461-10922 (5462 slots) master
1 additional replica(s)
M: e26f5016779a035c080bf71d554d74aeb5443869 192.168.248.203:6006
slots: (0 slots) master
0 additional replica(s)
S: ab2fad8b826f6662c5acc2b9aef207526b3dc7f3 192.168.248.203:6004
slots: (0 slots) s