【原创】MHA二次检测功能测试
MHA提供了很多扩展的功能,其中有一个参数是secondary_check_script,这个参数可以使我们自定义扩展多路由,多链路的二次检测功能。减少网络故障切换,降低脑裂的发生。
在虚拟机上做了如下测试,供大家参考。
5台服务器,MySQL版本5.7.18,角色如下:
Master(192.168.137.100)
Slave1(192.168.137.101)
Slave2(192.168.137.102)
MHA Manager(192.168.137.120)
Monitor1(192.168.137.103)
在配置文件中增加二次检测脚本
模拟测试:
【场景一】,
MHA Manager与Master之间通讯中断
MHA Manager与Monitor1之间通讯正常,Monitor1与Master之间通讯正常
从日志中可以看到当MHA Manager与Master之间通讯中断,检测超时后,开始二次检测,MHA Manager
尝试通过连接其他的监控服务器(192.168.137.103)检测是否能建立到Master的55944端口的连接。如果可以连接成功,认为master还活着,不会发生failover。然后继续下一次检测。
【场景二】,
MHA Manager与Master之间通讯中断
MHA Manager与Monitor1之间通讯中断,Monitor1与Master之间通讯正常
MHA Manager与Master和Monitor1之间的通讯全部中断,判断是网络问题,不发生failover,继续下一次检测。
【场景三】,
MHA Manager与Master之间通讯恢复
MHA Manager与Monitor1之间通讯正常,Monitor1与Master之间通讯正常
MHA Manager与Master之间的通讯恢复,停止二次脚本的检测。
【场景四】,
MHA Manager与Master之间通讯中断
MHA Manager与Monitor1之间通讯正常,Monitor1与Master之间通讯中断
MHA Manager及二次检测脚本中定义的其他Monitor服务器与Master都连接超时,发生failover。
其他公司关于二次检测的应用
1、魅族
2、安居客
3、美团点评
【原创】MHA二次检测功能测试的更多相关文章
- Python公众号开发(二)—颜值检测
上篇文章,我们把自己的程序接入了微信公众号,并且能把用户发送的文本及图片文件原样返回.今天我们把用户的图片通过腾讯的AI平台分析后再返回给用户. 为了防止我的文章被到处转载,贴一下我的公众号[智能制造 ...
- AI佳作解读系列(二)——目标检测AI算法集杂谈:R-CNN,faster R-CNN,yolo,SSD,yoloV2,yoloV3
1 引言 深度学习目前已经应用到了各个领域,应用场景大体分为三类:物体识别,目标检测,自然语言处理.本文着重与分析目标检测领域的深度学习方法,对其中的经典模型框架进行深入分析. 目标检测可以理解为是物 ...
- 谈谈MySQL死锁之二 死锁检测和处理源码分析
这一篇主要是通过一个实验来进行描述,过程是比较枯燥的. 实验准备 create table test_lock(id int auto_increment primary key ,stock int ...
- Netty实践二(心跳检测)
我们使用Socket通信一般经常会处理多个服务器之间的心跳检测,一般来讲,我们去维护服务器集群,肯定要有一台或几台服务器主机(Master),然后还应该有N台(Slave),那么我们的主机肯定要时时刻 ...
- 微弱信号二次谐波检测的FPGA的实现-总结
首先还是把握大的系统框架: 我要实现的部分不包括DA以及AD的转换,主要是将SSP接收到的数据送入到FIFO中,然后经过FIR带通滤波器的处理后对该信号计算幅值并做PSD,然后处理的信号经过积分够一方 ...
- jquery选择器(原创)<二>
jquery选择器,选择接着学: 前面学习了基本选择器中的CSS选择器,现在学层级选择器: 1.子元素选择器 子元素选择器,用于在给定的父元素下,查找这个父元素下面的所有的子元素,语法格式,如下: $ ...
- [原创]pg_shard使用场景及功能测试
pg_shard是一个PostgreSQL的sharding extension.可以用于Shards.Replicates tables和高可用.它可以在不修改Applications的情况下无缝分 ...
- MHA 安装过程 原创
root@monitor yum.repos.d]# cat CentOS-Base.repo [base]name=CentOS-$releasever - Basefailovermethod=p ...
- MYSQL + MHA +keepalive + VIP安装配置(二)--MHA的配置
一.总概 1.MHA介绍 MHA(Master High Availability)是自动的master故障转移和Slave提升的软件包.它是基于标准的MySQL复制(异步/半同步). MH ...
随机推荐
- [转]坐在马桶上看算法:只有五行的Floyd最短路算法
此算法由Robert W. Floyd(罗伯特·弗洛伊德)于1962年发表在“Communications of the ACM”上.同年Stephen Warshall(史蒂芬·沃舍尔)也独立发表了 ...
- 富文本存储型XSS的模糊测试之道
富文本存储型XSS的模糊测试之道 凭借黑吧安全网漏洞报告平台的公开案例数据,我们足以管中窥豹,跨站脚本漏洞(Cross-site Script)仍是不少企业在业务安全风险排查和修复过程中需要对抗的“大 ...
- 20165227 学习基础和C语言基础调查
学习基础和C语言基础调查 技能学习经验和感悟 你有什么技能比大多人(超过90%以上)更好? 如果非要说出来一个的话,那就是篮球了.从热爱篮球,到热爱打篮球,经历挫折阻碍,不断反思学习,一步一步地向前迈 ...
- Jenkins忘记用户名密码
一.进入C盘.jenkins配置文件中找到config.xml 需要删除一下内容: <useSecurity>true</useSecurity> <authorizat ...
- python 写入execl记录
记录代码中关于写execl的操作 # 创建execl workbook = xlwt.Workbook(encoding='utf8') # 创建样式实例 style = xlwt.XFStyle() ...
- C# TimeSpan获取 年月
public static string GetYearMonthDayString(this DateTime expires) { try { var now = DateTime.Now; Ti ...
- R语言以及RStdio的安装
R语言: 首先从官网上下载R安装包, 提供了Linux, (Mac) OS X, Windows的安装包相关下载链接. RStdio: RStdio(官网)是R言语非常实用的IDE, 是一个免费的软件 ...
- KVM virsh常用命令篇
1.查看运行的虚拟机 virsh list 2.查看所有的虚拟机(关闭和运行的虚拟机) virsh list --all 3.连接虚拟机 virsh console +域名(虚拟机的名称) 4.退出虚 ...
- Code Conventions for the JavaScript Programming Language
This is a set of coding conventions and rules for use in JavaScript programming. It is inspired by t ...
- Linux基础 - tmux
安装 yum install tmux 类似vim当中存在命令行模式以及编辑模式,从编辑模式进入命令行模式需要先按ESC键,在tmux当中进行操作也要先准备好"姿势"再操作,默认情 ...