Redis学习_12_哨兵_搭建一个简易的哨兵结构

哨兵的配置

在redis的目录里,有一个哨兵的配置文件:sentinel.conf,先看看这个里面是什么内容:
在这里插入图片描述
下面解释一下其中一些内容:

  • 端口号容易理解,一般就是redis服务器的端口前面加一个2。
  • sentinel monitor mymaster 127.0.0.1 6379 2,这一行是指定这个哨兵要监视哪一个master服务器,其中“mymaster”只是对这个master取的别名,可以自定义;最后面那个参数2指的是,如果有2个哨兵觉得这个master挂了,就会判断这个master真的挂了,因为我们哨兵一般是单数,所以这个值一般是哨兵数量的一半加1。
  • sentinel down-after-milliseconds mymaster 30000,这个是指如果master在30秒内没有响应就判断为挂了,其中30000为毫秒。
  • sentinel parallel-syncs mymaster 1,这个指在master挂了,推选出一个新的master后,允许同时最大多少个机器做数据同步,这个数值越小对服务器性能损耗越小,但是速度也更慢。
  • sentinel failover-timeout mymaster 180000,这个指在同步的过程中,超过多久就算同步超时,也是毫秒单位,180s,3min。

我们把这个配置文件复制一份,改一改里面的内容:
在这里插入图片描述
这其实就改了一个dir,其他没动,因为我们可以就用这个配置。然后把这个配置文件再复制2份,只要修改哨兵的端口,其他都不用动。至此,我们简单的哨兵的配置好了。

主从结构的搭建(1个master对应2个slave)

主从结构的搭建之前有学习过,这里不再赘述,可以参考:主从复制_建立连接
这里我们使用通过配置文件来建立主从结构。

启动主从与哨兵

注意: 要先启动master与slave,再去启动哨兵。
启动哨兵命令:redis-sentinel [配置文件]
我们先只启动一个哨兵服务器,来看一下相关信息:
在这里插入图片描述
这里有记录哨兵的id、master、slave的相关信息,然后我们连一下哨兵的客户端,看一下info里的信息:
在这里插入图片描述
可以看到,最后一行有记录master的信息:状态、地址、端口、slave数量、sentinel数量。接下来再看一下这个哨兵的配置文件,可以看到里面会多出来一些主从的相关信息,也就是说,这个配置文件在哨兵启动后会有变化。
在这里插入图片描述
下面我们启动第2个哨兵:
在这里插入图片描述
可以看到最后一行,第2个哨兵有发现之前启动的第一个哨兵,同样,第1个哨兵也会在这个时候发现新启动的第2个哨兵。而且,在配置文件中也会多出来另一个哨兵的相关信息。

验证哨兵的功能

我们先在master的服务器那里,用ctrl+c直接干掉master。然后观察哨兵的服务器日志:
在这里插入图片描述
我们会发现日志多出来了这一部分,其中:

  • sdown master mymaster 127.0.0.1 6379,表示有一个哨兵发现这个master挂了,通知其他哨兵。
  • odown master mymaster 127.0.0.1 6379 #quorum 3/2,表示有一个哨兵发现master挂了之后,都去连这个master,然后都发现这个master确实挂了。
  • switch-master mymaster 127.0.0.1 6379 127.0.0.1 6380,表示原来6379的master挂了之后,经过投票,推选出6380作为新的master。
  • 下面这两句则表示把6381、6379作为slave连接到新的master6380。

slave slave 127.0.0.1:6381 127.0.0.1 6381 @ mymaster 127.0.0.1 6380
slave slave 127.0.0.1:6379 127.0.0.1 6379 @ mymaster 127.0.0.1 6380

  • sdown slave 127.0.0.1:6379 127.0.0.1 6379 @ mymaster 127.0.0.1 6380,表示由于之前已经发现6379确实挂了,所以先把6379下线。

至此,我们可以发现哨兵的结构确实已经搭建好并且可以工作了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值