【IT老齐016】七张图讲明白MySQL高可用MHA架构方案

138 阅读1分钟

配合视频效果更佳:www.itlaoqi.com/chapter.htm…

MHA是小日子过得还不错的霓虹国程序员yoshinorim开发的MySQL高可用方案,采用Perl语言开发,MHA是最成熟MySQL高可用方案之一。

MHA架构图总览

MHA的组成部分

MHA故障发现与转移过程

MHA manager基于SSH登录检查,所有Slave连接不上Master认定宕机

断开已有连接

找到同步率最高的slave,向其他slave进行差异同步

将旧master binlog差异部分发到哥哥slave并应用

三种选主策略

自动将VIP漂移到新主对外提供服务

旧日支配者恢复后自动降级为Slave挂到new master

MHA优缺点

MHA优点:

由per语言开发的开源工具可以支持基于GTID的复制模式

当主DB不可用时,从多个从服务器中选举出来新的主DB 提供了主从切换和故障转移功能,在线故障转移时不易丢失数据同一个监控节点可以监控多个集群

MHA缺点:

需要编写脚本或利用第三方工具来实现VIP的配置

MHA启动后只只监控主服务器是否可用,没办法监控从服务器需要基于SSH免认证登陆配置,存在一定的安全隐患没有提供从服务器的读负载均衡功能