mha如何管理多套mysql集群_Mysql 集群高可用方案 MHA

MHA是什么?

MHA(master high availability) 是用来保证 Mysql 集群高可用性的,对 master 进行监控,发现 master 出现故障后,自动进行故障转移,从众多 slave 中选举出新的 master,并使其他 slave 与新 master 进行同步

主要特点是故障处理速度快,最大程度上保证数据不丢失

工作原理

当 master 出现故障后,MHA 会尽快抢救数据,尝试到 master 中获取二进制日志,如果不是物理故障,通常可以成功拿到

选举出新的 master,规则是看哪个 slave 上的数据是最新的

找出最新 slave 后,其他 slave 会对比最新 slave 的数据,看自己有哪些差距,形成差异日志

如果从故障 master 中成功获取了二进制日志的话,会在这个最新 slave 上进行回放,保证数据一致

把这个最新 slave 提升为新的 master

其它 slave 应用相应的差异日志,并开始从新的 master 开始复制

优势

(1)故障处理速度快

一般在 30s 内就可以完成

(2)数据安全性好

slave 之间使用差异日志,保证了数据的一致,通过半同步复制的配合,几乎可以保证数据不丢失

(3)易扩展

使用 Perl 开发,开源,开放接口,支持其他语言开发扩展

修改原有功能代码和扩展开发都很方便

(4)可以监控多个集群

一个 MHA 管理服务器可以管理多个集群

不足

(1)只监控 master

MHA 只保证了 master 的高可用,并没有监控 slave 的状态,例如某 slave 出现复制中断、延迟增加等问题,都是不知道的

(2)没有集成虚拟IP的配置

在故障转移时,为使对外透明,需要使用虚拟IP,MHA没有自动实现VIP,需要我们自己实现

(3)安全问题

MHA 要求所有服务器之间都配置SSH免登录,存在一定的安全隐患,如果某台服务器出现了安全问题,那么就可能影响其他服务器

MHA 是目前非常成熟的高可用性方案,这里先大体了解下MHA,之后再详细介绍配置过程

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值