Mysql MHA搭建

MHA是一种方便简单可靠的MySQL高可用架构该软件由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点)MHA Manager可以单独部署在一台独立的机器上管理多个master-slave集群,也可以部署在一台slave节点上。MHA Node运行在每台MySQL服务器上,MHA Manager会定时探测集群中的master节点,当master出现故障时,它可以自动将最新数据的slave提升为新的master,然后将所有其他的slave重新指向新的master。整个故障转移
摘要由CSDN通过智能技术生成

MHA是一种方便简单可靠的MySQL高可用架构

该软件由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点)

MHA Manager可以单独部署在一台独立的机器上管理多个master-slave集群,也可以部署在一台slave节点上。MHA Node运行在每台MySQL服务器上,MHA Manager会定时探测集群中的master节点,当master出现故障时,它可以自动将最新数据的slave提升为新的master,然后将所有其他的slave重新指向新的master。整个故障转移过程对应用程序完全透明。

在MHA自动故障切换过程中,MHA试图从宕机的主服务器上保存二进制日志,最大程度的保证数据的不丢失,但这并不总是可行的。例如,如果主服务器硬件故障或无法通过ssh访问,MHA没法保存二进制日志,只进行故障转移而丢失了最新的数据。使用MySQL 5.5的半同步复制,可以大大降低数据丢失的风险。MHA可以与半同步复制结合起来。如果只有一个slave已经收到了最新的二进制日志,MHA可以将最新的二进制日志应用于其他所有的slave服务器上,因此可以保证所有节点的数据一致性。

原理图

大概的安装步骤

1) 用ssh-keygen实现四台主机之间相互免密钥登录

2) 安装MHAmha4mysql-node,mha4mysql-manager和perl环境包

3) 管理机manager上配置MHA文件

4) masterha_check_ssh工具验证ssh信任登录是否成功

5) masterha_check_repl工具验证mysql复制是否成功

6) 搭建虚拟IP,MHA自动切换后,IP漂移

7) 启动MHA manager,并监控日志文件

8) 测试master宕机后,是否会自动切换 

9) 处理原master主机,MHA重新修改搭建

下面就开始搭建MHA,mysql的主从已经搭建好了,这里就不介绍主从搭建了。

准备主机和IP分配

主机 IP
MHA管理机 192.168.88.132
mysql master机 192.168.88.129
mysql slave从机1 192.168.88.130
mysql slave从机2 192.168.88.131
虚拟IP  192.168.88.188

 一、四台主机相互免密钥登录

 参考 Linux机器之间免密登录设置_小何117KNO的博客-CSDN博客_linux 免密登录

 例如:在master主机做免密登录

ssh-keygen -t rsa ##enter键执行3次
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.88.130  ##含义是对192.168.88.130登录做免密
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.88.131  ##含义是对192.168.88.131登录做免密
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.88.132  ##含义是对192.168.88.132登录做免密

在4台主机都需要相互做一些免密登录。验证直接

ssh 192.168.88.130

看是否能正常进入

二、安装MHAmha4mysql-node,mha4mysql-manager和perl环境包

① 下载perl环境包

perl-Config-Tiny-2.14-7.el7.noarch.rpm
perl-Email-Date-Format-1.002-15.el7.noarch.rpm
perl-Log-Dispatch-2.41-1.el7.1.noarch.rpm
perl-Mail-Sender-0.8.23-1.el7.noarch.rpm
perl-Mail-Send-Loop-0.3-alt1.noarch.rpm     ##没有装成功 后面发现不需要
perl-Mail-Sendmail-0.79-21.el7.noarch.rpm
perl-MIME-Lite-3.030-1.el7.noarch.rpm
perl-MIME-Types-1.38-2.el7.noarch.rpm
perl-Parallel-ForkManager-1.18-2.el7.noarch.rpm
perl-Params-Validate-1.08-4.el7.x86_64.rpm 

下载的地址在

https://centos.pkgs.org/下载
https://pkgs.org/search/?q=Socket 下载推荐

② 下载MHAmha4mysql-node,mha4mysql-manager

mha manager下载
https://github.com/yoshinorim/mha4mysql-manager/releases
mha node下载
https://github.com/yoshinorim/mha4mysql-node/releases 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值