12 LVS+keepalived高可用羣集

LVS+keepalived高可用羣集linux

一 Keepalived雙機熱備安全

·keepalived概述服務器

Keepalived是專門針對LVS設計的一款強大的輔助工具,主要用來提供故障自動切換節點健狀態檢查功能,如判斷LVS負載調度器、節點服務器的可用性,及時隔離並替換爲新的服務器,當故障主機恢復後將其從新加入羣集。在非LVS羣集環境中使用時Keepalived也能夠做爲熱備軟件使用;官方網站:http://www.keepalived.org/負載均衡

·keepalived的熱備方式ide

Keepalived採用VRRP(virtual router redundancy protocol,虛擬路由冗餘協議)熱備份協議,以軟件的方式實現linux服務器的多機熱備功能工具

VRRP是針對路由器的一種備份解決方案-----由多臺路由器組成一個熱備組。經過共用的虛擬IP地址對外提供服務;每一個熱備組內同一時刻只有一臺主服務器提供服務,其餘服務器處於冗餘狀態,若當前在線的服務器失敗,其餘服務器會自動接替(優先級決定接替順序)虛擬IP地址,以繼續提供服務開發工具

熱備組內的每臺服務器均可以成爲主服務器,虛擬IP地址(VIP)能夠在熱備組內的服務器之間進行轉移,因此也稱爲漂移IP地址,使用Keepalived時,漂移地址的實現不須要手動創建虛擬接口配置文件(如eth0:0),而是由Keepalived根據配置文件自動管理測試

二 LVS+keepalived高可用羣集網站

使用Keepalived構建LVS羣集更加簡便易用,主要優點體如今:對LVS負載調度器實現熱備切換,提升可用性,對WEB服務器池中的節點進行分健康檢查,自動移除失敗節點,恢復後再從新加入ui

在基於LVS-Keepalived實現的LVS羣集結構中,至少包括兩臺熱備的負載調度器,兩臺以上的節點服務器,本例將以DR模式的LVS羣集爲基礎,增長一臺從負載調度器,使用Keepalived來實現主、從調度器的熱備,從而構建建有負載均衡、高可用兩種能力的LVS網站羣集平臺

·實驗環境:如圖所示

其中節點服務器都是雙網卡

·配置主調度器

1安裝keepalived支持軟件

在編譯安裝Keepalived以前,必須先安裝內核開發包kernel-devel以及openssl-devel、popt-devel等支持庫(RHEL6中在裝系統時若是勾選開發軟件和開發工具,則會自動安裝)

除此以外,在LVS羣集環境中應用時,也須要用到ipvsadm管理工具,先加載ip_vs模塊

2編譯安裝Keepalived

源碼包從官網下載

使用指定的linux內核位置對keepalived進行配置,並將安裝路徑指定爲根目錄,這樣就無需額外建立連接文件了

3配置爲系統服務

安裝完後會自動生成/etc/init.d/keepalived腳本文件,但還須要手動添加爲系統服務,這樣就可使用service、chkconfig工具來對keepalived服務程序進行管理了

4主服務器的配置文件

Keepalived服務的配置目錄位於/etc/keepalived。其中keepalived.conf是主配置文件,另外包括一個子目錄samples/,提供了許多配置樣列做爲參考。在keepalived的配置文件中,使用"global_defs {……}"區段指定全局參數。使用"vrrp_instance 實例名稱 {……}"區段指定VRRP熱備參數,註釋文字以"!"符號開頭

全局參數

只需定義ID便可,其它自定義或默認

實例參數

這裏只需指定虛擬IP便可,實際環境中最好修改密碼字串確保安全;其它所有默認

優先級中,MASTER表示主服務器;SLAVE表示備用服務器;當有多臺備用的服務器,熱備狀態改成 BACKUP,此狀態是由 priority 的值來決定的,當前priority 的值小於備機的值,那麼將會失去 MASTER 狀態

熱備參數

根據如下參數進行配置,其它多餘內容所有刪除便可

5重啓keepalived服務並配置防火牆

重啓服務配置生效,並設置防火牆使主從之間可以通訊(VRRP協議的通告報文使用固定的組播地址224.0.0.18,用IP 報文做爲傳輸協議進行協議報文的傳送)

·配置從調度器

從調度器的配置與主調度器基本相同,只需調整keepalived配置文件中的router_id、state、prority參數便可,其他內容徹底相同

安裝支持軟件

安裝keepalived軟件包

調整配置文件

直接從主服務器中複製一份配置文件過來

只需修改一下三處便可

重啓服務配置防火牆

總結:在同一個keepalived熱備組內,全部服務器的keepalived配置文件基本相同。不一樣之處主要在於服務器的名稱標識、熱備狀態、優先級

·測試主、從服務器的配置

當以上狀態配置完成後,

實際狀態爲MASTER的主服務器取得VIP控制權,並將eth0接口自動添加VIP地址,經過ip addr show dev eth0命令能夠查看(注意:ifconfig命令看不到)(我這裏配置ip時爲eth1)

主服務器

從服務器

備用服務器中將不會爲eth0接口添加VIP地址

Keepalived的日誌消息保存在/var/log/messages文件中,在測試主、從故障自動切換功能時,能夠跟蹤此日誌文件來觀察熱備狀態的變化

在internet的測試機上執行ping 172.16.16.172 –t,(172.16.16.172爲VIP地址),可以正常ping通,說明主服務器以接管VIP地址,並及時響應客戶機的請求

禁用主服務器的eth0網卡,發現ping測試會中斷3~4個包即恢復正常,說明已有其餘服務器接替VIP地址,並及時響應客戶機的請求

從新啓用主服務器的eth0網卡,發現ping測試再次中斷3~4個包即恢復正常,說明主服務器已恢復正常,並奪回VIP地址的控制權

在上述過程當中能夠查看日誌記錄來了解MASTER、SLAVE狀態的遷移記錄

·配置共享存儲服務器

配置以下

修改/etc/exports文件,內容以下:

/opt/wwwroot 192.168.7.0/24(rw,sync,no_root_squash)

容許192.168.7.0/24網段的主機訪問NFS的共享

·配置節點服務器

節點服務器的配置與在DR模式中節點服務器的配置徹底同樣

1調整/proc響應參數

2配置虛擬IP地址

3添加VIP本地訪問路由

4鏈接共享目錄

5安裝httpd服務,開啓服務並建立測試頁

6配置防火牆策略

其餘節點服務器一樣的配置

·測試訪問

使用VIP進行訪問

在主調度器上觀察

在從調度器上觀察

模擬主調度器宕機(關閉網卡),再測試

查看從調度器,能夠看出從調度器自動擔任了主調度器的角色

至此有關LVS+keepalived羣集配置完畢,這樣即實現了lvs負載平衡又實現了調度器的熱備

相關文章
相關標籤/搜索