Windows下redis主从哨兵配置

 复制六份redis,修改各个配置文件

主服务配置(redis.windows.conf)
port 6000
bind 192.168.1.223
requirepass 123456 

从1服务配置(redis.windows.conf)
port 6001
bind 192.168.1.223
slaveof 192.168.1.223 6000
masterauth 123456
requirepass 123456

从2服务配置(redis.windows.conf)
port 6002
bind 192.168.1.223
slaveof 192.168.1.223 6000
masterauth 123456
requirepass 123456

哨兵1配置(sentinel.conf)
port 60000
bind 192.168.1.223

sentinel monitor mymaster 192.168.1.223 6000 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000
sentinel auth-pass mymaster 123456
protected-mode yes

哨兵2配置(sentinel.conf)
port 60001
bind 192.168.1.223

sentinel monitor mymaster 192.168.1.223 6000 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000
sentinel auth-pass mymaster 123456
protected-mode yes

哨兵3配置(sentinel.conf)
port 60002
bind 192.168.1.223

sentinel monitor mymaster 192.168.1.223 6000 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000
sentinel auth-pass mymaster 123456
protected-mode yes

redis.windows.conf文件中   port和bind是修改项,其他直接添加

sentinel.conf文件没有的可以直接新建并粘贴进去

配置完成后,运行cmd进入对应目录下

首先将主从服务注册到本地:

D:\develop\redisMasterSlaves\Redis-x64-3.2.100 -master>redis-server --service-install redis.windows.conf --loglevel verbose  --service-name redis6000

D:\develop\redisMasterSlaves\Redis-x64-3.2.100 -slave1>redis-server --service-install redis.windows.conf --loglevel verbose  --service-name redis6001

D:\develop\redisMasterSlaves\Redis-x64-3.2.100 -slave2>redis-server --service-install redis.windows.conf --loglevel verbose  --service-name redis6002

再将三个哨兵注册到本地:

D:\develop\redisMasterSlaves\Redis-x64-3.2.100 -sentinel -60000>redis-server --service-install sentinel.conf --sentinel  --loglevel verbose  --service-name redissentinel60000

D:\develop\redisMasterSlaves\Redis-x64-3.2.100 -sentinel -60001>redis-server --service-install sentinel.conf --sentinel  --loglevel verbose  --service-name redissentinel60001

D:\develop\redisMasterSlaves\Redis-x64-3.2.100 -sentinel -60002>redis-server --service-install sentinel.conf --sentinel  --loglevel verbose  --service-name redissentinel60002

最后在services.msc中启动刚才配置好的服务

Windows下redis主从哨兵配置_第1张图片

验证主从:

首先启动主服务的客户端,redis-cli -h [ip地址] -p [端口] -a [密码],然后输入info replication,可以看到下面的信息

Windows下redis主从哨兵配置_第2张图片

接着启动从服务的客户端,redis-cli -h [ip地址] -p [端口] -a [密码],然后输入info replication,可以看到下面的信息

Windows下redis主从哨兵配置_第3张图片

主从验证成功之后,接下来验证哨兵:

启动哨兵客户端,redis-cli -h [ip地址] -p [端口],然后输入info sentinel,可以看到下面的信息,可以知道目标监视的服务有2个slave,4个sentinel

Windows下redis主从哨兵配置_第4张图片

主从哨兵都确认配置成功并已经启动成功,接下来进行最后一步,验证主服务宕机后哨兵是否进行故障转移

进入主服务客户端,执行shutdown命令

 接着进入哨兵客户端,执行info sentinel命令,可以发现,主服务已经从6000换成6001了

Windows下redis主从哨兵配置_第5张图片

然后启动6000端口的服务,再进入6000端口的客户端,执行info replication,可以看到该端口从master变成slave

Windows下redis主从哨兵配置_第6张图片

 

你可能感兴趣的:(redis)