CentOS6.8下MySQL MHA架构搭建笔记

CentOS6.8下MySQL MHA架构搭建笔记

以下是CentOS6.8下MySQL MHA架构搭建笔记

IP资源规划:


   192.168.206.140 slave01(备用master)

   192.168.206.141 slave02

   192.168.206.142 manager

   192.168.206.145 VIP

一、准备工作:

1.关闭Selinux

   [root@localhost ~]# reboot

2.关闭防火墙

   [root@localhost ~]# service iptables stop

3.安装epel yum源

   [root@localhost tmp]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

4.安装MHA node所需的perl模块(DBD:mysql)

二、Replication搭建

1.建立replication用户(master和slave01)

2.建立MHA管理用用户

3.安装半同步复制插件

   mysql> INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';

4.修改my.cnf配置文件

5.master备份slave还原(略),查找master Binlog位置

6.各slave上执行脚本,建立主从配置。(MySQL5.7可以直接使用master_auto_position=1参数)

   mysql> start slave;

三、开始安装配置

1.各节点使用ssh-keygen实现三台机器之间相互免密钥登录

   [root@localhost .ssh]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.206.140
   [root@localhost .ssh]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.206.141
   [root@localhost .ssh]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.206.142

2.所有节点(包括manager)下载安装mha4mysql-node-0.56

由于google被墙,我是直接从网上下载的rpm文件,具体下载过程略。

确认安装内容

3.manager节点安装mha4mysql-manager-0.56

确认安装内容

4.在manager节点管理MHA配置文件

前面采用yum安装的,没有samples文件夹,所以另外down了一份mha4mysql-manager-0.56.tar.gz包(具体过程略)

复制代码

   [root@localhost tmp]# cd mha4mysql-manager-0.56
   [root@localhost mha4mysql-manager-0.56]# mkdir -p /etc/mha/{app1,scripts}
   [root@localhost mha4mysql-manager-0.56]# cp -r samples/conf/* /etc/mha/
   [root@localhost mha4mysql-manager-0.56]# cp -r samples/scripts/* /etc/mha/scripts/
   [root@localhost mha4mysql-manager-0.56]# mv /etc/mha/app1.cnf /etc/mha/app1/
   [root@localhost mha4mysql-manager-0.56]# mv /etc/mha/masterha_default.cnf /etc/masterha_default.cnf

复制代码

5.在manager上设置全局配置

修改master_ip_failover脚本,添加VIP漂移相关三个参数

修改master_ip_online_change脚本,添加VIP漂移相关三个参数

修改masterha_default.cnf全局配置

创建日志目录:

配置app1.cnf:

6.验证安装内容

验证ssh信任

验证主从复制

四、启动MHA、测试MHA故障转移

启动MHA

或者采用后台启动

配置master的VIP

确认VIP

确认MHA启动状态:

进程确认:

关闭MHA Manager监控:

主动切换之交互模式

重新将旧的master加入复制,指向新的master

   mysql> start slave;

主动切换之非交互模式:

Master192.168.206.140宕机模式下切换主从:

原文地址:https://www.cnblogs.com/jiaozhuo/p/6565872.html