项目架构之三主三从三Sentinel笔记(13)

一:Sentinel 【哨兵】
1. Sentinel是干嘛的呢??

     用于监视master是否正常在线,如果说master挂掉了,sentinel会让slave顶上去。
2. 开多少Sentinel适合?
     开3个Sentinel,或者说开奇数个,Sentinel的原理就是一直监视着master是否在线,
     如果挂掉,sentinel的集群会选举中一个零头的sentinel,然后由领头的sentinel
     执行slaveof命令,让slave作为master,然后sentinel集群继续监视着新的master,
     老的master还是会一直监控着,如果启动了,那么老的master会作为新master的slave。
3.  sentinel判断master下线的两种标准。
     《1》 主观下线
。   sentinel发现master没有在指定时间返回信息,这种情况被认为
                        主线下线。 【指定时间:这个时间是我们设置的】


      《2》 客观下线。  sentinel询问sentinel的集群,看一下其他的sentinel是否也标记
                       这master是否下线,如果标记sentinel下线的个数达到一个阀值,
      sentinel会将master标记为主线下线,这个时候能会选取领头的
      sentinel。由领头的sentinel选取master下面的一个slave1去作为
      新的master。

4. 做一个实践:

master1 6369 slave1 6370 slave11 6371
master2 6379 slave2 6380
master3 6389 slave3 6390
还有 3个Sentinel。分别是26379,26380,26381

5. 画图描叙



6. 设置sentinel的四个条件:( run_id : a1b96c0346a2e15af8e52754ba76034e2bbdaabf)


    《1》你要监视的主服务器的ip地址,以及sentinel标记客观下线的阀值。 
        sentinel monitor a1b96c0346a2e15af8e52754ba76034e2bbdaabf 127.0.0.1 6379 2
   《2》sentinel认为“主线下线”的一个阀值。
        sentinel down-after-milliseconds <master-name> <milliseconds>
    《3》 故障恢复期间可以同时slave的个数。
        sentinel parallel-syncs a1b96c0346a2e15af8e52754ba76034e2bbdaabf 1
  《4》 故障恢复允许的最大时长


实践如下

1)文件目录图如下,master,slave相关的存放的是redis.conf,redis-cli,redis-server;sentinel存放的是redis-sentinel,sentinel.conf


2)按照上述设置sentinel.conf,记得修改端口号,并启动

[root@localhost sentinel1]# ./redis-sentinel sentinel.conf

3)查看redis的主从关系

127.0.0.1:6369> info 


127.0.0.1:6369> info replication


4)把主停掉,会显示切换从为主,然后在启动之前的主,会看到之前的主进程会变成从    
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值