lvs+keepalived高可用的mysql slave集群

1.lvs的realserver的脚本
vim /usr/sbin/realserver.sh
#!/bin/bash
VIP=192.168.203.77

case "$1" in
start )
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:0

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p
echo "realserver start"
;;
stop )
/sbin/ifconfig lo:0 down
/sbin/route del -host $VIP
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "realserver stop"
;;
* )
echo "argment is wrong"
exit 1
esac
exit 0

2.在主从调度器下载源码包
ipvsadm-1.24.tar.gz
keepalived-1.1.15.tar.gz

3.分别在主从调度器上安装这两个源码包,主服务器192.168.203.57,从服务器192.168.203.58
ln -s /usr/src/kernels/2.6.18-308.1.1.el5-x86_64/ /usr/src/linux 不做这一步,ipvsadm会安装失败

tar zxvf ipvsadm-1.24.tar.gz -C /usr/src
cd /usr/src/ipvsadm-1.24
make && make install


tar zxvf keepalived-1.1.15.tar.gz -C /usr/src
cd /usr/src/keepalived-1.1.15
./configure  && make && make install       
  
cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
cp /usr/local/sbin/keepalived /usr/sbin/

#service keepalived start|stop     做成系统启动服务

4.修改主服务器(192.168.203.57)上/etc/keepalived/keepalived.conf文件,备份服务器(192.168.203.58)只需要修改state的值为BACKUP, priority 的值需要的比主服务器的值小即可,配置文件中的花括号{前,一定要加空格,否则可能会失败

! Configuration File for keepalived

global_defs {
   notification_email {
     leey@afd.com
   }
   notification_email_from leey@afd.com
   smtp_server localhost
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51 #虚拟路由标示,同一个vrrp使用唯一的标示,在同一个vrrp——instance下,master和backup是一致的
    priority 100  #优先级,数字越大优先级越高,master的优先级必须大于backup的优先级
    advert_int 1   #master和backup之间的同步检查的时间间隔
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.203.77
    }
}

virtual_server 192.168.203.77 3306 {
    delay_loop 6 #realserver运行情况的检查时间间隔
    lb_algo lc #负载的调度算法
    lb_kind DR #直接路由方式
    persistence_timeout 50   #session的持续时间.动态网页非常有用
    protocol TCP  #转发的协议,tcp和UDP两种

    real_server 192.168.203.181 3306 {
        weight 1
        TCP_CHECK {
           connect_timeout 3  #realserver的响应超时时间
           nb_get_retry 3   #重试次数
           delay_before_retry 3  #重试的时间间隔
        }
    }

    real_server 192.168.203.182 3306 {
        weight 1
        TCP_CHECK {
           connect_timeout 3
           nb_get_retry 3
           delay_before_retry 3
        }
    }

    real_server 192.168.203.183 3306 {
        weight 1
        TCP_CHECK {
           connect_timeout 3
           nb_get_retry 3
           delay_before_retry 3
        }
    }
    real_server 192.168.203.184 3306 {
        weight 1
        TCP_CHECK {
           connect_timeout 3
           nb_get_retry 3
           delay_before_retry 3
        }
    }

}

5.在realserver(192.168.203.181-184)上执行/usr/sbin/realserver.sh start 脚本,在主从调度器上都打开keepalived服务
这样可以做到lvs的高可用性,并且可以检测realserver的健康状态。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值