九、redis的sentinel(哨兵)

一 介绍

在原来主从复制的基础上,让每个节点都成为sentinel节点。
这里写图片描述

二 故障转移

这个其实手动也能完成,就是sentinel帮我们自动监控,自动完成这一功能
这里写图片描述

三 配置

port 26379

dir /tmp

daemonize yes

logfile "26379.log"

//监控的集群名称 mymaster  兼容的ip+端口 后面这2表示,如果有2个以上sentinel发现宕机了,
//开启哨兵机制
sentinel monitor mymaster 127.0.0.1 6379 2

//30秒ping不同,代表这个redis挂掉了
sentinel down-after-milliseconds mymaster 30000

//故障转移间隔3分钟(指定时间间隔进行一次故障转移)
sentinel failover-timeout mymaster 180000

下面我启动了三个redis server

  • 7000 主节点
  • 7001 从节点
  • 7002 从节点

    又启动了三个sentinel

  • 列表内容

  • 26379 哨兵1
  • 26380 哨兵2
  • 26381 哨兵3

这里写图片描述

下面我故意把7000关闭掉,看看发生什么变化

//日志信息

//发现7000挂掉了
 +sdown master mymaster 127.0.0.1 7000 

 +new-epoch 6

 //内部选一个哨兵领导
 +vote-for-leader a888710d739b8ae27bb2c3141c09e62b75241813 6

 //3个哨兵,其中2个已经发现7000挂掉了
  +odown master mymaster 127.0.0.1 7000 #quorum 3/2

//从哨兵领导中更新配置文件
 +config-update-from sentinel a888710d739b8ae27bb2c3141c09e62b75241813 127.0.0.1 26379 @ mymaster 127.0.0.1 7000

 //将7002当成主节点
 +switch-master mymaster 127.0.0.1 7000 127.0.0.1 7002

//将7001作为7002的从节点
 +slave slave 127.0.0.1:7001 127.0.0.1 7001 @ mymaster 127.0.0.1 7002

//将7000作为7002的从节点
 +slave slave 127.0.0.1:7000 127.0.0.1 7000 @ mymaster 127.0.0.1 7002

四 sentine定时任务

这里写图片描述

五 主观下线和客观下线

这里写图片描述

六 sentinel领导者选举

这里写图片描述

七 选择合适的slave节点成为主节点

这里写图片描述

八 故障转移

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值