目录
MySQL高可用群集简介
MHA实战演练
初始化环境
修改节点的主机名
主从同步
安装MHA
故障模拟
故障修复
总结
MySQL高可用群集简介
在实际的生产环境中,当MySQL主从复制和读写分离不能满足实际需求时,就需要考虑MySQL高可用群集了,MySQL高可用群集主要的就有MySQL-MMM(Master-Master replication for MySQL,MySQL主主复制管理器),以及相对成熟的MHA(Master Hight Availability)高可用
MMM是无法完全保证数据的一致性,所有MMM适用于对数据的一致性要求不是很高,但是又想最大程度地保证业务可用性的场景。对于那些对数据的一致性要求很高的业务,非常不建议采用MMM这种高可用架构。
MHA目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本人youshimaton开发,是一套优秀的MySQL故障切换和主从提升的高可用软件。在MySQL故障切换过程中,MHA能做到0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能最大程度上保证数据库的一致性,以达到真正意义上的高可用
MHA架构
MHA由两部分组成:MHA Master(管理节点)和MHA Node(数据节点)。MHA Manager可以部署在一台独立的机器上管理多个Master-Slave群集,也可以部署在一台Slave上。当Master出现故障时,它可以自动将最新数据的Slave提升为新的Master,然后将所有其他的Slave重新指向新的Master。整个故障转移过程对应用程序是完全透明的。
MHA实战演练
初始化环境
Master服务器:192.168.37.101
slave1服务器:192.168.37.102
slave2服务器:192.168.37.106
MHA manager(管理节点服务器):192.168.37.105
开始之前要把防火墙和selinux关闭
修改节点的主机名
在每一台节点服务器添加域名解析
主从同步
———————————————————-master 节点—————————————————–
重启服务
——————————————–Slave1节点——————————————————————-
重启
——————————————–Slave2节点——————————————————————-
重启
设置软链接,每个节点都需要设置
登录数据库
——————————授权主从用户———–主从节点都要配置哦
查看pos偏移量
———————————————————–在从节点配置——————————————–
设置两个从节点只读模式
验证:
主节点创建库和表
从节点
安装MHA
所有服务器上都安装 MHA 依赖的环境,首先安装 epel 源
#安装 MHA 软件包,先在所有服务器上必须先安装 node 组件
#对于每个操作系统版本不一样,这里 CentOS7.6选择 0.57 版本。
#在所有服务器上必须先安装 node 组件,最后在 MHA-manager 节点上安装 manager 组件,因为 manager 依赖 node 组件。
master:
Releases · yoshinorim/mha4mysql-manager · GitHub
node
Releases · yoshinorim/mha4mysql-node · GitHub
我用的0.57 有需要可以领取哦
链接:https://pan.baidu.com/s/1iP24KHVLBr35PlN-tF-m7Q
提取码:xbzs
解压,所有节点服务器都相同操作
MHA-manager节点解压完node(数据节点),再解压管理数据节点
manager 组件安装后在/usr/local/bin 下面会生成几个工具,主要包括以下几个:
masterha
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!