美文网首页
redis哨兵部署

redis哨兵部署

作者: 博陵韩少 | 来源:发表于2021-04-02 14:55 被阅读0次

    Sentinel(哨兵)用于监控redis集群中Master状态,自动对主从进行检测,当master有问题后,将会自动切换从节点为主。
    适用于小内存,写始终在单台,性能有局限性,更高需求可选择集群。
    10.0.0.1 master+sentinel
    10.0.0.2 slave+sentinel
    10.0.0.3 slave+sentinel

    1 安装

    tar -zxvf redis-3.2.11.tar.gz
    mv redis-3.2.11 /usr/local/redis
    cd /usr/local/redis
    make
    make install
    

    2 配置主备

    在程序根目录创建专门的配置目录conf,数据目录data,日志目录logs

    mkdir data
    mkdir logs
    mkdir conf
    cp redis.conf conf/
    cp sentinel.conf conf/
    

    redis.conf主要配置内容如下(其他保持默认即可):

    port 6379
    bind 10.0.0.1 127.0.0.1 #网卡ip放127前,否则集群无法互相连通
    daemonize yes  #后台启动
    requirepass 123456  #配置redis Slave密码为123456
    masterauth 123456  #由于slave需和master交互
    
    #pidfile /var/run/redis/redis-server.pid #redis的进程文件
    # 客户端空闲超过timeout,服务端会断开连接,为0服务端不主动断开连接
    timeout 300
    #对tcp连接进行检测,单位秒。如设置0则不检测。检测可以防止客户端僵死,从而占用一个连接。
    tcp-keepalive 60
    loglevel notice
    logfile ./logs/redis-server-6379.log
    dbfilename dump-6379.rdb
    dir ./data #数据目录
    #用select 1/2/3切换到不同库,相当于mysql中的数据库实例,一个应用可以一个库,清理当前数据不会影响到其他库。
    databases 16
    # 快照配置持久化配置
    # 注释掉“save”这一行配置项就可以让保存数据库功能失效
    # 900秒(15分钟)内至少1个key值改变则进行数据持久化
    save 900 1
    # 300秒(5分钟)内至少10个key值改变则进行数据持久化
    save 300 10
    # 60秒(1分钟)内至少10000个key值改变则进行数据持久化
    save 60 10000
    #当master挂,根据优先级选举一个master。最低的优先级的slave,当选master。而配置成0,永远不会被选举。
    slave-priority 100
    maxclients 10000 #默认是10000
    appendonly no
    #aof文件名
    appendfilename "appendonly.aof"
    

    备机的redis.conf只需在上面配置中增加一行语句
    slaveof 1.0.0.1 6379 同时修改下bind后边的主机IP
    启动命令:src/redis-server redis.conf
    查看状态:src/redis-cli -p 6379 -a 123456 info

    控制台执行slaveof 1.0.0.1 6379特点:
    在当前slave掉线后,再启动会从服务器会读取自己本地的 rdb恢复数据,而不会去自动链接主服务。

    3 哨兵配置

    sentinel.conf配置如下:

    #开启该参数后,redis只会本地进行访问,拒绝外部访问。要是开启了密码   和bind,可以开启。否   则最好关闭,设置为no
    protected-mode no 
    port 26379
    daemonize yes
    sentinel auth-pass mymaster 123456 #密码验证
    logfile "./logs/redis-26379.log"
    dir './data'
    sentinel monitor mymaster 10.0.0.1 6379 2
    sentinel down-after-milliseconds mymaster 3000
    sentinel failover-timeout mymaster 18000
    sentinel parallel-syncs mymaster 1 #?
    
    

    启动命令:src/redis-sentinel sentinel.conf
    查看状态:src/redis-cli -p 26379 info

    相关文章

      网友评论

          本文标题:redis哨兵部署

          本文链接:https://www.haomeiwen.com/subject/kmctkltx.html