您好,登錄后才能下訂單哦!
先說(shuō)說(shuō)keepalived的高可用軟件的概念和功能?
概念:此軟件目前是IT企業(yè)中是用最廣泛的高可用軟件,主要是用于實(shí)現(xiàn)至少兩臺(tái)服務(wù)器之間的服務(wù)高可用,可以適應(yīng):
Apache,Nginx,Mysql,Redis,Tomcat,PHP,Zabbix,NFS,DHCP,NTP,Vsftp,Samba,LVS等
Keepalived工作在3(網(wǎng)絡(luò)層)4(傳輸層)7(應(yīng)用層)的軟件,主要功能有兩種:
健康監(jiān)測(cè)功能:keepalievd可以代替shell腳本去檢測(cè)nginx,mysql,tomcat,端口,進(jìn)程,返回值的運(yùn)行情況,將異常的服務(wù)或者服務(wù)器移除健康的列表
可以ping IP 地址,可以檢測(cè)ip+port ,可以訪問(wèn)應(yīng)用服務(wù),狀態(tài),關(guān)鍵詞等
Keepalived是模塊化設(shè)計(jì),不同模塊負(fù)責(zé)不同的功能,keepalived常用模塊包括:
? Core,是keepalived的核心,負(fù)責(zé)主進(jìn)程的啟動(dòng)和維護(hù),全局配置文件的加載解析等 。
? Check,負(fù)責(zé)healthchecker(健康檢查),包括了各種健康檢查方式,以及對(duì)應(yīng)的配置的解析包括LVS的配置解析;
? Vrrp,VRRPD子進(jìn)程,VRRPD子進(jìn)程就是來(lái)實(shí)現(xiàn)VRRP協(xié)議;
? Libipfwc,iptables(ipchains)庫(kù),配置LVS會(huì)用到;
? Libipvs,虛擬服務(wù)集群,配置LVS會(huì)使用。
Keepalived的作用是檢測(cè)web服務(wù)器的狀態(tài),如果有一臺(tái)web服務(wù)器、Mysql服務(wù)器宕機(jī),或工作出現(xiàn)故障,Keepalived將檢測(cè)到后,會(huì)將有故障的web服務(wù)器或者M(jìn)ysql服務(wù)器從系統(tǒng)中剔除,當(dāng)服務(wù)器工作正常后Keepalived自動(dòng)將web、Mysql服務(wù)器加入到服務(wù)器群中。
這些工作全部自動(dòng)完成,不需要人工干涉,需要人工做的只是修復(fù)故障的WEB和Mysql服務(wù)器。Layer3,4&7工作在IP/TCP協(xié)議棧的IP層、傳輸層及應(yīng)用層,實(shí)現(xiàn)原理分別如下:
? Layer3:Keepalived使用Layer3的方式工作式時(shí),Keepalived會(huì)定期向服務(wù)器群中的服務(wù)器發(fā)送一個(gè)ICMP的數(shù)據(jù)包(如果發(fā)現(xiàn)某臺(tái)服務(wù)的IP地址無(wú)法ping通,Keepalived便報(bào)告這臺(tái)服務(wù)器失效,并將它從服務(wù)器集群中剔除。Layer3的方式是以服務(wù)器的IP地址是否有效作為服務(wù)器工作正常與否的標(biāo)準(zhǔn)。)
? Layer4: Layer4主要以TCP端口的狀態(tài)來(lái)決定服務(wù)器工作正常與否。如WEB server的服務(wù)端口一般是80,如果Keepalived檢測(cè)到80端口沒(méi)有啟動(dòng),則Keepalived將把這臺(tái)服務(wù)器從服務(wù)器群中剔除。
? Layer7:Layer7工作在應(yīng)用層,Keepalived將根據(jù)用戶(hù)的設(shè)定檢查服務(wù)器程序的運(yùn)行是否正常,如果與用戶(hù)的設(shè)定不相符,則Keepalived將把服務(wù)器從服務(wù)器群中剔除。
生產(chǎn)環(huán)境使用Keepalived正常運(yùn)行,共啟動(dòng)3個(gè)進(jìn)程,一個(gè)是父進(jìn)程,負(fù)責(zé)監(jiān)控其子進(jìn)程,一個(gè)是VRRP子進(jìn)程,另外一個(gè)是Checkers子進(jìn)程。
兩個(gè)子進(jìn)程都被系統(tǒng)Watchlog看管,兩個(gè)子進(jìn)程各自負(fù)責(zé)自己的事,Healthcheck子進(jìn)程檢查各自服務(wù)器的健康狀況,如果Healthcheck進(jìn)程檢查到Master上服務(wù)不可用了,就會(huì)通知本機(jī)上的VRRP子進(jìn)程,讓他刪除通告,并且去掉虛擬IP,轉(zhuǎn)換為BACKUP狀態(tài)。
4、Keepalived VRRP原理剖析一
Virtual Router Redundancy Protocol(VRRP)技術(shù),虛擬路由器冗余協(xié)議。VRRP由IETF提出,目的是為了解決局域網(wǎng)中配置默認(rèn)網(wǎng)關(guān)的單點(diǎn)失效問(wèn)題,1998年已推出正式的RFC2338協(xié)議標(biāo)準(zhǔn)。
VRRP廣泛應(yīng)用在邊緣網(wǎng)絡(luò)中,它的設(shè)計(jì)目標(biāo)是支持特定情況下IP數(shù)據(jù)流量失敗轉(zhuǎn)移不會(huì)引起混亂,允許主機(jī)使用單路由器,以及及時(shí)在實(shí)際第一跳路由器使用失敗的情形下仍能夠維護(hù)路由器間的連通性。
在現(xiàn)實(shí)的網(wǎng)絡(luò)環(huán)境中,兩臺(tái)需要通信的主機(jī)大多數(shù)情況下并沒(méi)有直接的物理連接。對(duì)于這樣的情況,它們之間路由怎樣選擇?主機(jī)如何選定到達(dá)目的主機(jī)的下一跳路由,這個(gè)問(wèn)題通常的解決方法有二種:
? 在主機(jī)上使用動(dòng)態(tài)路由協(xié)議RIP、OSPF;
? 在主機(jī)上配置靜態(tài)路由(默認(rèn)網(wǎng)關(guān))。
在主機(jī)上配置路態(tài)路由是非常不切實(shí)際的,因?yàn)楣芾?、維護(hù)成本以及是否支持等諸多問(wèn)題。配置靜態(tài)路由就變得十分流行,但路由器(或者說(shuō)默認(rèn)網(wǎng)關(guān)default gateway)卻經(jīng)常成為單點(diǎn),VRRP的目的就是為了解決靜態(tài)路由單點(diǎn)故障問(wèn)題。VRRP通過(guò)一競(jìng)選(election)協(xié)議來(lái)動(dòng)態(tài)的將路由任務(wù)交給LAN中虛擬路由器中的某臺(tái)VRRP路由器。
5、Keepalived VRRP原理剖析二
通過(guò)VRRP技術(shù)可以將兩臺(tái)物理(路由器)主機(jī)當(dāng)成路由器,兩臺(tái)物理機(jī)主機(jī)組成一個(gè)虛擬路由集群,Master高的主機(jī)產(chǎn)生VIP,該VIP負(fù)責(zé)轉(zhuǎn)發(fā)用戶(hù)發(fā)起的IP包或者負(fù)責(zé)處理用戶(hù)的請(qǐng)求,Nginx+Keepalived組合,用戶(hù)的請(qǐng)求直接訪問(wèn)keepalived VIP地址,然后訪問(wèn)Master相應(yīng)服務(wù)和端口。
在VRRP虛擬路由器集群中,由多臺(tái)物理的路由器組成,但是這多臺(tái)的物理路由器并不能同時(shí)工作,而是由一臺(tái)稱(chēng)為MASTER路由器負(fù)責(zé)路由工作,其它的都是BACKUP,MASTER并非一成不變,VRRP會(huì)讓每個(gè)VRRP路由器參與競(jìng)選,最終獲勝的就是MASTER。
MASTER擁有一些特權(quán),例如擁有虛擬路由器的IP地址或者成為VIP,擁有特權(quán)的MASTER要負(fù)責(zé)轉(zhuǎn)發(fā)發(fā)送給網(wǎng)關(guān)地址的包和響應(yīng)ARP請(qǐng)求。
VRRP通過(guò)競(jìng)選協(xié)議來(lái)實(shí)現(xiàn)虛擬路由器的功能,所有的協(xié)議報(bào)文都是通過(guò)IP組播(multicast)包(組播地址224.0.0.18)形式發(fā)送的。虛擬路由器由VRID(范圍0-255)和一組IP地址組成,對(duì)外表現(xiàn)為一個(gè)周知的MAC地址。所以在一組虛擬路由器集群中,不管誰(shuí)是MASTER,對(duì)外都是相同的MAC和VIP。客戶(hù)端主機(jī)并不需要因?yàn)镸ASTER的改變而修改自己的路由配置。
作為MASTER的VRRP路由器會(huì)一直發(fā)送VRRP組播包(VRRP Advertisement message),BACKUP不會(huì)搶占MASTER,除非它的優(yōu)先級(jí)(Priority)更高。當(dāng)MASTER不可用時(shí)(BACKUP收不到組播包時(shí)), 多臺(tái)BACKUP中優(yōu)先級(jí)最高的這臺(tái)會(huì)搶占為MASTER。這種搶占是非??焖俚模员WC服務(wù)的連續(xù)性。由于安全性考慮VRRP包使用了加密協(xié)議進(jìn)行,基于VRRP技術(shù),可以實(shí)現(xiàn)IP地址漂移,是一種容錯(cuò)協(xié)議,廣泛應(yīng)用于企業(yè)生產(chǎn)環(huán)境中。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。