Redis6.X节点高可用监控之Sentinel哨兵流程解析和准备

DBC 1.6K 0
  • 核心流程
      • 每秒ping,超过时间不响应 则认为主观下线
      • 满足多个,则认为是客观下线
    • 投票选择主节点
    • 如果没有足够的节点同意master下线,则状态会被移除
  • 环境准备
    • 配置3个哨兵,每个哨兵的配置都是一样的
    • 启动顺序 先启动主再启动从,最后启动3个哨兵
    • 哨兵端口是 【26379】记得开放
温馨提示
#不限制ip
bind 0.0.0.0
​
# 让sentinel服务后台运行
daemonize yes
​
# 配置监听的主服务器,mymaster代表服务器的名称,自定义,172.18.172.109 代表监控的主服务器,6379代表端口,
#2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。
sentinel monitor mymaster 172.18.172.109 6379 2
​
# sentinel auth-pass定义服务的密码,mymaster是服务名称,123456是Redis服务器密码
sentinel auth-pass mymaster 123456
​
#超过5秒master还没有连接上,则认为master已经停止
sentinel down-after-milliseconds mymaster 5000
​
#如果该时间内没完成failover操作,则认为本次failover失败
sentinel failover-timeout mymaster 30000
在目录下创建3个文件sentinel-1.conf、sentinel-2.conf、sentinel-3.conf
sentinel-1.conf
port 26379
bind 0.0.0.0
daemonize yes
pidfile "/var/run/redis-sentinel-1.pid"
logfile "/var/log/redis/sentinel_26379.log"
dir "/tmp"
sentinel monitor mymaster 8.129.113.233 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel auth-pass mymaster 123456
sentinel failover-timeout mymaster 30000
sentinel-2.conf
port 26380
bind 0.0.0.0
daemonize yes
pidfile "/var/run/redis-sentinel-2.pid"
logfile "/var/log/redis/sentinel_26380.log"
dir "/tmp"
sentinel monitor mymaster 8.129.113.233 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel auth-pass mymaster 123456
sentinel failover-timeout mymaster 30000
sentinel-3.conf
port 26381
bind 0.0.0.0
daemonize yes
pidfile "/var/run/redis-sentinel-3.pid"
logfile "/var/log/redis/sentinel_26381.log"
dir "/tmp"
sentinel monitor mymaster 8.129.113.233 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel auth-pass mymaster 123456
sentinel failover-timeout mymaster 30000
  • 网络安全组需要开放端口
  • 优点
    • 主从可以自动切换,可用性更高
  • 缺点
    • 主从切换会丢失短暂数据
    • 主节点的写能力和存储能力受限
启动哨兵集群
./redis-server /usr/local/redis/conf/sentinel-1.conf --sentinel
​
./redis-server /usr/local/redis/conf/sentinel-2.conf --sentinel
​
./redis-server /usr/local/redis/conf/sentinel-3.conf --sentinel
新版SpringBoot/微服务cloud整合Redis主从+Sentinel哨兵
  • 注释掉 host和port
  • 新增配置
sentinel:
  master: mymaster
  nodes: 8.129.113.233:26379,8.129.113.233:26380,8.129.113.233:26381

Redis6.X节点高可用监控之Sentinel哨兵流程解析和准备插图

发表评论 取消回复
表情 图片 链接 代码

分享