haproxy对mysql主主复制的负载均衡中配keepalived实现高可用

在这里插入图片描述
突破单点故障限制,实现热备防止宕机
主主复制的基础和负载均衡的基础之上用keepalived实现热备
keepalived 提供一个vip 虚拟的ip,并监测haproxy1和haproxy2的运行情况,让这个vip在两者间进行抢占(机制有默认,有优先,有宕机后另一个自动获取)
keepalived的安装 yum 安装方式 keepalived-1.2.13-5.el6_6.x86_64
修改其配置文件

vim /etc/keepalived/keepalived.conf
[root@mycat3 ~]# vim /etc/keepalived/keepalived.conf

/bin/bash: Configuration: command not found
bal_defs {                                             //此段暂时略过,下同
   notification_email {
     [email protected]
     [email protected]
     [email protected]
   }
   notification_email_from [email protected]
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}

vrrp_script chk_haproxy {
    script "/etc/keepalived/chk.sh"                      #检查haproxy的脚本
    interval 2                                           #每两秒检查一次
}

vrrp_instance VI_1 {
 state MASTER      #另一台haproxy_bakcup机子改为BACKUP
 interface eth0       #vip的网卡口,不需要加ifcfg-
 virtual_router_id 51   #此id必须为网络内唯一
 priority 100    #另一台haproxy_bakcup机子改为50 最好相差50
 advert_int 1
 authentication {
 auth_type PASS
 auth_pass MrUse
 }
 virtual_ipaddress {
 5.5.5.5      #给出的具体虚拟ip
 }
 }
    track_script {
        chk_haproxy                                    #调用检查脚本  后面还有个脚本编辑
    }

    notify_backup "/etc/init.d/haproxy restart"
    notify_fault "/etc/init.d/haproxy stop"
}

两台haproxy编辑脚本

 vim /etc/keepalived/chk.sh
    #!/bin/bash
#
if [ $(ps -C haproxy --no-header | wc -l) -eq 0 ]; then
       /etc/init.d/keepalived stop
fi

设置的谁先启动谁就抢占vip 5.5.5.5,一台抢到的如果停止服务,另一台代替5.5.5.5
在这里插入图片描述
在这里插入图片描述
把vip改成同局域网的192.168.3.15
在安装有数据库mysql的3.3上,mysql -u rs -p -h 192.168.3.15 -P 7306
在这里插入图片描述
表示连接正常

猜你喜欢

转载自blog.csdn.net/weixin_43945743/article/details/85228784