Redis数据库系列Redis哨兵模式

Posted 一宿君

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis数据库系列Redis哨兵模式相关的知识,希望对你有一定的参考价值。

第六章、Redis哨兵模式

学习哨兵模式前可以先了解下上章节主从复制

学习目标

 哨兵简介
 启用哨兵模式
 哨兵工作原理

6.1、哨兵简介

在这里插入图片描述

  • 思考如下问题:
     关闭master和所有slave
     关闭期间的数据服务谁来承接?
     找一个从机slave作为主机master
     找一个主机?怎么个找法?
     修改其他从机slave的配置,连接新的主机master
     修改配置后,原始的主机恢复了怎么办?
     启动新的master与slave
     全量复制N+部分复制N
  • 哨兵
    哨兵(sentinel)是一个分布式系统,用于对主从结构中的每台服务器进行监控,当主机master出现故障时,哨兵模式通过投票机制从多台从机中选举出一个从机做主机master,并将所有从机slave连接到新的master。
  • 哨兵的作用
     监控
    不断的检查master和slave是否正常运行。
    master存活检测、master与slave运行情况检测
     通知(提醒)
    当被监控的服务器出现问题时,向其他(哨兵间,客户端)发送通知。
     自动故障转移
    断开master与slave连接,选取一个slave作为master,将其他slave连接到新的master,并告知客户端新的服务器地址

    注意:
    哨兵也是一台redis服务器,只是不提供数据服务 通常哨兵配置数量为单数

6.2、启动哨兵模式

  • 首先要有哨兵配置文件
    在这里插入图片描述
    在这里插入图片描述
    另外三台从机的哨兵服务器也同样配置,只需修改相应的端口号即可。
  • 首先启动所有的主从机服务器,等待主从连接成功:
    在这里插入图片描述
  • 启动哨兵服务器的监控命令
    redis-server.exe sentinel-哨兵端口号.conf --sentinel
    
  • 打开DOS命令窗口,进入主机redis解压目录:
    输入上述命令
    在这里插入图片描述
    一次启动三台从机的哨兵监控服务器:
    在这里插入图片描述
    同时在主机哨兵服务器中可以看到如下:
    在这里插入图片描述
    这时我们为了演示方便,使用RedisDesktopManager可视化工具,如下图所示:
    输入命令
    #查看当前服务器的连接状态
    info replication
    

在这里插入图片描述
从机的连接状态:
在这里插入图片描述

6.2.1、演示主机宕机,哨兵模式及时哦从从机中推选出一个作为新主机master,同时并连接其他的从机,继续不间断的提供服务

  • 我们将主机master端口号6379关闭,如下图:
    在这里插入图片描述
  • 再次通过上述查看连接状态的命令查看:
    在这里插入图片描述
  • 我们可以测试下从新主机6382中存入数据,查看在两个从机6380和6381中是否能够获取到:
    在这里插入图片描述

以上是关于Redis数据库系列Redis哨兵模式的主要内容,如果未能解决你的问题,请参考以下文章

Redis系列1-redis主从哨兵模式集群模式搭建

linux配置系列之redis哨兵配置

Redis系列深入浅出Redis主从复制之哨兵模式实践

Redis系列-第六篇哨兵模式

redis入门到精通系列:redis哨兵模式详解

redis入门到精通系列:redis哨兵模式详解