记一次官方redis cluster集群和sentinel哨兵模式结合下的节点故障切换不了的排查过程

环境:

redis cluster集群分别在三个ip上部署了9个节点(7001-7009),三个主节点六个从节点;节点中主从数据同步确保正常;再在三个ip上部署了sentinel26379,sentinel26380,sentinel26381三个哨兵;

客户端连接:

  1. 使用ServiceStack组件 + .NET CORE 6.0;使用的哨兵+卡槽计算方式创建连接(ServiceStack官网信息说不支持redis cluster集群分区模式连接,要用redis sentinel哨兵模式创建连接,如果要用redis cluster集群分区模式得客户端代码实现,过程比较复杂)。

 

 

  1. 备用方案csredis组件 + .NET CORE 6.0;支持redis cluster集群分区和redis sentinel哨兵模式创建连接。
  2. 备用方案StackExchange组件 + .NET CORE 6.0;支持redis cluster集群分区和redis sentinel哨兵模式创建连接。

故障现象:

一、在csredis组件下出现的故障现象

在测试用例高压状态下手动kill掉当前应用命中的主节点,在配置的主从切换时间内没有顺利切换成功。

下例截图是使用csredis组件进行分析(这组件可以在控制台直观的显示出节点的状态和切换情况

这个是在Redis Sentinel创建的连接

官网例子

 

 

我们的tcp应用

 

 

 

 

第一步先确认redis节点的状态

 

 

上图可以看出目前主节点是7001,7007,7008

第二步再确认sentinel哨兵的监控状态

 

 

上图可以看出哨兵监控到的主节点信息状态是正常的;

第三步启动tcp应用程序进行测试用例压测

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值