导读:本期聚焦于小伙伴创作的《如何搭建Redis双机热备方案实现高可用》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《如何搭建Redis双机热备方案实现高可用》有用,将其分享出去将是对创作者最好的鼓励。

Redis作为常用的内存数据库,单点部署存在故障风险,双机热备是保障其高可用的常用方案。下面介绍基于主从复制+哨兵模式的双机热备搭建方法。

如何搭建Redis双机热备方案实现高可用

一、环境准备

准备两台服务器,分别作为主节点和从节点,假设主节点IP为192.168.0.10,从节点IP为192.168.0.11,两台服务器均安装Redis 6.0及以上版本,关闭防火墙或开放Redis默认端口6379、哨兵默认端口26379。

二、配置主从复制

1. 主节点配置

主节点使用默认配置即可,也可根据需要调整以下参数,修改Redis配置文件redis.conf:

# 绑定主节点IP,允许从节点连接
bind 192.168.0.10
# 保护模式关闭,方便测试
protected-mode no
# 后台运行
daemonize yes
# 日志文件路径
logfile "/var/log/redis/redis.log"
# 持久化配置,按需开启RDB或AOF
save 900 1
save 300 10
appendonly yes

2. 从节点配置

从节点需要在redis.conf中添加主节点关联配置:

# 绑定从节点IP
bind 192.168.0.11
# 关闭保护模式
protected-mode no
# 后台运行
daemonize yes
# 日志文件路径
logfile "/var/log/redis/redis-slave.log"
# 指定主节点IP和端口
replicaof 192.168.0.10 6379
# 从节点只读,默认开启无需修改
replica-read-only yes

3. 验证主从同步

分别启动主从节点的Redis服务,连接主节点写入测试数据,再连接从节点查询,验证数据是否同步:

# 连接主节点
redis-cli -h 192.168.0.10 -p 6379
192.168.0.10:6379> set test_key "hello_redis"
OK
192.168.0.10:6379> get test_key
"hello_redis"

# 连接从节点查询
redis-cli -h 192.168.0.11 -p 6379
192.168.0.11:6379> get test_key
"hello_redis"

三、部署哨兵节点

哨兵节点负责监控主从节点,主节点故障时自动将从节点晋升为主节点,实现故障转移。两台服务器各部署一个哨兵节点,修改哨兵配置文件sentinel.conf:

# 后台运行
daemonize yes
# 日志文件路径
logfile "/var/log/redis/sentinel.log"
# 监控主节点,mymaster是主节点别名,192.168.0.10 6379是主节点地址,2表示至少2个哨兵认为主节点故障才触发转移
sentinel monitor mymaster 192.168.0.10 6379 2
# 主节点无响应超过30000毫秒视为故障
sentinel down-after-milliseconds mymaster 30000
# 故障转移时最多同时同步的从节点数
sentinel parallel-syncs mymaster 1
# 故障转移超时时间
sentinel failover-timeout mymaster 180000
# 关闭保护模式
protected-mode no

分别启动两台服务器的哨兵服务,连接哨兵节点查看监控状态:

redis-cli -h 192.168.0.10 -p 26379
192.168.0.10:26379> sentinel master mymaster
# 可以看到主节点状态、从节点数量、哨兵数量等信息

四、故障转移验证

手动停止主节点的Redis服务,模拟主节点故障,观察哨兵日志或查询哨兵状态,可以看到哨兵自动检测到主节点下线,将从节点晋升为新主节点,此时连接从节点可以发现其已经变为可写状态,业务无需手动干预即可恢复服务。

五、注意事项

  • 生产环境建议至少部署3个哨兵节点,避免哨兵单点故障导致故障转移失败
  • 主从节点建议开启持久化,避免主节点故障重启后数据丢失
  • 应用端连接时不要直接连接固定Redis节点,建议通过哨兵获取当前主节点地址,或使用支持哨兵的Redis客户端

以上就是Redis双机热备方案的完整搭建流程,该方案可以有效避免Redis单点故障,保障业务服务的可用性。

Redis双机热备主从复制哨兵模式高可用修改时间:2026-05-24 23:24:52

免责声明:已尽一切努力确保本网站所含信息的准确性。网站部分内容来源于网络或由用户自行发表,内容观点不代表本站立场。本站是个人网站免费分享,内容仅供个人学习、研究或参考使用,如内容中引用了第三方作品,其版权归原作者所有。若内容触犯了您的权益,请联系我们进行处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。前端、网络、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握网站开发与运维所需的核心技术栈。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端逻辑,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。