windows10配置redis一主二从三哨兵
windows10配置redis一主二从三哨兵
1.下载Redis安装包,并且复制三份,名字分别为,Redis-6379,Redis-6380,Redis-6381
2.修改配置文件(redis.windows.conf)
1.主配置文件修改内容(6379)
#redis访问端口号
port 6379
#(绑定redis访问地址,10.112.11.186是内网地址,即你cmd中ipconfig命令出来的ipv4ip地址,可以是公网ip,也可以是私网ip);
bind 127.0.0.1
2. 从配置文件修改内容(6380)
#redis访问端口号
port 6380
#(绑定redis访问地址,10.112.11.186是内网地址,即你cmd中ipconfig命令出来的ipv4ip地址,可以是公网ip,也可以是私网ip);
bind 127.0.0.1
3. 从配置文件修改内容(6381)
#redis访问端口号 port 6381 #(绑定redis访问地址,10.112.11.186是内网地址,即你cmd中ipconfig命令出来的ipv4ip地址,可以是公网ip,也可以是私网ip); bind 127.0.0.1
3.启动服务
1.可以将服务加在bat文件中一键启动
在redism目录下新建一个 startRedisServer.bat
@echo off redis-server.exe redis.windows.conf @pause
2.在和redis文件夹同级建三个cmd 启动文件,start6379.cmd,start6380.cmd,start6381.cmd
@echo off cd Redis-x64-2.8.2-6379 startRedisServer.bat
@echo off cd Redis-x64-2.8.2-6380 startRedisServer.bat
@echo off cd Redis-x64-2.8.2-6381 startRedisServer.bat
启动后页面
验证是否79是master,80,81是slave
1.使用连接工具
2.输入 info replication 查看是否和配置的一样
这样一主两从就搭建好啦
4.三哨兵搭建
1.在redis文件夹下建一个 sentinel-26379.conf,sentinel-26380.conf ,sentinel-26381.conf
2.主配置文件内容(6379)
# 配置 sentinel 端口号 port 26379 # 以守护进程启动 daemonize yes # 绑定只在本地使用 bind 127.0.0.1 # 日志文件名称 logfile "sentinel_26379.log" # 日志文件存放地址 dir "./" # 监控 master 名字叫做 mymaster,地址是 127.0.0.1 端口号是 6379,1 表示有几个 sentinel 认为该 master 出现故障,触发主备切换动作 sentinel monitor mymaster 127.0.0.1 6379 2 # 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观上认为主节点下线 默认30秒 sentinel down-after-milliseconds mymaster 30000 # 主备切换时,多少个从服务器同步更新数据,数值越小越好 sentinel parallel-syncs mymaster 1 # 故障转移的超时时间 failover-timeout 可以用在以下这些方面: #1. 同一个sentinel对同一个master两次failover之间的间隔时间。 #2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。 #3.当想要取消一个正在进行的failover所需要的时间。 #4.当进行failover时,配置所有slaves指向新的master所需的最大时间。不过,即使过了这个超时,slaves依然会被正确配置为指向master,但是就不按parallel-syncs所配置的规则来了 # 默认三分钟 sentinel failover-timeout mymaster 180000
从配置文件(6380、6381)
# 配置 sentinel 端口号 port 26380 # 以守护进程启动 daemonize yes # 绑定只在本地使用 bind 127.0.0.1 # 日志文件名称 logfile "sentinel_26380.log" # 日志文件存放地址 dir "./" # 监控 master 名字叫做 mymaster,地址是 127.0.0.1 端口号是 6379,1 表示有几个 sentinel 认为该 master 出现故障,触发主备切换动作 sentinel monitor mymaster 127.0.0.1 6379 2 # 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观上认为主节点下线 默认30秒 sentinel down-after-milliseconds mymaster 30000 # 主备切换时,多少个从服务器同步更新数据,数值越小越好 sentinel parallel-syncs mymaster 1 # 故障转移的超时时间 failover-timeout 可以用在以下这些方面: #1. 同一个sentinel对同一个master两次failover之间的间隔时间。 #2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。 #3.当想要取消一个正在进行的failover所需要的时间。 #4.当进行failover时,配置所有slaves指向新的master所需的最大时间。不过,即使过了这个超时,slaves依然会被正确配置为指向master,但是就不按parallel-syncs所配置的规则来了 # 默认三分钟 sentinel failover-timeout mymaster 180000
# 配置 sentinel 端口号 port 26381 # 以守护进程启动 daemonize yes # 绑定只在本地使用 bind 127.0.0.1 # 日志文件名称 logfile "sentinel_26381.log" # 日志文件存放地址 dir "./" # 监控 master 名字叫做 mymaster,地址是 127.0.0.1 端口号是 6379,1 表示有几个 sentinel 认为该 master 出现故障,触发主备切换动作 sentinel monitor mymaster 127.0.0.1 6379 2 # 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观上认为主节点下线 默认30秒 sentinel down-after-milliseconds mymaster 30000 # 主备切换时,多少个从服务器同步更新数据,数值越小越好 sentinel parallel-syncs mymaster 1 # 故障转移的超时时间 failover-timeout 可以用在以下这些方面: #1. 同一个sentinel对同一个master两次failover之间的间隔时间。 #2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。 #3.当想要取消一个正在进行的failover所需要的时间。 #4.当进行failover时,配置所有slaves指向新的master所需的最大时间。不过,即使过了这个超时,slaves依然会被正确配置为指向master,但是就不按parallel-syncs所配置的规则来了 # 默认三分钟 sentinel failover-timeout mymaster 180000
5. 启动三哨兵
1.用bat文件启动,在redis文件夹下建立一个startRedisSentinel.bat
@echo off redis-server.exe sentinel-26379.conf --sentinel @pause
2. 在和redis 同级添加一个cmd 启动哨兵
@echo off cd Redis-x64-2.8.2-6379 startRedisSentinel.bat
启动后页面
测试当79,挂啦,是否自动切换主机
81 ----》切到啦master,所以一主两从Redis高可用配置搭建完成
参考blog:https://my.oschina.net/warm6Y/blog/3223398/print
致敬:2020年的自己
--------------------------------------------
即使不为了什么远大理想,为了好好生活,你也得努力奋斗啊,不然别说什么风花雪月了,柴米油盐也能让你一筹莫展。