Redis-哨兵模式

概述:

哨兵模式自动实现主从切换技术,传统的主从切换是在主机发生宕机的后,需要手动去切换主机,然而这种方式费时费力,而且造成数据的丢失,如果能转换为自动的主从切换就能解决这些问题。

哨兵模式是一种特殊的模式,Redis提供了哨兵的命令,哨兵是一个独立的进程,其原理是哨兵通过命令,等待Redis服务器的响应,从而监控运行多个Redis实例。如果某Redis服务器没有给哨兵响应结果,哨兵就会默认它发生了宕机。就会自动选举出来一个Master
在这里插入图片描述
但是哨兵是一个进程我们不能保证他不会挂掉,所以需要添加多个哨兵来同时监控,而且哨兵之间也要相互监控来防止意外的发生。
在这里插入图片描述

目录中包含redis哨兵:
在这里插入图片描述

测试

1.配置哨兵配置文件 sentinel.conf
在这里插入图片描述

#sentinel monitor 被监控的名称 主机名 端口号 1
sentinel monitor myredis 127.0.0.1 6379 1

数字1 代表:代表Master宕机,slave进行投票来选举,票数多的去胜任主机的位置。

2.哨兵启动

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

启动界面:

在这里插入图片描述
在这里插入图片描述
可以监视到主机和从机,主机的投票数最多。

接下来我么去体验 下这个哨兵模式
将主机的服务关掉,观察哨兵和查看两个从机的角色状态

等一段时间可以发现,哨兵出现了大量的心跳包,在主机宕机后,被哨兵监察到,并反馈信息。为我们做了故障转移。

哨兵日志:
在这里插入图片描述
我们发现这时6380端口Redis服务器成为了Master
在这里插入图片描述

如果主机再次启动,只能作为从机加入集群,主机任然是6380Redis服务器。

哨兵模式

优点:

  • 哨兵集群,支持主从复制。
  • 主从可以切换,支持故障转移。
  • 哨兵模式是主从复制的一种升级,增加了健壮性

缺点:

  • Redis不好在线扩容,集群的数量达到一定限度就会很麻烦。
  • 配置比较麻烦,如果需要在线扩容的话需要修改的配置就很多。

哨兵模式的配置文件还有很多,可以自行查找。


版权声明:本文为qq_46027706原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。