KeepAlived+LVS叢集架構方案學習筆記
一、KEEPALIVED起初就是專門為LVS而設計的,用來監控LVS叢集裡各個節點的狀態,後來加入了VRRP虛擬路由器冗餘協議的功能,除了配合LVS,也能做其他服務的的高可用軟體(NGINX,HAPROXY),VRRP的功能是解決單點路由障礙,能保證網路穩定、不間斷地執行,同時也具有LVS failover功能。
也就是說KeepAlived的功能主要有healthcheck和failover。主LVS宕機之後,備LVS將通過VRRP協議來接管。
工作原理:keepalived主節點工作的時候,會不斷向備節點廣播心跳資訊,用以告訴備節點自己還活著,一旦主節點發生宕機,備節點無法檢測到心跳資訊,就會呼叫自身的接管程式,接管主節點的IP和服務資源。當主節點恢復正常的時候,備節點又會釋放IP和服務資源交還給主節點。
二、VRRP協議:虛擬路由器冗餘協議,它的出現就是為了解決單點路由故障,保證網路穩定不間斷地執行,VRRP通過一種競選協議機制來將路由任務交給某臺VRRP路由器。
在一個VRRP虛擬路由器中,有多臺物理路由器,但只有一臺MASTER路由器處於工作狀態,其他都是BACKUP,VRRP協議讓每一個物理路由器參與競選,最終獲勝的就是MASTER。MASTER擁有虛擬路由器的IP,叢集架構中,業務節點就是通過這個IP地址作為靜態路由,這臺MASTER要負責轉發傳送給閘道器的包和相應ARP請求。
Virtual Route Redundancy Protocol
三、KeepAlived實戰
1. 安裝keepalived
wgethttp://www.keepalived.org/software/keepalived-1.1.9.tar.gz
安裝keepalived最好也檢查一下, 如不做軟連線,需要configure --with-kernel-dir=指定目錄
[[email protected] usr]# ll /usr/src/linux
lrwxrwxrwx. 1 root root 33 Nov 17 2015 /usr/src/linux -> kernels/2.6.32-573.7.1.el6.x86_64
./confgiure
make && make install
2 .
[[email protected]init.d]#cp/usr/local/etc/rc.d/init.d/keepalived/etc/init.d/
[[email protected]init.d]#ls/etc/init.d/keepalived
/etc/init.d/keepalived
3.
[[email protected] etc]# ls /usr/local/etc/sysconfig/keepalived
/usr/local/etc/sysconfig/keepalived
[[email protected] etc]# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
4.
[[email protected] etc]# cp /usr/local/sbin/keepalived /usr/sbin/
[[email protected] etc]# mkdir /etc/keepalived -p
四、KeepAlived配置IP接管功能
! Configuration File for keepalived
global_defs {
router_id LVS_87
}
vrrp_instance VD-1 {
state MASTER
interface eth0
virtual_router_id 87
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 123456
}
virtual_ipaddress {
192.168.0.87/24
}
}
五、KeepAlived指定日誌檔案
轉載於:https://blog.51cto.com/xiangpang/1713329