keepalived配置lvs使用

keepalived最初專爲LVS設計用來監控LVS集羣系統中各個節點的狀態,後來加入VRRP功能。所以也能夠作nginx,haproxy,mysql的高可用。mysql

VRRP:虛擬路由器冗餘協議,解決靜態路由單點故障。
經過競選協議來實現虛擬路由器的功能,全部的協議報文經過ip多播(多播地址224.0.0.18),虛擬路由器的vrid對外的MAC地址
00-00-5e-00-01-vrid.master會一直髮VRRP廣告包,若是BACKUP收不到廣播包,會本身配置vip起服務。nginx

#############################################################
安裝keepalived
yum install keepalived -ysql

vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
lmkmike#qq.com
}
notification_email_from haproxy-ha@qq.com
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LV-master #每一臺keepalived不同vim

}ide

vrrp_instance VI_1 {
state MASTER #角色 另外改BACKUP
interface eth0 #網卡
virtual_router_id 51 #不能重複
priority 150 #權重 另外改100
advert_int 1 #檢查時間默認1s
authentication {
auth_type PASS
auth_pass haproxy_ha
}
virtual_ipaddress {
192.168.56.10/24
}oop

}設計

vrrp_instance VI_2 {
state BACKUP #角色 另外改MASTER
interface eth0 #網卡
virtual_router_id 60 #不能重複
priority 150 #權重 另外改100
advert_int 1 #檢查時間默認1s
authentication {
auth_type PASS
auth_pass haproxy_ha
}
virtual_ipaddress {
192.168.56.11/24
}
}code

virtual_server 192.168.56.10 80 {
delay_loop 6
lb_algo wrr
lb_kind DR
nat_mask 255.255.255.0
persistence_timeout 300
protocol TCProuter

real_server 192.168.56.100 80 {
    weight 1
    TCP_CHECK {
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
    }
}
    real_server 192.168.56.21 80 {
    weight 1
    TCP_CHECK {
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
    }
}
}

#############################################################
RS要配置VIP和抑制ARP
其餘節點綁定vip
ifconfig lo:0 192.168.56.10/32 up
抑制ARP
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
#############################################################
啓動keepalived
service keepalived startserver

查看lvs當前連接的狀態
ipvsadm -lnc

上線RS時經過修改keepalived.cnf後優雅重啓/etc/init.d/keepalived reload

相關文章
相關標籤/搜索