Redis 集群的键空间被分割为16383个槽,集群的最大节点数也是16484个。本篇文章主要来看一下redis集群选取情况。
一、节点信息了解
为了下面看节点主从选择的信息,我们先来了解一下每个节点常用信息。
从上面列出的三行信息中,从左到右的各个域分别是:节点ID,Ip地址和端口号,标志(是从节点还是主节点),最后发送PING的时间,最后接收PONG的时间,连接状态(connected还是unConnected),节点负责处理的槽。
二.集群的主从选择
目前集群中搭建了6个节点,三主三从,主节点为6379、6380、6381,从节点是6381、6382、6384.
(1)启动集群,查看6个节点的服务状态,全部为启动。
(2)查看集群各个节点的主从状态
三主三从,现在6379是其中一个主节点,其从节点是6382,以这两个端口为例,演示一下主从选举过程。
(3)现在在6379中添加三个值,分别为“school” "grage" "age"
(4)现在模拟将6379节点挂掉,按照redis集群原理,会将6379节点的从节点选举为6382为主节点。
(5)现在查看集群运行状况
可以看到6379节点挂掉之后,6379节点连接不上,现在6382节点变成了主节点。
(6) 并且可以从6382节点中得到和6379节点相同的数据内容。
(7)现在我们将6379节点重启,查看6379是否会自动加入集群,此时在集群中充当的是M节点还是S节点。
查看进程,6379端口启动成功。
(8)6379节点变为了6382节点的从节点
三、参考
四、总结
测试结果显示,如果主节点(6379)宕掉之后,从节点(6382)会自动成为主节点;如果原来的主节点(6379)再次复活,那么这个主节点(6379)就会变为目前的主节点(6382)的从节点。ps:目前是在一台机子上测试,还需要在多台机子上测试各种情况。