keepalived介紹,入門,安裝

Keepalived介紹
Keepalived是一款用於保障服務高可用性的軟件,它能自動偵測服務器狀態、移出
故障服務器、切換到正常運行的服務器、添加恢復後的服務器到集羣中。
n 實現的基本思路
Keepalived是基於VRRP協議的實現,主要用在IP層、TCP層和應用層。
1:IP層:Keepalived會按期向服務器羣中的服務器發送一個數據包(既Ping),若是發現IP
地址沒有激活,Keepalived便報告這臺服務器失效,並將它從服務器羣中剔除。
2:TCP層:相似IP層,只不過這裏是檢測服務的端口
3:應用層:Keepalived將根據用戶的設定來檢查服務程序的運行是否正常
  VRRP協議解決的問題
在現實網絡中,兩臺服務器之間一般是沒有直接鏈接的,那麼A機如何選擇到達B機
的路由呢?一般的解決方案有兩種:
1:在A機上使用動態路由協議(問題:管理維護成本、是否支持等)
2:在A機上配置靜態路由(問題:路由器或默認的網關成單點、需重啓網絡等)
VRRP協議的目的就是解決路由單點故障問題。html

 VRRP協議1:
VRRP (Virtual Router Redundancy Protocol),虛擬路由冗餘協議,是解決局域網
中配置靜態網關出現單點故障的路由協議。
在具備多播或廣播能力的局域網中,藉助VRRP能在某臺路由器出現故障時仍然提供
高可靠的缺省鏈路,有效避免單一鏈路發生故障後網絡中斷的問題,而無需修改動態路由
協議、路由發現協議等配置信息。
名詞解釋
1:VRRP路由器:物理的路由器,上面運行了實現VRRP協議的VRRPD程序
2:VRRP虛擬路由器:邏輯上的路由器,一般由多臺路由器組成,能夠當作是一個VRRP路由器
池,對外看起來是一個路由器,就是那個虛擬的路由器,其標識稱爲VRID(範圍是0-255)
3:Master和Backup:一個虛擬路由裏面的多個路由器,並非同時工做的,工做的那臺稱爲
Master,其餘的就是Backup。linux


 對VRRP協議的理解
1:VRRP是一種選擇協議,它能夠把一個虛擬路由器的職責,動態轉交給Master進行處理
2:VRRP是一種路由容錯協議,也能夠叫作備份路由協議。當Master宕掉後,虛擬路由將啓用
備份路由器,從而實現網絡通訊可用服務器

  VRRP協議工做機制
1:路由器開啓VRRP功能後,會根據優先級肯定出Master
2:Master會經過IP多播包的形式來發送公告報文,Backup會接收到這些報文
3:若是是搶佔式:Backup會跟發送報文的Master比較優先級,若是Backup優先級更
高,那麼Backup會搶佔成爲Master,而Master會讓位成爲Backup
4:若是是非搶佔式:只要Master沒有故障,不會出現新的Master。
5:若是備份路由器在連續三個公告間隔內收不到VRRP公告,或收到優先級爲0的公
告的話,就會按照競選協議來選出新的Master,以保證服務的可用
  VRRP負載分擔
在實際組網中通常會進行VRRP負載分擔方式的設置。負載分擔方式是指多
臺路由器同時承擔業務,避免設備閒置。
同一臺路由器能夠加入多個備份組,在不一樣組中有不一樣的優先級,使得該
路由器能夠在一個組中做爲Master,在其餘的備份組中做爲Backup網絡

keepalived安裝:日誌

下載並安裝IPVS
Keepalived須要IPVS,首先要確保安裝了IPVS(IP虛擬服務器,IP
Virtual Server,是一種提供負載平衡功能的技術)。
1:檢查是否安裝了IPVS:在任意路經下執行ipvsadm命令
2:去http://www.linuxvirtualserver.org/software/ipvs.html下載相應的包,注
意要跟你的linux內核版本匹配。察看linux版本的命令:cat /proc/version
3:建立一個鏈接文件,其命令爲:ln -sv /usr/src/kernels/2.6.18-194.el5-
i686/ /usr/src/linux,注意必定要與當前的運行的內核相一致,由於
usr/src/kernels目錄下可多個目錄。若是不建立這個鏈接文件,在編譯時會出
錯,從而不能繼續進行安裝。
4:而後make , make install ,ipvsadm命令會被安轉到/sbin下面
5:在任意路經下執行ipvsadm命令,檢查是否正確安裝server

下載並安裝Keepalived,去http://www.keepalived.org/下載最新的源碼包
1:解壓包,tar zvxf,而後進入到解壓的文件夾裏面
2:第一步:./configure --prefix=/usr/common/keepalived
(1)若是出現No SO_MARK declaration in headers 這樣的錯誤提示,能夠在命令上添加--
disable-fwmark
(2)若是要使用lvs,還須要指定內核的目錄,也就是添加:--with-kernel-dir=具體的路
經,以指定使用內核源碼裏面的文件
第二步:make 第三步:make install
3:驗證安裝
(1)到sbin下,執行keepalived 命令
(2)察看進程,ps -ef | grep keepalived ,應該有三種進程,父進程(內存管理,監控子
進程),健康檢查子進程,VRRP子進程
(3)察看內核模塊ip_vs是否裝載到內核空間,lsmod | grep ip_vs
(4)執行tail –f /var/log/messages來查看日誌
(5)執行pkill keepalived來關閉keepalivedhtm

相關文章
相關標籤/搜索