zoukankan      html  css  js  c++  java
  • Redis

    Redis_sentinel 哨兵模式;

    Redis 架构一般多是一主多从;

    Sentinel 哨兵模式就是三组进行相互监控;

    wget http://download.redis.io/releases/redis-3.2.4.tar.gz
    tar -zxvf redis-3.2.4.tar.gz
    mv redis-3.2.4 redis && cd redis
    make && make install
    cp -rp redis/src/redis-trib.rb /usr/local/bin/
    cp -rp redis/src/redis-sentinel /usr/local/bin/
    mkdir -p redis/{redis_cluster,data,logs}
    
    其他方式: yum
    -y install ruby ruby-devel rubygems rpm-build gem install redis

    配置 Redis 的主从模式;

    Redis - port 
    master - 6371
    slave  - 6372/6373
    
    日志目录:/redis/logs/{6371,6372,6373}/redis.log
    数据目录:/redis/data/{6371,6372,6373}
    
    配置目录:
    master — redis.conf conf/6371/redis.conf
    slave  — redis.conf conf/6372/redis.conf
    slave  — redis.conf conf/6373/redis.conf

    主配置信息:6371

     

    从配置信息: 6372

    从配置信息 6373 :

    sentinel 哨兵:

    Sentinel - port 
    sentinel 26370
    数据目录:/redis/data/26370/
    日志目录:/redis/logs/sentinel/26370/sentinel.log
    配置目录:conf/26371/sentinel.conf

     redis 哨兵 sentinel.conf 配置文件

    # cat sentinel.conf
    port
    26370 dir "/redis/data/26370" sentinel monitor mymaster 127.0.0.1 6371 2 // 监控判定 master 失效;需要 2组 sentinel 同意;
    //
    测试方便可以只写 1
    sentinel down-after-milliseconds mymaster 60 // mymaster 设置未响应时间 SDOWN
    // 方便这个时间可以设置小一点;
    sentinel failover-timeout mymaster 60 // failover切换时间 sentinel parallel-syncs mymaster 1 // 指定最大同时同步新maser配置的salve数量 # sentinel auth-pass myMaster 1234 // 配置密码行
    // 测试方便可以不用设置
    sentinel config-epoch mymaster 0 // 确认mymater SDOWN时长 sentinel leader-epoch mymaster 2 // 同时一时间最多2个slave可同时更新配置.

    redis 启动测试;

    启动redis 指定配置启动打印日志;
    [root@ redis]# cat start.sh src
    /redis-server conf/6371/redis.conf >> /redis/logs/6371/redis.log & src/redis-server conf/6372/redis.conf >> /redis/logs/6372/redis.log & src/redis-server conf/6373/redis.conf >> /redis/logs/6373/redis.log &

    sentinel 哨兵启动 

    Sentinel 哨兵检测启动: 
     ./src/redis-server sentinel.conf --sentinel &
     ./src/redis-sentinel sentinel.conf --sentinel &
    或者写成 一个启动脚本;
    [root@ redis]# cat sentinel
    -start.sh
    src
    /redis-sentinel sentinel/26379/sentinel.conf --sentinel &> /redis/logs/26379/sentinel.log & 测试 src/redis-cli -h 127.0.0.1 -p 6371/6372/6373 > info 可以查看节点信息; // 尝试切断master 端口 ;会根据设置切换时间进行切换;

    杀死 master 主节点测试;

    kill master-redis pid :

    再远程从任意一个从节点查看:

    已经更改 master 为 6373 ;

     

  • 相关阅读:
    docker gitlab and gitlab api
    service mesh,linkerd,sidecar,apigateway
    FIS3
    various system release [online]
    certification on windows and
    postman_
    macbook ios recovery and mount hfs+ journal and revert
    distribution system index
    登录科普(一)CAS与Oauth
    sonar,jiar,xray,jenkins[cli] [sudoers]
  • 原文地址:https://www.cnblogs.com/sharesdk/p/7867090.html
Copyright © 2011-2022 走看看