前言

我们在做项目的时候肯定是会需要建 redis 集群的,一般是 一主二从 的配置形式,我现在用的就是这个模式,就是说有一个是主机 master 另外两个是从机 slave , 主机一般负责写入数据,而从机只能负责读取数据不能写数据。但是考虑这种情况,突然主机宕机了,那么其他的两个从机就没有老大了,我们又知道从机不能写数据那这不是gg,这怎么办?我们这个时候就引入了哨兵模式,说白了哨兵模式的用处就是 他可以监视我们的主机和从机,在主机不能工作的了宕机之后,哨兵会检测他的线程是否是活跃的来判断主机有没有宕机,之后通过投票算法去重新在这些从机当中选取一个人来当老大主机,这样的话就不会“群龙无首”了,redis也可以继续工作!
那么有人肯定会想那要是这个主机又回来了,那是不是还是这个端口做主机呢????那肯定是不是这样的,哨兵会监视到宕机的主机恢复了,那么他会将这个宕机的主机作为新选取的主机的从机!看下图!!!
在这里插入图片描述

第一步

那么我们怎么配置这个哨兵模式呢?在这个之前我们先要搭建好Redis集群。
我们都知道在linux端启动redis是通过配置文件redis.conf文件启动的,执行命令 redis-server redis.conf 那么我们以一主二从的形式搭建redis集群,我们就先来复制三份 redis.conf 然后更改一下他的配置内容。复制好之后我们通过 vim redis.conf 进入配置文件中,我们要修改4个地方。

1、更改端口号
在这里插入图片描述2、更改pid文件名
在这里插入图片描述3、更改logfile路径
在这里插入图片描述
4、更改rdb文件的名称
在这里插入图片描述
5、启动服务然后配置主机从机

因为主机只要开启的话就是默认为主机,所以我们只要配置从机,把两个小弟配置到大哥上就ok!!!

	SLAVEOF 127.0.0.1 6379  # SLAVEOF  host port

经过这些配置之后我们的redis集群就已经配置好了!!!!

第二步

配置好redis集群之后我们就要开始配置一个哨兵的配置文件 sentinel.conf 然后在写一些配置文件

	vim sentinel.conf

然后再配置文件内写入

	sentinel monitor myredis 127.0.0.1 6381 1  # 1表示主机宕机之后slave进行的投票选取谁来称为新的主机

保存退出

第三步

我们最后就是启动 哨兵 进入到/bin 目录输入

	redis-sentinel sentinel.conf

结果

我们将主机进行宕机处理以及后期重启恢复,看看哨兵模式能不能进行监视!如下图:
在这里插入图片描述在这里插入图片描述
搞定收工~~~

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐