该方案经过测试,无法实现真正的高可用,当172.31.4.18宕机后,4.19上的实例需要人工干预切换为主,才可继续对外服务
测试数据
通过redis-benchmark生成测试数据
./bin/redis-benchmark -h 172.31.4.18 -p 6381 -a Redis_6.2.1_Sc --cluster -t set -d 128 -n 10000000 -r 100000000 -c 200
新加节点
172.31.4.18:6381> AUTH Redis_6.2.1_Sc
OK
172.31.4.18:6381> cluster meet 172.31.4.19 6382
172.31.4.18:6381> cluster meet 172.31.4.19 6384
172.31.4.18:6381> cluster meet 172.31.4.19 6386
如发生问题执行如下操作回退,后面新加副本也可以使用相同命令
172.31.4.18:6381> cluster nodes
172.31.4.18:6381> cluster forget 9afa9a0f3392cc3b588d59747184ac94ef5806ea
分片1新加副本
500MB数据,耗时30s以内
172.31.4.19:6382> AUTH Redis_6.2.1_Sc
OK
172.31.4.19:6382> cluster nodes
1d287ec8daa829cb19e50a16c45ba315a77bcbd8 172.31.4.19:6384@16384 master - 0 1720765311000 4 connected
9afa9a0f3392cc3b588d59747184