您好,登錄后才能下訂單哦!
一、keepalived簡介:
1、什么是keepalived?
keepalived起初是為lvs設計的而保證集群高可用的一個服務軟件,用來檢測服務器的狀態以及loadbbalance主機和backup主機之間的failover(故障切換)防止單點故障。在集群當中如果有一臺服務器宕機或工作出現故障,keepalived將檢測到并將有故障的服務器踢出集群,同時讓其他服務器來代替該服務器的工作,當服務器恢復正常后keepalived自動將該服務器加入到集群中,完全不需要人工干涉,只需要做好相關配置,并修復有故障的服務器即可。
2、keepalived的工作狀態:
keepalived是以vrrp(virtual router redundancy protocol)協議,即虛擬路由冗余協議實現的。vrrp是實現路由器高可用的協議,將多臺提供相同服務的路由器組成一個路由組,組內有一個主路由和多個備份路由組成。master使用組內的VIP(虛擬IP)對外提供服務,master使用組播地址224.0.0.18向backup發送vrrp通告。當backup收不到master發送的vrrp通告時,就認為master宕機了。通過vrrp的優先級在backup中重啟選舉一個優先級高的當做master對外提供服務。這樣就保證了路由的高可用。
keepalived是一個類似于layer3, 4 & 7交換機制的軟件,即IP/TCP協議棧的IP、TCP及應用層。
layer3工作原理:此時keepalived工作在IP/TCP協議棧的中IP層。以服務器的IP地址作為服務器工作正常與否的標準,master通過組播定期發送ICMP數據包,如果發現有返回異常的IP,keepalived將認為這臺服務器失效,并提出服務器群
layer4工作原理:此時keepalived工作在IP/TCP協議棧的中TCP層。以服務提供的TCP端口的狀態來決定服務器的工作是否正常,如果檢測到端口監聽異常,則keepalived將把這臺服務器從服務器群中踢出。
layer7工作原理:此時keepalived工作在IP/TCP協議棧的中應用層。相比較來說比layer3、layer4要負責,網絡占用帶寬也要大一些,使用也相對較少。keepalived將根據用戶自己的設定配置檢查服務程序是否正常,如果跟用戶設定不相符,則將視為服務器存在異常并將踢出服務器群。
4、keepalived的模塊
keepalived主要有core、check和vrrp三個模塊 。core模塊為keepalived的核心,負責主進程的啟動、維護以及全局配置文件的加載和解析。check負責健康檢查,包括常見的各種檢查方式。vrrp模塊是來實現VRRP協議的。
5、keepalived的配置文件
一個功能比較完整的keepalived 的配置文件,其配置文件keepalived.conf 可以包含三個文本塊:全局定義塊(global_defs)、VRRP實例定義塊(vrrp_instance)及虛擬服務器定義塊(virtual_server)。全局定義塊和虛擬服務器定義塊是必須的,如果在只有一個負載均衡器的場合,就不須VRRP 實例定義塊。
二、部署keepalived服務
1、在編譯安裝keepalived之前,首先安裝keepalived所需要依賴的庫文件:
[root@node1 ~]# yum -y install popt-devel kernel-devel openssl-devel gcc-c++ libnl-devel libnl3-devel libnfnetlink-devel
2、下載keepalived源碼壓縮包。:
下載地址: http://www.keepalived.org/software/keepalived-1.3.5.tar.gz
[root@node1 ~]# wget http://www.keepalived.org/software/keepalived-1.3.5.tar.gz
3、安裝keepalived:
在編譯的時候使用指定的內核庫并指定安裝目錄為/目錄可以省去很多麻煩的鏈接。這樣就可以在安裝完成之后直接使用keepalived服務了
[root@node1 ~]# tar zxf keepalived-1.3.5.tar.gz [root@node1 ~]# cd keepalived-1.3.5 [root@node1 keepalived-1.3.5]# ./configure --prefix=/ --with-kernel-dir=/usr/src/kernels/3.10.0-514.21.1.el7.x86_64/include/ [root@node1 keepalived-1.3.5]# make [root@node1 keepalived-1.3.5]# make install
4.安裝完成。
keepalived配置文件位置:/etc/keepalived 下的keepalived.conf 目錄下有samples子目錄為各種模板文件。 執行程序位置:/usr/sbin/keepalived 。啟動腳本已經自動添加系統了。可以直接使用systemctl命令執行啟動。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。