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

    Redis主从+Sentinel搭建文档

    1、单机redis安装
    wget   http://download.redis.io/releases/redis-5.0.3.tar.gz
    cd /usr/local/
    tar -zxvf redis-5.0.3.tar.gz
    mv redis-5.0.3/ redis
    cd redis/src
    (需要gcc编译)
    ./configure
    make && make install

     

    修改配置文件-redis.conf

    主节点:

    #根据需求是否修改
    port 6379      
    #允许后台启动
    daemonize yes
    #允许来自非本地的连接
    bind 0.0.0.0  
    #本机redis密码
    requirepass "123456"
    #主从交互密码--主节点不需要改配置 仅从节点配置
    masterauth "123456"  
    #log目录必须手动创建
    logfile /var/log/redis/redis-master.log

    从节点:从1,从2

    #根据需求是否修改
    port 6379      
    #允许后台启动
    daemonize yes
    #允许来自非本地的连接
    bind 0.0.0.0  
    #本机redis密码
    requirepass "123456"
    #主从交互密码--主节点不需要改配置 仅从节点配置
    masterauth "123456"  
    #log目录必须手动创建
    logfile /var/log/redis/redis-master.log
    #声明它是谁的从服务器
    slaveof 192.168.200.228 6379

     

    主节点哨兵配置:sentinel.conf

    主节点哨兵配置: redis安装以后,你会在安装目录发现sentinel.conf文件,redis为我们准备了哨兵配置的,但是默认配置无用的太多,我选择备份此文件,重新自己编辑;

    mv sentinel.conf{,.a}
    vim sentinel.conf

    填充以下内容: 主从配置一样

    #默认端口
    port 26379
    #允许后台启动
    daemonize yes    
    protected-mode no    #关闭保护模式(此配置很重要,不配置将无法实现主从切换)
    logfile "/usr/local/redis/logs/sentinel.log"
    sentinel monitor mymaster   192.168.200.228 6379 1  #配置选举机制,哨兵时刻监控主服务器的6379端口,后面的“1”是当有一票认为它宕机以后就开始主从切换
    sentinel auth-pass mymaster "123123"     #配置redis交互密码(redis无密码时不需要此配置)
    sentinel down-after-milliseconds mymaster 5000
    sentinel failover-timeout mymaster 15000

    sentinel必须最少三台,否则故障转移无效。

    启停、主从复制、故障转移
    启动与停止:
    脚本位于redis安装目录src下
    前端模式启动:
    ./redis-server
    后台启动方式:
    ./redis-server ../redis.conf
    如果在同一台机器多端口启动redis,则需要复制redis.conf文件,启动时指定。

    登录redis命令行:
    ./redis-cli -a 123456

    退出:
    quit


    # 启动哨兵进程
    ./redis-sentinel ../sentinel.conf

    停止:
    ./redis-cli shutdown   #配置redis密码后该命令会失效,使用以下命令停止
    redis-cli -a password shutdown

    远程登录:
    ./redis-cli -h 192.168.200.227 -p 6379 -a 123456

    主从复制测试:
    主节点:
    set testkey value1

    从节点:
    get testkey

    故障转移测试:
    手动停止主节点redis进程

    从节点查询:info replication
    测试主从复制。
    恢复master节点(恢复后也只是作为slave了,不会再成为master,除非故障再次转移)
    如果当先节点信息显示为 master,则sentinel可用。

     

    springboot配置Sentinel

    spring:
    redis:
      sentinel:
        master: mymaster
        nodes: 192.168.200.228:26379,192.168.200.227:26379,192.168.200.226:26379

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    安卓SharedPreferences类的使用
    安卓登录案例
    如何用Android Studio查看build.gradle源码
    学点Groovy来理解build.gradle代码
    build.gradle代码
    【Android】TextView文字长度测量和各种Paddding解析
    【Android】TextView跑马灯效果
    【分享】学长的安利来了~~O(∩_∩)O
    【Android】Fragment懒加载和ViewPager的坑
    【Android】你应该知道的调试神器----adb
  • 原文地址:https://www.cnblogs.com/mzc1997/p/14307740.html
Copyright © 2011-2022 走看看