Redis Sentinel高可用实战:主从自动故障转移

张开发
2026/4/8 14:53:28 15 分钟阅读

分享文章

Redis Sentinel高可用实战:主从自动故障转移
一、Sentinel 核心概念监控持续检查主从节点是否正常通知节点异常时通知管理员或其他程序自动故障转移主节点下线时自动选举新的主节点配置提供者客户端通过 Sentinel 获取当前主节点地址回到顶部二、环境准备准备三台服务器或本地三个端口主节点192.168.1.100:6379 从节点192.168.1.101:6379 从节点192.168.1.102:6379 Sentinel三个实例分别部署在三台服务器回到顶部三、主从复制配置从节点配置redis.confreplicaof 192.168.1.100 6379 masterauth yourpassword replica-read-only yes启动主从节点后验证redis-cli info replication # 输出role:master / role:slave回到顶部四、Sentinel 配置详解创建 sentinel.confport 26379 sentinel monitor mymaster 192.168.1.100 6379 2 sentinel auth-pass mymaster yourpassword sentinel down-after-milliseconds mymaster 30000 sentinel parallel-syncs mymaster 1 sentinel failover-timeout mymaster 180000配置说明• monitor监控名为 mymaster 的主节点2 表示需要 2 个 Sentinel 同意才能判定主节点下线• down-after-milliseconds30秒无响应则判定下线• failover-timeout故障转移超时时间启动 Sentinelredis-sentinel /etc/redis/sentinel.conf回到顶部五、故障转移测试模拟主节点宕机redis-cli shutdown观察 Sentinel 日志sdown master mymaster 192.168.1.100 6379 odown master mymaster 192.168.1.100 6379 #quorum 2/2 switch-master mymaster 192.168.1.100 6379 192.168.1.101 6379回到顶部六、Spring Boot 整合 Sentinelapplication.yml 配置spring: redis: sentinel: master: mymaster nodes: - 192.168.1.100:26379 - 192.168.1.101:26379 - 192.168.1.102:26379 password: yourpassword回到顶部七、生产环境最佳实践• 至少部署 3 个 Sentinel 实例奇数个• Sentinel 与 Redis 节点物理隔离部署• 开启 AOF 持久化appendonly yes• 设置强密码requirepass 和 masterauth回到顶部八、总结Redis Sentinel 提供了开箱即用的高可用方案核心要点• 至少 3 个 Sentinel 实例保证可用性• 合理配置 down-after 和 failover-timeout• 客户端必须通过 Sentinel 获取主节点地址

更多文章