Redis搭建主从哨兵

本文介绍了如何搭建Redis的主从哨兵系统,包括复制和配置多个Redis实例作为主从库,设置哨兵监控并进行故障转移,以及将Redis和哨兵服务添加到系统服务中。
摘要由CSDN通过智能技术生成

       什么是单点登录单点登录(Single Sign On),简称为 SSO,是比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统

 1.复制多个redis实例,修改server.windows.conf 和redis.windows-service.conf 的port为不同的值

从库的conf中添加  : slaveof 127.0.0.1 6379      //从库配置,隶属于哪个主库实例

slaveof 127.0.0.1 6379      //从库配置,隶属于哪个主库实例
(bind 0.0.0.0 //绑定当前实例的可访问ip 0.0.0.0表示不限制IP
requirepass 123456 //当前实例的密码
masterauth 123456 //从库配置 主库的密码 因为同步的时候需要订阅主库的数据 )

 2.配置完后分别开启三个服务    

在当前文件夹内用cmd运行:redis-server.exe redis.windows.conf 

或者双击redis-server.exe    ps: port 从库端口不生效 可把redis.windows.conf移到redis-server.exe上面

ppp:还闪退→  该端口被占用:

解决: 管理员打开命令行,查看该端口的进程 

netstat -ano |findstr 6380(端口号)

taskkill /PID 5284 /F  强制杀死该进程   

🆗

3.打开主库的redis-cli.exe 用 info replication查看   

 哨兵:

三个实例中添加sentinel.conf 文件 配置

1. port :当前Sentinel服务运行的端口
2.sentinel monitor mymaster 127.0.0.1 6379 2:Sentinel去监视一个名为mymaster的主redis实例,这个主实例的IP地址为本机地址127.0.0.1,端口号为6379,而将这个主实例判断为失效至少需要2个 Sentinel进程的同意,只要同意Sentinel的数量不达标,自动failover就不会执行
3.sentinel down-after-milliseconds mymaster 5000:指定了Sentinel认为Redis实例已经失效所需的毫秒数。当 实例超过该时间没有返回PING,或者直接返回错误,那么Sentinel将这个实例标记为主观下线。只有一个 Sentinel进程将实例标记为主观下线并不一定会引起实例的自动故障迁移:只有在足够数量的Sentinel都将一个实例标记为主观下线之后,实例才会被标记为客观下线,这时自动故障迁移才会执行
4.sentinel parallel-syncs mymaster 1:指定了在执行故障转移时,最多可以有多少个从Redis实例在同步新的主实例,在从Redis实例较多的情况下这个数字越小,同步的时间越长,完成故障转移所需的时间就越长
5.sentinel failover-timeout mymaster 15000:如果在该时间(ms)内未能完成failover操作,则认为该failover失败

分别配置 

 port 26379/26380/26381
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000

 配置后在各自目录下 命令 启动  

redis-server.exe sentinel.conf --sentinel

 查看:   当前目录下  redis-cli.exe -p 26379    用 info sentinel 查看

一主二从三哨兵

pppp将Redis以及哨兵添加到系统服务中:
1、Redis服务:分别进入到三个目录中,以管理员执行以下命令:
主:
redis-server --service-install redis.windows.conf --loglevel verbose --service-name redis6379
从:
redis-server --service-install redis.windows.conf --loglevel verbose --service-name redis6380
redis-server --service-install redis.windows.conf --loglevel verbose --service-name redis6381

2、哨兵服务:分别进入到三个目录中,以管理员执行以下命令:
redis-server --service-install sentinel.conf --sentinel --loglevel verbose --service-name Redissentinel26379
redis-server --service-install sentinel.conf --sentinel --loglevel verbose --service-name Redissentinel26380
redis-server --service-install sentinel.conf --sentinel --loglevel verbose --service-name Redissentinel26381
原文链接:https://blog.csdn.net/qq_35118247/article/details/119390168

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值