keepalived
1、VIP virtual ip
2、可以探测对方的存活以及所在节点的检测的软件的存活情况
问题:
1、没有办法解决普通异步复制的丢数据问题
2、keepalived本身存在的问题
(1)脑裂
网络不稳定,跨机房,跨网端
在和数据库搭配做高可用的时候,有可能会造成,这个因为数据流量过多,阻塞心跳信息(设置单独的心跳线)
(2)VIP抢占问题
搭建keepalived
实验环境准备:

主:192.168.168.101
备:192.168.168.102
VIP:192.168.168.100
1、互为主从搭建,采用GTID方式(具体搭建请参考前面已发的博文)
在备库上搭建GTID复制

同样主库作为备库从库

2、挂载yum源,然后安装依赖包(主备都操作)

3、安装keepalived(主备库都操作)

4、编辑keepalived配置文件
vi etc/keepalived/keepalived.conf

参数详解

scp etc/keepalived/keepalived.conf 192.168.168.102:/etc/keepalived/
编辑备库上的keepalived配置文件,权重降低一点即可

5、编辑mysql监测脚本
就是keepalived配置文件中的这部分
script "/etc/keepalived/checkmysql.sh" #检测脚本
主:

备:

并赋予权限
chmod +x checkmysql.sh
6、启动keepalived
先启主库,再启备库
systemctl start keepalived

看到虚拟VIP已经拉起来了
tail -500f var/log/messages

测试VIP飘移
主库上关掉keepalived后,vip不再,出现在了备库上,vip持续可用


恢复如初,再次测试数据库宕机,同样VIP飘移
遇到的坑:






