zoukankan      html  css  js  c++  java
  • Redis哨兵模式-Windows本地

    1、下载一个redis放到一个文件下,并复制两份分别取名为 Redis-x64-2.8.2401_1、Redis-x64-2.8.2401_2、Redis-x64-2.8.2401_3

    2、分别找到 redis.windows.conf 文件填写一下内容

    #redis访问端口号
    port 6379
    bind 127.0.0.1 # 此为master主1

    #redis访问端口号
    port 6380
    slaveof 127.0.0.1 6380 #此为从2

    #redis访问端口号
    port 6381
    slaveof 127.0.0.1 6381 #此为从3

    3、分别在reids文件夹下创建一个sentinel的conf文件 一次起名问 sentinel_1.conf、sentinel_2.conf、sentinel_3.conf

    sentinel_1中内容为:

    # 配置 sentinel 端口号

    port 26379
    # 以守护进程启动
    daemonize yes
    # 绑定只在本地使用
    bind 127.0.0.1
    # 日志文件名称
    logfile "sentinel_1.log"
    # 日志文件存放地址
    dir "D:\Redis\Redis-x64-2.8.2401_1"
    # 监控 master 名字叫做 mymaster,地址是 127.0.0.1 端口号是 6379,1 表示有几个 sentinel 认为该 master 出现故障,触发主备切换动作
    sentinel monitor mymaster 127.0.0.1 6381 2
    # 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观上认为主节点下线 默认30秒
    sentinel config-epoch mymaster 1
    # 主备切换时,多少个从服务器同步更新数据,数值越小越好
    sentinel leader-epoch mymaster 1
    # 故障转移的超时时间 failover-timeout 可以用在以下这些方面:
    #1. 同一个sentinel对同一个master两次failover之间的间隔时间。
    #2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。
    #3.当想要取消一个正在进行的failover所需要的时间。
    #4.当进行failover时,配置所有slaves指向新的master所需的最大时间。不过,即使过了这个超时,slaves依然会被正确配置为指向master,但是就不按parallel-syncs所配置的规则来了
    # 默认三分钟
    sentinel known-slave mymaster 127.0.0.1 6379
    # Generated by CONFIG REWRITE
    sentinel known-slave mymaster 127.0.0.1 6380
    sentinel known-sentinel mymaster 127.0.0.1 26381 d7777ec3655a0a82464344db392851c172d44292
    sentinel known-sentinel mymaster 127.0.0.1 26380 2fc2f971333fe8c33edb4100ca5b2f61ef3a2766
    sentinel current-epoch 1

    sentinel_2、sentinel_3中内容为略有不同:

    # 配置 sentinel 端口号
    port 26380
    # 以守护进程启动
    daemonize yes
    # 绑定只在本地使用
    bind 127.0.0.1
    # 日志文件名称
    logfile "sentinel_2.log"
    # 日志文件存放地址
    dir "D:\Redis\Redis-x64-2.8.2401_2"
    # 监控 master 名字叫做 mymaster,地址是 127.0.0.1 端口号是 6379,1 表示有几个 sentinel 认为该 master 出现故障,触发主备切换动作
    sentinel monitor mymaster 127.0.0.1 6381 2
    # 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观上认为主节点下线 默认30秒
    sentinel config-epoch mymaster 1
    # 主备切换时,多少个从服务器同步更新数据,数值越小越好
    sentinel leader-epoch mymaster 1
    # 故障转移的超时时间 failover-timeout 可以用在以下这些方面:
    #1. 同一个sentinel对同一个master两次failover之间的间隔时间。
    #2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。
    #3.当想要取消一个正在进行的failover所需要的时间。
    #4.当进行failover时,配置所有slaves指向新的master所需的最大时间。不过,即使过了这个超时,slaves依然会被正确配置为指向master,但是就不按parallel-syncs所配置的规则来了
    # 默认三分钟
    sentinel known-slave mymaster 127.0.0.1 6379
    # Generated by CONFIG REWRITE
    sentinel known-slave mymaster 127.0.0.1 6380
    sentinel known-sentinel mymaster 127.0.0.1 26381 d7777ec3655a0a82464344db392851c172d44292
    sentinel known-sentinel mymaster 127.0.0.1 26379 251ea0455b959a2f10a0699cbae43bff5e34e728
    sentinel current-epoch 1

    4、为了启动方便在redis文件夹下,分别创建 Redis-x64-2.8.2401_1 启动reids和哨兵配置文件

    可分别建名称为 redisStart1.bat、redisStartSentinel1.bat;redisStart2.bat、redisStartSentinel2.bat;redisStart3.bat、redisStartSentinel3.bat

    举例:

    redisStart1.bat:

    @echo off
    redis-server.exe redis.windows.conf
    @pause

    redisStartSentinel1.bat:

    @echo off
    redis-server.exe sentinel_1.conf --sentinel
    @pause

    reids文件夹下 

    redisStart1.cmd:

    @echo off
    cd Redis-x64-2.8.2401_1
    startRedis1.bat

    redisSentinel1.cmd:

    @echo off
    cd Redis-x64-2.8.2401_1
    redisStartSentinel1.bat

    注:记录一下,加深印象。

  • 相关阅读:
    ubuntu python3 安装pip
    Windows远程桌面连接ubuntu 16
    Python 高级编程——单例模式
    学习资料推荐
    经典 测试开发面试题 (随时更新)
    mac上生成go文件失败报错,gRpc-- protoc-gen-go: program not found or is not executable
    小白从零开始学编程(五)--python数据类型--字符串
    小白从零开始学编程(三)--python基本概念
    小白从零开始学编程(二)--python虚拟环境和编辑器
    小白从零开始学编程--python安装与环境搭建
  • 原文地址:https://www.cnblogs.com/heyt/p/14091628.html
Copyright © 2011-2022 走看看