Redis集群(cluster模式)搭建(三主三从)
上一篇搭建了一主二从,并加入了哨兵,任何一个节点挂掉都不影响正常使用,实现了高可用。仍然存在一个问题,一主二从每个节点都存储着全部数据,随着业务庞大,数据量会超过节点容量,即便是redis可以配置清理策略,但也有极限,于是需要搭建redis集群,将数据分别存储到不同的redis上,并且可以横向扩展。
本节搭建三主三从,即三组一主一从。组内是主从关系,可以实现高可用;组间是集群关系,实现分工存储。
开始搭建(2、3步所有redis节点都要做)
1、准备6台redis,都配置上 masterauth <master-password> (不清楚的可参考我的另一篇博客《Redis主从、哨兵》)
2、修改核心配置 vim /usr/local/redis/redis.conf
# 开启集群模式 cluster-enabled yes # 每一个节点需要有一个配置文件,需要6份。每个节点处于集群的角色都需要告知其他所有节点,彼此知道,这个文件用于存储集群模式下的集群状态等信息,这个文件是由redis自己维护,我们不用管。如果你要重新创建集群,那么把这个文件删了就行 cluster-config-file nodes-201.conf # 超时时间,超时则认为master宕机,随后主备切换 cluster-node-timeout 5000 # 开启AOF appendonly yes
3、删除工作空间中rdb和aof文件
4、分别启动6台redis
5、创建集群,在任一节点上执行以下命令,执行完会出现日志,6台的主从关系都会显示。
##### # 注意1:如果你使用的是redis3.x版本,需要使用redis-trib.rb来构建集群,最新版使用C语言来构建了,这个要注意 # 注意2:以下为新版的redis构建方式 ##### # 创建集群,主节点和从节点比例为1,主从的对应关系会自动分配。 redis-cli --cluster create ip1:port1 ip2:port2 ip3:port3 ip4:port4 ip5:port5 ip6:port6 --cluster-replicas 1
6、检查
redis-cli -a imooc --cluster check 192.168.25.64:6380
7、可自行测试其中一台或几台挂掉是否依然可用。
至此,在保证了高可用的同时,也扩展了容量。
整理自慕课网《java架构师体系课》
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· 【全网最全教程】使用最强DeepSeekR1+联网的火山引擎,没有生成长度限制,DeepSeek本体