zoukankan      html  css  js  c++  java
  • Redis-Sentinel 哨兵

    为什么需要哨兵?

    一旦主节点宕机,那么需要人为修改所有应用方的主节点地址(改为新的master地址),还需要命令所有从节点复制新的主节点
    那么这个问题,redis-sentinel就可以解决了

    什么是哨兵Redis-Sentinel?
    保护redis主从集群正常运转,当redis主库挂掉之后,自动的在从库中挑选新的主库,进行同步.
    哨兵会不停的给主库发ping,如果一定时间内主库没回复就认为主库挂了.就自动的在从库中挑选新的主库.
    如果有多个哨兵,那么多个哨兵是通过订阅相同的频道来交流的.
    可以多个哨兵监控一个主从集群. 哨兵多个,为了防止只有一个哨兵的时候,哨兵也宕机了.
    哨兵是redis的一个进程, 哨兵不做存储,只监控redis

    多个哨兵监控一个主从集群

    主库出现故障的时候, 哨兵选一个从库作为新的主库, 并修改其他从库的新主库

    举例:

    step1. 开启3个redis服务器, 以不同端口区分

        

    step2 准备3个哨兵 

    哨兵端口默认26379  以端口的不同区分3个哨兵
    1.哨兵的配置文件
             port 26379  
             dir /var/redis/data/
             logfile "26379.log"

    sentinel monitor youku-master 127.0.0.1 6379 2 sentinel down-after-milliseconds youku-maste 30000 sentinel parallel-syncs youku-maste 1 sentinel failover-timeout youku-maste 180000 daemonize yes

        

        快速生成其他2个哨兵的配置文件
          sed "s/26379/26380/g" redis-sentinel-26379.conf >  redis-sentinel-26380.conf                
          sed "s/26379/26381/g" redis-sentinel-26379.conf >  redis-sentinel-26381.conf 

        

    2.启动三个哨兵

        

    3.查看哨兵 自动发现redis主从节点

        

    4.查看哨兵的状态

        

    step3 测试哨兵功能  杀掉主库6379  查看哪一个从库变成了主库

      主库宕机后 哨兵选择一个从库变为主库 原理是哨兵修改redis服务器的配置文件的slaveof  从而改变主从关系

        

  • 相关阅读:
    hdu 1312 Red and Black
    hdu 1573 X问题
    广工校赛决赛之简单的数论题
    最大的LeftMax与rightMax之差绝对值
    POJ 2385 Apple Catching
    hdu 1171 Big Event in HDU
    ACM比赛经验
    BestCoder Valentine's Day Round
    使用ffmpeg进行视频封面截取
    使用ODP.NET连接Oracle数据库
  • 原文地址:https://www.cnblogs.com/dingyunfeng/p/10230320.html
Copyright © 2011-2022 走看看