安装环境
操作系统:Windows7 64位
Redis版本:Redis-x64-3.2.100
集群配置
主:127.0.0.1:6379
从:127.0.0.1:6380
从:127.0.0.1:6381
哨兵:127.0.0.1:26379
哨兵:127.0.0.1:26380
哨兵:127.0.0.1:26381
详细步骤
思路:复制三份Redis安装目录,模拟三个Redis服务节点,一个主节点、两个从节点,Redis配置只需修改从节点的,然后,需要在每个节点创建一个哨兵配置文件sentinel.conf,最后,各自创建方便启动的脚本。
与普通的主从模式不同的地方是,在每个节点增加了一个哨兵配置,多启动了一个哨兵进程,用于监听节点的运行状态。
1、Redis默认端口6379,主节点配置不用改,只修改从节点配置,具体参数如下
#从节点端口
port 6380
#主节点IP和端口
slaveof 127.0.0.1 6379
2、在3个Redis主目录下,分别创建sentinel.conf配置文件,配置参数与下面类似,记得修改一下哨兵端口、监听节点的IP和端口
bind 127.0.0.1
# 当前Sentinel服务运行的端口
port 26379
# 哨兵监听的主服务器
sentinel monitor mymaster 127.0.0.1 6379 2
# 3s内mymaster无响应,则认为mymaster宕机了
sentinel down-after-milliseconds mymaster 3000
# 如果10秒后,mysater仍没启动过来,则启动failover
sentinel failover-timeout mymaster 10000
# 执行故障转移时,最多有1个从服务器同时对新的主服务器进行同步
sentinel parallel-syncs mymaster 1
sentinel monitor [master-group-name] [ip] [port] [quorum]
master-group-name:master名称(可以自定义)
ip port : IP地址和端口号
quorun:票数,Sentinel需要协商同意master是否可到达的数量。
3、在主从Redis根目录下,创建一个快速启动脚本startReidsServer.bat
@echo off
redis-server.exe redis.windows.conf
@pause
4、在主从Redis根目录下,创建Sentinel启动脚本startRedisSentinel.bat
@echo off
redis-server.exe sentinel.conf --sentinel
@pause
5、在主从Redis根目录同级目录下,创建3个快速启动脚本start6379.cmd、start6380.cmd、start6381.cmd,cd的目录记得换一下
@echo off
cd Redis-x64-3.2.100-6379
startRedisServer.bat
6、在主从Redis根目录同级目录下,创建3个快速启动脚本start26379.cmd、start26380.cmd、start26381.cmd,cd的目录记得换一下
@echo off
cd Redis-x64-3.2.100-6379
startRedisSentinel.bat
启动
整完之后大概这样子的
先启动主节点,再启动从节点。也就是先执行start6379.cmd,然后,再执行start6380.cmd、start6381.cmd。
最后,启动3个哨兵服务。