keepalived+mysql 高可用集群

Posted 三木燕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了keepalived+mysql 高可用集群相关的知识,希望对你有一定的参考价值。

mysql 为主主模式参考 https://my.oschina.net/sanmuyan/blog/877373

192.168.100.129 mysql 主节点/keepalived 主节点
192.168.100.130 mysql 备节点/keepalived 备节点
192.168.100.150 虚拟IP

 

 

 

主备节点

yum install keepalived -y
vim  /etc/keepalived/keepalived.conf
! Configuration File for keepalived

vrrp_instance VI_1 {
    state MASTER    #备节点设置为BACKUP
    interface eth0
    virtual_router_id 51 #主备保持一致
    priority 100 #备节点90
    advert_int 1
    nopreempt
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.100.150  #虚拟IP
    }
}

virtual_server 192.168.100.150 3306 { #虚拟IP
    delay_loop 6
    nat_mask 255.255.255.0
    persistence_timeout 50
    protocol TCP

    real_server 192.168.100.129 3306 { #真实IP 备节点为192.168.100.130
    weight 3
    notify_down /root/mysql.sh   #如果本地IP 3306端口宕掉 则执行该脚本(杀死keepalived进程)
    TCP_CHECK {
    connect_timeout 3   
    nb_get_retry 3       
    delay_before_retry 3 
  }
}


[root@localhost ~]# vim mysql.sh
#!/bin/bash
pkill keepalived

[root@localhost ~]# chmod +x mysql.sh 

  


实验

 

说明keepalived已经开始工作

关闭主服务器  短暂的超时备服务器接管了虚拟IP

 

keepalived进程正在运行

[root@localhost ~]# ps -el | grep keepalived
1 S     0  16274      1  0  80   0 - 27926 poll_s ?        00:00:00 keepalived
5 S     0  16275  16274  0  80   0 - 28487 poll_s ?        00:00:00 keepalived
5 S     0  16276  16274  0  80   0 - 28457 poll_s ?        00:00:00 keepalived
[root@localhost ~]# systemctl stop mysqld  关闭mysql服务

  

keepalived 进程已经被kill

 

 

以上是关于keepalived+mysql 高可用集群的主要内容,如果未能解决你的问题,请参考以下文章

keepalived+mysql 高可用集群

keepalived+MHA实现mysql主从高可用集群

基于keepalived搭建MySQL的高可用集群

MySQL+Keepalived主从高可用集群原理+实战

MySQL集群之keepalived实现mysql双主高可用

MySQL+Keepalived主从高可用集群原理+实战