zoukankan      html  css  js  c++  java
  • Redis 哨兵搭建

    上一篇我们已经介绍了主从复制的搭建,但这有个问题就是如果半夜两点,我的主节点挂了。那么我的这个redis整个服务就挂掉了。除非人为恢复,不然这个redis服务就一直不可用。那么有没有一种方法能解决这个问题,当我的主节点挂了之后,其下面的从节点能自动补到主节点的位置。使我们的redis整体服务可用。这时哨兵的诞生就能缓解我们所遇到的问题,redis的sentinel系统用于管理多个redis服务器,该系统主要执行三个任务:监控、提醒、自动故障转移。也就是说哨兵会监控我们的主从节点,当主节点挂掉之后,哨兵系统会帮我们选举出从节点来替代主节点,通过发布订阅模式通知其他服务器修改配置,从而完成主从替换,使redis整体服务可用。通常我们会用多个哨兵来检测我们的redis,当一个哨兵发现主节点挂掉后,并不会立即进行主从替换。而是与其他哨兵节点也发现主节点不可用了,当数量达到一定的数量,哨兵之间就会进行一次投票,进行相应的主从替换

    一.哨兵节点配置

      创建一个sentinel.conf文件配置内容如下

      port 16380      //哨兵节点的端口
      sentinel monitor mymaster <主节点IP> <主节点端口> 2    //这里的2表示,当两个以上的哨兵节点认为主节点不可用时,才能进行故障转移
      sentinel auth-pass mymaster <主节点密码>                      //当主节点设置密码时,这里要进行相应的配置
      sentinel down-after-milliseconds mymaster 5000   //master或slave多长时间(默认30秒)不能使用后标记为s_down状态。
      sentinel failover-timeout mymaster 18000    //若哨兵在该配置值内未能完成failover操作(即故障时master/slave自动切换),则认为本次failover失败。

    二.从节点配置

      slaveof <主节点IP> <主节点端口>     //配置主节点的IP 和端口
      masterauth <主机点密码>            //设置主节点的密码  若主节点未设置密码可以不用配置

    三.启动相应的节点

      启动方式依次为,主节点,从节点,哨兵

    四.停止主节点,查看哨兵的行为

     五.当主节点重新恢复

      当主节点重新恢复时,它还会是主节点么。当然不是,它会成为新选出来的主节点的一个从节点继续运行

  • 相关阅读:
    JavaScript 创建和浅析自定义对象
    JavaScript Object对象
    JavaScript String对象
    JavaScript Math和Number对象
    using kafkacat reset kafka offset
    windows 10 enterprize LTSC
    avro-1.8.1 serialize BigDecimal and Short error fix.
    Ubuntu Navicat for MySQL安装以及破解方案
    Kafka Connect Architecture
    python 读写配置文件
  • 原文地址:https://www.cnblogs.com/HTLucky/p/12787075.html
Copyright © 2011-2022 走看看