集群模式的简单介绍
redis集群模式同样也具有高可用特性,相对于哨兵模式,集群模式的吞吐量更大。集群模式通过将数据分片,不同的key做CRC16运算后存放不同的槽,在有新的节点加入集群时,只需要将其他节点的部分哈希槽移动到这个新的节点即可。
集群模式有多个主节点,每个几点可以有多个从节点。主节点与从节点直接进行主从复制。当某个主节点下线时,从节点将会升级为对应的主节点。
在下面两种情况下,整个集群将处于不可用状态:
- 某个主节点下线,而且这个主节点没有可用的从节点(从节点不存在或者从节点也下线了)
- 超过半数以上的主节点下线,且无论主节点是否具有可用的从节点
redis集群模式部署与配置
机器清单
节点 | 主机名 | ip | 主节点端口 | 从节点端口 |
节点1 | node1 | 192.168.70.129 | 6380 | 6381 |
节点2 | node2 | 192.168.70.133 | 6380 | 6381 |
节点3 | node3 | 192.168.70.135 | 6380 | 6381 |
如清单所示,我们使用了3台机器来运行整个集群,每个节点上分别运行一个主节点和一个从节点。但是最好是用6台机器,因为3台机器情况下如果某台机器挂了,那么将会导致整个集群不可用。因为资源有限,这里就用3台机器来搭建redis集群。
在节点1上,复制两份redis.conf
修改redis-6380.conf,将port修改为6380,cluster-enabled修改为yes,cluster-config-file修改为nodes-6380.conf。然后对redis-6381.conf做类似的修改。并在其他两台机器上重复这个操作。
接下来构建集群,首先在3台机器上分别启动主节点和从节点,然后开始构建集群
提示我们节点192.168.70.129数据库内容不为空,那么就先把192.168.70.129数据库的内容删除,然后再执行构建集群的命令
集群搭建成功,连上任意一个几点,查看集群信息