搭建Redis多哨兵

前言:

        1.在redis主从默认是只有主具备写的能力,而从只能读。如果主宕机,整个节点不具备写能力。但是如果这是让一个从变成主,整个节点就可以继续工作。即使之前的主恢复过来也当做这个节点的从即可。

        2.Redis的哨兵就是帮助监控整个节点的,当节点主宕机等情况下,帮助重新选取主。

        3.Redis中哨兵支持单哨兵和多哨兵。单哨兵是只要这个哨兵发现master宕机了,就直接选取另一个master。而多哨兵是根据我们设定,达到一定数量哨兵认为master宕机后才会进行重新选取主。

搭建Redis多哨兵机制:

一:在local目录下新建sentinel目录,并把redis的bin目录复制进sentinel目录 

1.创建目录:# mkdir /usr/local/sentinel

2.复制redis:# cp -r /usr/local/redis/bin/* /usr/local/sentinel

二:从redis的解压目录复制sentinel配置文件

        sentinel文件在redis的解压目录,一般情况下是在local下的临时文件夹temp中,如果你不是在temp文件夹解压的redis,就寻找你自己的解压目录,sentinel文件肯定在解压目录里面。

1.进入redis的解压目录

# cd /usr/local/tmp/redis-5.0.5/

2.复制sentinel进入local下的sentinel哨兵目录
# cp sentinel.conf /usr/local/sentinel/

三:修改sentinel配置文件(这个配置文件要准备三份

1.进入sentinel目录

# cd /usr/local/sentinel

2.修改配置文件
# vim sentinel.conf

        修改四个位置:

        1.端口号:三个sentinel文件端口号分别为26379、26380、26381。

        2.daemonize的“no”改为“yes”。

        3.设置logfile日志文件路径:“/usr/local/sentinel/26379.log”

        4.哨兵监视器:sentinel monitor mymaster + ip+被监视的redis端口+哨兵数量

                eg:sentinel monitor mymaster 127.0.0.1 6379 2

        这个配置文件要准备三份,分别是sentinel.conf、sentinel-26380.conf、sentinel-26381.conf,他们的端口号分别是26379、26380、26381。

        以上就是redis多哨兵的搭建过程,下面开始测试:

四:启动主从

        如果已经启动状态,忽略下面命令。如果启动部分,全部kill后重新启动。

查看redis进程:# ps aux|grep redis

杀死某进程:# kill -9 + 进程号

        启动redis主从

# cd /usr/local/replica
# ./startup.sh

        启动三个哨兵

# cd /usr/local/sentinel
# ./redis-sentinel sentinel.conf
# ./redis-sentinel sentinel-26380.conf
# ./redis-sentinel sentinel-26381.conf

       查看redis主从和redis多哨兵启动信息:

        可以看到三个redis和三个sentinel启动成功了的,并且还可以看到对应的进程号。

        测试宕机:用kill命令杀死master进程

杀死master进程:kill -9 + 对应进程号

        再次查看redis主从和redis多哨兵启动信息:

        可以看到只有两个reids进程和三个哨兵进程了,少了一个原来的master进程。

        查看新的master:

        注意info replication信息中的“role:master”,可以看到6381端口号的redis成立新的master。说明我们杀死原来的master(redis端口号是6379),现在搭建了哨兵机制,自动选择一个原来的“从redis”变成了新的“主redis”。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值