选择一个master进入客户端,使用set 命令
那进入另一个master,使用set命令
但是当我用一个master的从节点去get它设置的量是,却get不到
原因是没有用集群模式启动,少了个 -c
现在就能get到了
接下来测试主机之间是否可以互相读
[root@localhost 7001]# ./redis-cli -c -h 192.168.150.134 -p 7001
192.168.150.134:7001> get vvt
-> Redirected to slot [13892] located at 192.168.150.135:7002
"2"
192.168.150.135:7002> get name
-> Redirected to slot [5798] located at 192.168.150.134:7001
"1"
192.168.150.134:7001>
结果显示是可以的,那么从属于不同主机下的从机也应该可以读到不同主机set的内容
[root@localhost 7001]# ./redis-cli -c -h 192.168.150.134 -p 7002
192.168.150.134:7002> get name
-> Redirected to slot [5798] located at 192.168.150.134:7001
"1"
192.168.150.134:7001> get vvt
-> Redirected to slot [13892] located at 192.168.150.135:7002
"2"
结果验证了我的猜想
现在测试宕掉一个主机
结果显示:宕掉一个主机后,会在从机中选择一个成为新的主机,但是这个从机不是被宕掉的主机的从机
再宕掉一个master
还是有四个主机
再宕一个,变成3个主机,3个从机
再宕一个,变成2个主机,3个从机
再宕一个,变成1个主机,3个从机
再宕一个,变成3个从机
此时,从机读不到内容了
192.168.150.134:7002> set name
(error) ERR wrong number of arguments for 'set' command
192.168.150.134:7002> get vvt
(error) CLUSTERDOWN The cluster is down
192.168.150.134:7002> get name
(error) CLUSTERDOWN The cluster is down
192.168.150.134:7002>