MySQL的高可用解决方案其实有很多种(想了解自行百度),这里只说其中一种:MHA。这也是当前比较主流的方案。
在搭建MHA之前应该先保证已经安装配置好了MySQL的主从/集群。因为既然是高可用架构,那么针对的肯定是多台设备,单机的话谈不上高可用。
MySQL的主从搭建过程这里就不说了,可以看这里: MySQL搭建主从架构
本次搭建环境:centos7.8 + mysql5.7.31
现在的架构是 :
101:主节点
102:从节点1
103:从节点2
手动将101的MySQL主节点关闭,在102的节点上查看VIP,发现配置的VIP:192.168.232.105已经从101节点漂移到102节点了。
然后在103的节点上可以看到主节点确实已经变成了 102
到此,MHA 搭建大功告成啦!
MHA 的切换过程,共包括以下的步骤:
最后说明一点,宕机的节点,重启后由于MySQL机制问题不会自动加入到集群中,需要我们手动加入。
MHA(Master High Availability) 是自动的 master 故障转移和 slave 提升的软件包。它是基于标准的 MySQL 复制(异步/半同步).MHA 有两部分组成:MHA Manager(管理节点)和 MHA Node(数据节点)。
MHA Manager 可以单独部署在一台独立机器上管理多个 master-slave 集群,也可以部署在一台 slave 上。MHA Manager 探测集群的 node 节点,当发现 master 出现故障的时候,它可以自动将具有最新数据的 slave 提升为新的 master,然后将所有其它的 slave 指向新的 master。整个故障转移过程对应用程序是透明的。
MHA node 运行在每台 MySQL 服务器上(master/slave/manager),它通过监控具备解析和清理 logs 功能的脚本来加快故障转移的过程。
作为前提条件,应先配置 MySQL 复制,并设置 SSH 公钥免密码登录。下面以 CentOS 为例来说明,最好先安装 EPEL( http://fedoraproject.org/wiki/EPEL ),不然 YUM 可能找不到某些软件包。MHA 由 Node 和 Manager 组成,Node 运行在每一台 MySQL 服务器上, 也就是说,不管是 MySQL 主服务器,还是 MySQL 从服务器,都要安装 Node,而 Manager 通常运行在独立的服务器上,但如果硬件资源吃紧,也可以用一台 MySQL 从服务器来 兼职 Manager 的角色。
略 。。。
关于基础介绍及原理略过,直接上 *** 作步骤吧。mysql:5.7
*** 作系统:centos7.4
地址规划:
MHA manage:10.21.20.89
mysql主:10.21.20.71
mysql从1:10.21.20.131
mysql从2:10.21.20.132
vip:10.21.20.77
(3)将mharepo.tar.gz上传四台需要安装的服务器解压。然后新建一个yum文件,指向解压的目录。
(4) 安装MHA,在3台mysql上安装node,在管理节点安装manager。
在主库和从库上观察ip发现,vip已经自动漂移到从库上。至此高可用完成。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)