KeepAlived防止單點故障

負載均衡器裏面,HAProxy比較出名了,可是若是隻用一臺HAProxy,則會出現單點故障。html

這個時候,該KeepAlived出馬了。java

http://www.cnblogs.com/dkblog/archive/2011/07/06/2098949.html (參考文章)linux

----------------------------------------------------------------------環境介紹redis

OS: Ubuntu 12.04後端

虛擬IP: 192.168.56.2負載均衡

KeepAlived + HaProxy : 192.168.56.101 (master)測試

KeepAlived + HaProxy : 192.168.56.102 (backup)日誌

原本應該用HaProxy測試,爲了簡便,直接用兩個redis測試。code

後端對應着兩個redis 分別安裝在192.168.56.101,192.168.56.102上。router

----------------------------------------------------------------------

而後101(master)上的配置爲

! Configuration File for keepalived
global_defs {
   notification_email {
     837500869@qq.com
   }
   notification_email_from 837500869@qq.com
   smtp_server smtp.qq.com
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
vrrp_instance VI_1 {
    state MASTER
    interface eth5
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.56.2
    }
}

 102(backup)的配置爲

! Configuration File for keepalived
global_defs {
   notification_email {
     837500869@qq.com
   }
   notification_email_from 837500869@qq.com
   smtp_server smtp.qq.com
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
vrrp_instance VI_1 {
    state BACKUP
    interface eth5
    virtual_router_id 51
    priority 99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.56.2
    }
}

 PS:由於我只須要VIP浮動,負載均衡交給了HAProxy,因此KeepAlived的負載均衡功能沒有使用。

分別在101和102上啓動KeepAlived  ---  

啓動以前,看看以下:

daemon_mode默認值爲0,而賦值的語句以下:

由於咱們不須要 start_check_child(); 因此啓動參數加上-P便可,前臺打日誌,則加上 -ln

./bin/keepalived    -f   ./keepalived/etc/keepalived/keepalived.conf -P  -ln

 

 而後看VIP是否能夠ping

 估計是iptables未允許vrrp協議.

iptables -A INPUT -p vrrp -j ACCEPT
須要保存?
iptables -L 是列舉出當前的規則 ( )

 再嘗試看看,仍是不行,百度了半天,原來配置文件須要絕對路徑。

./bin/keepalived -f /root/keepalived-1.2.8/keepalived/etc/keepalived/keepalived.conf -P -ln

 這下能夠了

 ping的結果:

接下來啓動2個redis.

啓動101->啓動102->啓動測試程序->掛掉101->啓動101

結果:

 ---後來發現一個問題,這裏並無對HAProxy的監測。

參考: http://www.linuxidc.com/Linux/2012-03/56748.htm

相關文章
相關標籤/搜索