zoukankan      html  css  js  c++  java
  • redis哨兵模式-部署

    Redis哨兵

    介绍

    Redis主从只能满足备份的需求!如果Master宕机的话,还得手动配置Slave才能够使用!并不会自动的切换到Slave继续工作!中间耗时费力!无法实现真正的高可用!

    哨兵 sentine是官方提供的高可用方案!Redis哨兵是一个独立的进程,在运行过程当中会监控所有redis节点的工作状态!当master宕机后会将一台slave升级为master,同时会通知其他的slave修改配置文件,修改master的IP为新的master!哨兵会保证我们的redis集群中一直是有一台可用的master在可以使用

    我们为了更有保障的运行哨兵,我们一般会配置多个哨兵!

    当多个哨兵在同时工作时,master的下线状态有两个:主观下线和客观下线

    master出现故障后,如果只是一个哨兵发现了不可用,,此时这种现象被称之为:主观下线,在主观下线的状态下,并不会发生故障转移!当其他的哨兵也发现master不可用后,开始发起投票,当票数达到预先设置的值后,那么就会开始执行failover操作,开始故障转移!升级一台slave为master,同时让其他的slave修改配置,需改master的IP为新的Master。这种现象我们成为:客观下线

    部署哨兵集群

    整理思路

    做哨兵集群,我们至少需要3台才能有完整的效果!

    准备3台虚拟机,下图如下

    我们将Redis配置为一主两从模式,同时在每个redis-server再上安装哨兵,哨兵监控每个redis的状态

    IP规划如下:

    Redis Master:192.168.189.161

    Redis Slave1 192.168.189.162

    Redis Slave2 192.168.189.163

    配置redis一主两从集群

    3台主机上做如下操作:

    安装redis

    上传redis安装包到服务器

     

    安装依赖工具gcc

     

    解压安装包,安装redis

     

     

     

    配置redis

    配置master

     

     

     

     

     

     

     

    启动redis master

     

     

    配置两台slave,配置如下

     

     

     

     

     

     

     

     

     

    测试主从

    登录master

     

    执行:info replication  查看主从复制的信息

     

    创建一个键值对儿

     

    在从上获取,测试是否同步

     

    配置哨兵

    我们在3台redis-server虚拟机上配置3个哨兵

    3台虚拟机上同时操作

    修改配置文件

     

     

     

     

     

     

     

    将修改好的配置文件发送到另外两台主机上

     

     

     

    启动所有主机的哨兵

     

     

    查看日志可以看到哨兵之间互相都可发现,并且监控起了master

     

     

    测试停止master

    停止redis-server

     

     

    查看日志

     

     

    登陆162查看信息,验证到162已经被升级为master,同时拥有一个slave

     

     

    至此哨兵配置完毕

  • 相关阅读:
    采购到入库所经历的表
    PO 收料SQL
    关于PO 和PR 的联系问题
    在Oracle Form中,如何实现自动编号(行号)的功能
    订单暂挂问题sql解决:
    类和结构的区别?
    DataTable.Select 方法 (String, String, DataViewRowState)
    Ref与Out的区别
    C# 反射
    委托
  • 原文地址:https://www.cnblogs.com/zhang-xiao-shuang/p/14673632.html
Copyright © 2011-2022 走看看