本文介绍Redis在windows上的高可用配置——哨兵部署。
一、先简单介绍一下哨兵高可用原理
(了解的可以直接跳过)
1 主从redis服务器。为了预防主实例master挂掉,额外增加两个slave实例,时刻与master信息同步以备用。
2 哨兵智能选举master。为了在master挂掉之后能够智能地采用slave实例,而不用手动去变更,配备哨兵sentinel来做监控器,以调配出master。以此完成高可用。
二、安装步骤
以下步骤先对Redis主从服务,哨兵服务进行配置,配置好之后再依次启动,启动完成后再做验证。验证步奏可以穿插在启动步奏中,可以验证从服务器是否启动成功,以免影响哨兵服务器的启动。
1.Redis安装
略
2 Redis实例分配
2.1 Redis主从配置:
在Redis安装目录下找到redis启动配置文件——redis.window.conf文件,复制两份作为从服务的启动文件。
修改两个从文件的配置内容,设置port和slaveof
port 6380
slaveof 127.0.0.1 6379
masterauth yourpassword #若有密码这里需要设置
2.2 Redis哨兵配置
新建三个配置文件,一般命名为sentinel.conf,其他两个文件命名为sentinel26479.conf、sentinel26579.conf.
配置文件内容:
(这里要注意的是,需要在port前面设置bind 127.0.0.1 不然会报错,因为Redis哨兵请求的是基于Pv6协议的网络;mymaster是你自己命名的主,如果你有其他命名,要对应)
bind 127.0.0.1
port 6388
sentinel myid df74029ad5ecbd7677fe8a9e18a97ee086e721c2
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000
sentinel auth-pass mymaster yourpassword
2.3 Redis实例启动
2.3.1 启动master
redis-server redis-window.conf
2.3.2 启动slave
redis-server redis6380.conf
redis-server redis6381.conf
启动成功界面:
2.3.3 启动哨兵
redis-server sentinel.conf --sentinel
redis-server sentinel26479.conf --sentinel
redis-server sentinel26579.conf --sentinel
启动成功界面:
2.4 验证
(1) 验证slave
进入master实例的客户端
redis-cli -h 127.0.0.1 -p 6479 -a yourpassword
客户端交互模式下输入,查看是否能获取到slave连接信息
info replication
(2) 验证sentinel
进入sentinel实例的客户端
redis-cli -h 127.0.0.1 -p 26379 -a yourpassword
客户端交互模式下输入
info sentinel
如有不足之处,欢迎指出。