美文网首页
redis cluster高可用测试

redis cluster高可用测试

作者: sknfie | 来源:发表于2020-08-06 11:00 被阅读0次

概述

从新搭建一套redis cluster环境,开始redis cluster功能测试。

redis-trib.rb create --replicas 1 192.168.201.33:7001 192.168.201.33:7002 192.168.201.34:7003 192.168.201.34:7004 192.168.201.35:7005 192.168.201.35:7006

高可用

redis-trib.rb check 192.168.201.33:7001

>>> Performing Cluster Check (using node 192.168.201.33:7001)
M: 1617e0e394b5c74be6a6b804980c2c857d352522 192.168.201.33:7001
   slots:0-5460 (5461 slots) master
   1 additional replica(s)
M: 0e52767dbadee66cf788494501fdd7f23c66b935 192.168.201.34:7003
   slots:5461-10922 (5462 slots) master
   1 additional replica(s)
S: 7142f5825e214522d12a3d01b50c79e620a00a2d 192.168.201.34:7004
   slots: (0 slots) slave
   replicates 1617e0e394b5c74be6a6b804980c2c857d352522
S: 46967bbb36422de8af09545dd670a07ccb0cef52 192.168.201.33:7002
   slots: (0 slots) slave
   replicates d70eae6f6ae651b8af3f07a3137716f7dfaf2d84
S: c8d5cccb9263263512cb26e3fc776173899a99cf 192.168.201.35:7006
   slots: (0 slots) slave
   replicates 0e52767dbadee66cf788494501fdd7f23c66b935
M: d70eae6f6ae651b8af3f07a3137716f7dfaf2d84 192.168.201.35:7005
   slots:10923-16383 (5461 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

由此可见,6个节点的主从关系如下:

master                                    slave
192.168.201.33:7001    192.168.201.34:7004
192.168.201.34:7003    192.168.201.35:7006
192.168.201.35:7005    192.168.201.33:7002

测试

  • 把master1,33:7001,杀掉,看看它对应的34:7004是否能自动切换成master
ps -ef|grep redis
root      8800     1  0 8月05 ?       00:01:26 /usr/local/bin/redis-server 192.168.201.33:7001 [cluster]
root      8998     1  0 8月05 ?       00:01:25 /usr/local/bin/redis-server 192.168.201.33:7002 [cluster]

kill -9 8800

rm  -f /var/run/redis_7001.pid

redis-trib.rb check 192.168.201.33:7001
[ERR] Sorry, can't connect to node 192.168.201.33:7001

主备切换完成:192.168.201.34:7004切换成master节点

redis-trib.rb check 192.168.201.33:7002
>>> Performing Cluster Check (using node 192.168.201.33:7002)
S: 46967bbb36422de8af09545dd670a07ccb0cef52 192.168.201.33:7002
   slots: (0 slots) slave
   replicates d70eae6f6ae651b8af3f07a3137716f7dfaf2d84
M: 7142f5825e214522d12a3d01b50c79e620a00a2d 192.168.201.34:7004
   slots:0-5460 (5461 slots) master
   0 additional replica(s)
M: d70eae6f6ae651b8af3f07a3137716f7dfaf2d84 192.168.201.35:7005
   slots:10923-16383 (5461 slots) master
   1 additional replica(s)
S: c8d5cccb9263263512cb26e3fc776173899a99cf 192.168.201.35:7006
   slots: (0 slots) slave
   replicates 0e52767dbadee66cf788494501fdd7f23c66b935
M: 0e52767dbadee66cf788494501fdd7f23c66b935 192.168.201.34:7003
   slots:5461-10922 (5462 slots) master
   1 additional replica(s)
  • 切换成master后的34:7004,是否可以直接读取数据
redis-cli -h 192.168.201.34 -p 7004
192.168.201.34:7004> get mykey1
"111"
  • 再试着把33:7001给重新启动,恢复过来,自动作为slave挂载到了34:7004上面去
info replication
# Replication
role:master
connected_slaves:1
slave0:ip=192.168.201.33,port=7001,state=online,offset=81159,lag=1
master_replid:6600fe68184059e92b5d83123101d970553eb9ca
master_replid2:7685d11ef13ecae5d512fa8452e3b1a4613fb56f
master_repl_offset:81159
second_repl_offset:80852
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:81159

相关文章

网友评论

      本文标题:redis cluster高可用测试

      本文链接:https://www.haomeiwen.com/subject/hgzarktx.html