Mysql主主中Keepalived的配置
系统版本:centos6.5_x64
Keepalived的版本:keepalived-1.2.20.tar.gz
Vip1:172.18.49.112
Mysq-A:172.18.49.10
Mysql-B:172.18.49.2
安装keepalived:
yum –y install keepalived
Keepalived的主备模式,配置文件修改:
172.18.49.10作为主(master),172.18.49.2作为备(backup),Vip为172.18.49.112。
主keepalived上的配置
Mysql-B上和mysql-A上只有router_id、priority、real_server三处不同,其他配置相同。
配置文件中添加的脚本mysql.sh,在mysql-A和mysql-B上都要添加:
# vim /etc/keepalived/mysql.sh
#!/bin/bash
pkill keepalived
/sbin/ifdown eth0 && /sbin/ifup eth0
# chmod +x mysql.sh
这是一个检测脚本,作用是当mysql停止工作时自动关闭本机的keepalived,当MySQL正常启动之后,要手动启动keepalived服务。
备keepalived也就是mysql-B上的配置:
测试:
在mysql-A和mysql-B上分别执行ip addr show dev eth0命令查看mysql-B和mysql-A主机对VIP(群集虚拟ip)的控制权。
Mysql-A上查看:
Mysql-B上查看:
停止mysql-A服务器上的MySQL服务,看keepalived的监控检查程序是否会触发mysql.sh脚本停止mysql-A主机的mysql服务。
停止mysql-A服务器上的MySQL之后其上面的keepalived的也随之不在运行了,说明mysql.sh脚本执行将keepalived进行杀死了。而且进行了故障切换到了mysql-B服务器上面。