通過LVS+Keepalived搭建高可用的負載均衡集群系統(tǒng)_第1頁
通過LVS+Keepalived搭建高可用的負載均衡集群系統(tǒng)_第2頁
通過LVS+Keepalived搭建高可用的負載均衡集群系統(tǒng)_第3頁
通過LVS+Keepalived搭建高可用的負載均衡集群系統(tǒng)_第4頁
通過LVS+Keepalived搭建高可用的負載均衡集群系統(tǒng)_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、安裝LVS軟件(1)安裝前準(zhǔn)備操作系統(tǒng):統(tǒng)一采用Centos5.3版本,地址規(guī)劃如下:膈容器名IP地址網(wǎng)關(guān)虛擬設(shè)督名虛掀IPDirectorServer56thU:035Re:d_lServer146lo:O35RealServer237lo:O35更詳細的信息如下圖所示:圖中的VIP指的是虛擬IP地址,還可以叫做LVS集群的服務(wù)IP,在DR、TUN模式中,數(shù)據(jù)包是直接返回給用戶的,所以,在DirectorServer上以及集群的每個節(jié)點上都需要設(shè)置這個地址。此IP在RealServer上一般綁定在回環(huán)地址上,例如lo:0,同樣,在DirectorServer上,虛擬IP綁定在真實的網(wǎng)絡(luò)接口設(shè)備上,例如eth0:0。各個RealServer可以是在同一個網(wǎng)段內(nèi),也可以是相互獨立的網(wǎng)段,還可以是分布在internet上的多個服務(wù)器.

LoadBalancer(2)安裝操作系統(tǒng)需要注意的事項LoadBalancer(2)安裝操作系統(tǒng)需要注意的事項eihO:1^2.168..11246

vi|>s1^.16-8.12U?□S:C?]Lcs5..x、etV>:L^.I6&.|?.25ItfM/ili,L2.I.巧tLhtli1^37192.L6SJ2J35Crttruvav:]qJ2.L^H.IZ.ICentos5.3版本的Linux,內(nèi)核默認(rèn)支持LVS功能,為了方便編譯安裝IPVS管理軟件,在安裝操作系統(tǒng)時,建議選擇如下這些安裝包:l桌面環(huán)境:xwindowssystem、GNOMEdesktopenvironment。l開發(fā)工具:developmenttools、xsoftwaredevelopment、gnomesoftware>development、kdesoftwaredevelopment。系統(tǒng)安裝完畢,可以通過如下命令檢查kernel是否已經(jīng)支持LVS的ipvs模塊:[root@localhost~]#modprobe-l|grepipvs/lib/modules/2.6.18-194.11.1.el5/kernel/net/ipv4/ipvs/ip_vs.ko/lib/modules/2.6.18-194.11.1.el5/kernel/net/ipv4/ipvs/ip_vs_dh.ko如果有類似上面的輸出,表明系統(tǒng)內(nèi)核已經(jīng)默認(rèn)支持了IPVS模塊。接著就可以安裝IPVS管理軟件了。(3)在DirectorServe上安裝IPVS管理軟件IPVS提供的軟件包有源碼方式的也有rpm方式的,這里介紹下源碼方式安裝IPVS,首先從/software/ipvs.html下載對應(yīng)版本的ipvs源碼,由于我們這里采用的操作系統(tǒng)為Centos5.3版本,因此,下載對應(yīng)的ipvsadm-1.24版本,接著進行安裝:[root@localhost~]#tarzxvfipvsadm-1.24.tar.gz[root@localhost~]#cdipvsadm-1.24[root@localhost~]#make[root@localhost~]#makeinstall注意:在make時可能會出現(xiàn)錯誤編譯信息,這是由于編譯程序找不到對應(yīng)內(nèi)核的原因,按照如下操作就可以正常編譯:[root@localhost~]#ln-s/usr/src/kernels/2.6.18-128.el5-i686//usr/src/linux也可以下載rpm安裝包,通過rpm方式進行安裝:[root@localhost~]#rpm-vhipvsadm-1.24-6.1.i386.rpm然后執(zhí)行:[root@localhost~]#ipvsadm--help如果看到幫助提示,表明IPVS已經(jīng)成功安裝(4)ipvsadm的用法

命令選項-R(=_add_5ervicell在內(nèi)核的島湖眼器列表中辛加一條.新的盅抵T「記錄、,也就是1瞥圳一白莉的盅報脂名器。盅報T「也就是盅報職再器白勺T「1也111偵—E—adit—Eoarviac*)編鋁的枝盅掀脂努器列去由的一條空眼脂努器1己錄—D—deJ-fite-sfirviea)刪除內(nèi)核隹樞脂努器列去由的一條住擬脂努器記錄一匚(—口1略2i-:J店蹄內(nèi)慘虛職服夯涂列表,1,的所白記呆—RC—restora)愉豆虛}耿脂云器規(guī)則—S,:—sa.'v^J祝hrfetlXHIK為器燦Ml,犒出力-K遇1員p1讀的裕W一a.—Q'l-1-s,Jfl佐芯由憬HI時?籥州志的一淪正柔甲床如關(guān)制的艮土支記呆,也訕拭(\一個思眼服若弟中增加一白新的象土腿ZW—e(—ed.3.t—J瑞輯關(guān)能似HI蘇SS記呆中的泉系黑土腿ES記呆=d(,==d.cl-=te—server)lllli1際辛由淬^討,錄中m呆辛卅」UzveW,錄L|1-liiL昇7F內(nèi)在中點楸服*器FI無-Z(~_zeroZi虛拽胴與器列擊訂戴器用零f帝空7前的連挫魏里苓)一一settertepfinudp氓宣連控茜日寸百-t說明必以職務(wù)器提供的是十叩職務(wù)-此送項后面跟如下榕工匚[.Virtu-al~sa^vicfl.ddrazz:port]or[□:■aal~kairv^i■—ip:port]—u城明度財職務(wù)器提供的是照勞.此送項后面跟如下榕工J[virtuaJ.—sfifvicm—addraee:part]orEfii_var_ip:port]一Ffwmark航明是經(jīng)LIi「fKln標(biāo)記hl白如E井類型—E此迪項后面踉Lf使用的調(diào)度其法白3.寶樣J"Tj個5^】頁■rr|wrr|la|wla|lblc|lblcr|dh|sh默認(rèn)的調(diào)度算法是:wlc—p[t.im<:out]Server上恃技的月艮夯日』間也就是:說來白同一個用戶的豐:火請求,捋破向一個賓宅心處理■'此舉數(shù)一很用于伯辿僉請-求的操什小,槌m*out的默認(rèn)JUU秒“例加:-!■tuu,表示恃該服務(wù)日-」間乂gJ秋“—r啟充Nil脆■的It■地址,此詁項后畫跟如下格工匚:[i-e,WL—eervei-一ip:p>:>rt]g〔一麝5球)□指定L熠的工作模式為直摟路由模式(此槿式是LV5默認(rèn)工作模宜)/飛〔■妙禎指定lts的工作模式為隧道槿式」一m1一一m:isquer:±?ling.J4-1指室L作的工作模式為11虹模式」一卅(_-一weight)weightP指定Real&Eef的權(quán)值4一c(_一一coriTLectiotl)匚1顯示L作目前的連接信息如:ipvsadm-L-c-Ltimeout*21昇示"七叩tepfinudp??fr^ltimeoutj&?如:ipvEailrn~L——tirTiecmt*21-L--daemun*21昱示同步守護進程狀態(tài),例如:每聶煎-L-daemon3-L―stats21昱示統(tǒng)計信息,例如;塊痕皴J.-L-statsH-_L一一rat疑示速率信息,例如;i^ysadni-L~rateb1_L-一sort*21對虛椒月員務(wù)器和真實月&務(wù)■器排序輸出,例如1:i^TEacLm-L—sort*11舉例如下:[root@localhost~]#ipvsadm-A-t35:80-srr-p600以上表示在內(nèi)核的虛擬服務(wù)器列表中添加一條35的虛擬服務(wù)器記錄,并且指定此虛擬服務(wù)器的服務(wù)端口為80,然后指定此虛擬服務(wù)器的調(diào)度策略為輪詢調(diào)度,并且在每個realserver上的持續(xù)服務(wù)時間為600秒,即10分鐘[root@localhost~]#ipvsadm-A-t88:21-swlc以上表示在內(nèi)核的虛擬服務(wù)器列表中又添加了一條88的虛擬服務(wù)器,此虛擬服務(wù)器的服務(wù)端口為21,即FTP服務(wù)。使用的調(diào)度策略為wlc,即加權(quán)最少鏈接算法。[root@localhost~]#ipvsadm-a-t35:80-r46:80g[root@localhost~]#ipvsadm-a-t35:80-r37:80-g以上兩條設(shè)置表示在虛擬服務(wù)器35中添加兩條新的RealServer記錄,兩個RealServer的IP分別為46和37,參數(shù)“-g〃指定了虛擬服務(wù)器的工作模式為直接路由模式,即DR模式。2、開始配置LVS集群下面通過搭建www服務(wù)的負載均衡實例,講述基于DR模式的LVS集群配置(1)DirectorServer的配置在DirectorServer上配置LVS負載均衡集群,有兩種方法>通過ipvsadm命令行進行配置>通過Redhat提供的工具piranha來配置LVS1)通過ipvsadm命令行方式配置LVS安裝IPVS后,就可以配置LVS集群了,首先在DirectorServer上綁定一個虛擬IP(也叫VIP),此IP用于對外提供服務(wù),執(zhí)行如下命令:[root@localhost~]#ifconfigeth0:049broadcast49netmask55up要使用的ifconfigeth1:049broadcast49netmask55upifconfiglo49broadcast49netmask55up此處在eth0設(shè)備上綁定了一個虛擬設(shè)備eth0:0,同時設(shè)置了一個虛擬IP是35,也就是上面我們規(guī)劃的IP地址,然后指定廣播地址也為35,需要特別注意的是,這里的子網(wǎng)掩碼為55然后給設(shè)備eth0:0指定一條路由,執(zhí)行如下指令:[root@localhost~]#routeadd-hostdeveth0:0routeadd-hostdevlo[root@localhost~]#echo"1">/proc/sys/net/ipv4/ip_forward指令中,參數(shù)值為1時啟用ip轉(zhuǎn)發(fā),為0時禁止ip轉(zhuǎn)發(fā)。其實在DR模式中,開啟系統(tǒng)的包轉(zhuǎn)發(fā)功能不是必須的,而在NAT模式下此操作是必須的。下面通過搭建www服務(wù)的負載均衡實例,講述基于DR模式的LVS集群配置。(1)DirectorServer的配置在DirectorServer上配置LVS負載均衡集群,有兩種方法:>通過ipvsadm命令行進行配置>通過Redhat提供的工具piranha來配置LVS1)通過ipvsadm命令行方式配置LVS然后開始配置ipvs,執(zhí)行如下操作:[root@localhost~]#ipvsadm-C[root@localhost~]#ipvsadm-A-t35:80-srr-p600[root@localhost~]#ipvsadm-a-t35:80-r46:80-g[root@localhost~]#ipvsadm-a-t35:80-r37:80-g上面操作中,第一行是清除內(nèi)核虛擬服務(wù)器列表中的所有記錄,第二行是添加一條新的虛擬IP記錄。這個新的IP是35,同時指定持續(xù)服務(wù)時間為600秒。第三、四行是在新加虛擬IP記錄中添加兩條新的RealServer記錄,并且指定LVS的工作模式為直接路由模式。最后,啟動LVS服務(wù),執(zhí)行如下操作:[root@localhost~]#ipvsadm這樣,LVS在DirectorServer上的配置就完成了.為了管理和配置的方便,可以將上面的操作寫成一個腳本文件,腳本內(nèi)容如下:#!/bin/sh#description:StartLVSofDirectorserverVIP=35RIP1=192?168?12?246RIP2=37./etc/rc.d/init.d/functionscase"$1"instart)echo"startLVSofDirectorServer"#settheVirtualIPAddressandsysctlparameter/sbin/ifconfigeth0:0$VIPbroadcast$VIPnetmask55upecho"1">/proc/sys/net/ipv4/ip_forward#ClearIPVStable/sbin/ipvsadm-C#setLVS/sbin/ipvsadm-A-t$VIP:80-srr-p600/sbin/ipvsadm-a-t$VIP:80-r$RIP1:80-g/sbin/ipvsadm-a-t$VIP:80-r$RIP2:80-g#RunLVS/sbin/ipvsadm,?;,stop)echo"closeLVSDirectorserver"echo"0">/proc/sys/net/ipv4/ip_forward/sbin/ipvsadm-C/sbin/ifconfigeth0:0down??,,*)echo"Usage:$0(start|stop}"exit1Esac2)通過Redhat提供的工具piranha來配置LVSPiranha是REDHAT提供的一個基于Web的LVS配置軟件,可以省去手工配置LVS的繁瑣工作,同時,也可單獨提供cluster功能,例如,可以通過Piranha激活DirectorServer的后備主機,也就是配置DirectorServer的雙機熱備功能。Piranha工具的安裝非常簡單,下載Piranha的rpm包,進行安裝即可:[root@localhost~]#rpm-vhpiranha-0.8.2-1.i386.rpmPiranha安裝完畢后,會產(chǎn)生/etc/sysconfig/ha/lvs.cf文件,默認(rèn)此文件是空的,可以通過Piranha提供的web界面配置此文件,也可以直接手動編輯此文件,編輯好的lvs.cf文件內(nèi)容類似如下:[root@localhost~]#more/etc/sysconfig/ha/lvs.cfserial_no=18#序號。primary=5#指定主DirectorServer的真實IP地址,

是相對與有備用的DirectorServer而言的,也就是給DirectorServer做HACluster。service=lvs#指定雙機的服務(wù)名。backup_active=0激活,“1〃表示激活。#是否激活備用DirectorServer。"0〃表示不backup=#這里指定備用DirectorServer的真實IP地址,如果沒有備用DirectorServer,可以用“”代替。heartbeat=0#是否開啟心跳,1表示開啟,0表示不開啟。heartbeat_port=539#指定心跳的UDP通信端口。keepalive=5#心跳間隔時間,單位是秒。deadtime=10#如果主DirectorServer在deadtime(秒)后沒有響應(yīng),那么備份DirectorServer就會接管主DirectorServer的服務(wù)。network=direct#指定LVS的工作模式,direct表示DR模式,nat表示NAT模式,tunnel表示TUNL模式。debug_level=NONE#定義debug調(diào)試信息級別。{#指定虛擬服務(wù)的名稱。active=1#是否激活此服務(wù)。address=35eth0:0#虛擬服務(wù)綁定的虛擬IP以及網(wǎng)絡(luò)port=port=80#虛擬服務(wù)的端口。send="GET/HTTP/1.0\r\n\r\n"#給realserver發(fā)送的驗證字符串。expect="HTTP"#服務(wù)器正常運行時應(yīng)該返回的文本應(yīng)答信息,用來判斷realserver是否工作正常。use_regex=0#expect選項中是否使用正則表達式,0表示不使用,1表示使用。load_monitor=none#LVS中的DirectorServer能夠使用rup或ruptime來監(jiān)視各個realserver的負載狀態(tài)。該選項有3個可選值,rup、ruptime和none,如果選擇rup,每個realserver就必須運彳亍rstatd服務(wù)。如果選擇了ruptime,每個realserver就必須運行rwhod服務(wù)。scheduler=rr#指定LVS的調(diào)度算法。protocol=tcp#虛擬服務(wù)使用的協(xié)議類型。timeout=6#realserver失效后從lvs路由列表中移除失效realserver所必須經(jīng)過的時間,以秒為單位。reentry=15#某個realserver被移除后,重新加入lvs路由列表中所必須經(jīng)過的時間,以秒為單位。quiesce_server=0#如果此選項為1.那么當(dāng)某個新的節(jié)點加入集群時,最少連接數(shù)會被重設(shè)為零,因此LVS會發(fā)送大量請求到此服務(wù)節(jié)點,造成新的節(jié)點服務(wù)阻塞,建議設(shè)置為0。serverRS1{#指定realserver服務(wù)名。address=46#指定realserver的IP地址。active=1#是否激活此realactive=1weight=1#指定此realserver的權(quán)值,是個整數(shù)值,權(quán)值是相對于所有realserver節(jié)點而言的,權(quán)值高的realserver處理負載的性能相對較強。}serverRS2{address=37active=1weight=1}}2)通過Redhat提供的工具piranha來配置LVS編輯完成,然后啟動pulse服務(wù),即啟動lvs服務(wù)[root@localhost~]#servicepulsestart同理,此種方式下也要啟用系統(tǒng)的包轉(zhuǎn)發(fā)功能:[root@localhost~]#echo"1">/proc/sys/net/ipv4/ip_forward到此為止,Piranha工具方式配置DirectorServer完畢。3、Realserver的配置在lvs的DR和TUn模式下,用戶的訪問請求到達真實服務(wù)器后,是直接返回給用戶的,而不再經(jīng)過前端的DirectorServer,因此,就需要在每個Realserver節(jié)點上增加虛擬的VIP地址,這樣數(shù)據(jù)才能直接返回給用戶,增加VIP地址的操作可以通過創(chuàng)建腳本的方式來實現(xiàn),創(chuàng)建文件/etc/init.d/lvsrs,腳本內(nèi)容如下:#!/bin/bashVIP=35/sbin/ifconfiglo:0$VIPbroadcast$VIPnetmask55up/sbin/routeadd-host$VIPdevlo:0echo"1〃>/proc/sys/net/ipv4/conf/lo/arp_ignoreecho"2〃>/proc/sys/net/ipv4/conf/lo/arp_announceecho"1〃>/proc/sys/net/ipv4/conf/all/arp_ignoreecho"2〃>/proc/sys/net/ipv4/conf/all/arp_announcesysctl-p#end此操作是在回環(huán)設(shè)備上綁定了一個虛擬IP地址,并設(shè)定其子網(wǎng)掩碼為55,與DirectorServer上的虛擬IP保持互通,然后禁止了本機的ARP請求。由于虛擬ip,也就是上面的VIP地址,是DirectorServer和所有的Realserver共享的,如果有ARP請求VIP地址時,DirectorServer與所有Realserver都做應(yīng)答的話,就出現(xiàn)問題了,因此,需要禁止Realserver響應(yīng)ARP請求。而lvsrs腳本的作用就是使RealServer不響應(yīng)arp請求。4、在Director上配置冗余策略Ldirectord在heartbeat中,ldirectord其實是作為它的一個插件出現(xiàn)的,所以它默認(rèn)包含在heartbeat軟件包中,Ldirectord的核心作用是監(jiān)控RealServer節(jié)點狀態(tài),當(dāng)RealServer失效時,把它從虛擬服務(wù)器列表中刪除,恢復(fù)時重新添加到列表,同時,它還能調(diào)用ipvsadm自動創(chuàng)建LVS路由表,這點從下面要講述的Idirectord.cf中可以看出,這里需要說明的是,Idirectord和Piranha都具有監(jiān)控RealServer的功能,如果要通過ldirectord監(jiān)控節(jié)點狀態(tài),只需啟動ldirectord服務(wù),整個集群系統(tǒng)就可以運行起來,而無需執(zhí)行上面我們配置的LVS腳本,因為ldirectord會自動調(diào)用ipvsadm創(chuàng)建LVS路由表,而我們上面講述的利用ipvsadm命令行方式配置LVS,是為了讓讀者能更深入的了解ipvsadm的實現(xiàn)細節(jié)和實現(xiàn)機制。如果是通過Piranha工具配置LVS,就無需使用ldirectord,Piranha工具對應(yīng)的系統(tǒng)進程是pluse,此進程也會自動調(diào)用ipvsadm創(chuàng)建LVS路由表,同時會利用自身的nanny守護進程監(jiān)控realserver的狀態(tài)!ldirectord的安裝非常簡單,直接通過yum就可以安裝完成:[root@localhostroot]#yuminstallheartbeat-ldirectord安裝完成后,默認(rèn)的安裝路徑為/etc/ha.d,同時需要將模板配置文件拷貝到這個日錄下,執(zhí)行如下命令:[root@localhostroot]#rpm-qheartbeat-ldirectord-d/usr/share/doc/heartbeat-ldirectord-2.1.3/ldirectord.cf/usr/share/man/man8/ldirectord.8.gz[root@localhostroot]#cp/usr/share/doc/heartbeat-ldirectord-2.1.3/ldirectord.cf/etc/ha.d可以通過執(zhí)行如下命令啟動或關(guān)閉ldirectord服務(wù)/etc/init.d/ldirectord{start|stop}Ldirectord的配置文件是/etc/ha.d/ldirectord.cf,下面詳述下這個文件每個參數(shù)的含義:下面是需要配置的選項,注意,“甲號后面的內(nèi)容為注釋:#GlobalDirectiveschecktimeout=20#判定realserver出錯的時間間隔。checkinterval=10#指定ldirectord在兩次檢查之間的間隔時間。fallback=:80#當(dāng)所有的realserver節(jié)點不能工作時,web服務(wù)重定向的地址。autoreload=yes#是否自動重載配置文件,選yes時,配置文件發(fā)生變化,自動載入配置信息。logfile="/var/log/ldirectord.log"#設(shè)定ldirectord日志輸出文件路徑。quiescent=no#當(dāng)選擇no時,如果一個節(jié)點在checktimeout設(shè)置的時間周期內(nèi)沒有響應(yīng),ldirectord將會從LVS的路由表中直接移除realserver,此時,將中斷現(xiàn)有的客戶端連接,并使LVS丟掉所有的連接跟蹤記錄和持續(xù)連接模板,如果選擇為yes,當(dāng)某個realserver失效時,ldirectord將失效節(jié)點的權(quán)值設(shè)置為0,新的連接將不能到達,但是并不從LVS路由表中清除此節(jié)點,同時,連接跟蹤記錄和程序連接模板仍然保留在Director上。注意:以上幾行為ldirectord.cf文件的“全局”設(shè)置,它們可以應(yīng)用

到下面多個虛擬主機,下面是每個虛擬主機的配置。下面是需要配置的選項,注意,“甲號后面的內(nèi)容為注釋:#Sampleforanhttpvirtualservicevirtual=35:80#指定虛擬的IP地址和端口號,注意,在virtual行后面的行必須縮進4個空格或以一個tab字符進行標(biāo)記。real=46:80gate#指定RealServer服務(wù)器地址和端口,同時設(shè)定LVS工作模式,用gate表示DR模式,ipip表示TUNL模式,masq表示NAT模式。real=37:80gatefallback=:80gateservice=http#指定服務(wù)的類型,這里是對http服務(wù)做負載均衡。request="index.html"#ldirectord將根據(jù)指定的RealServer地址,結(jié)合該選項給出的請求路徑,發(fā)送訪問請求,檢查RealServer上的服務(wù)是否正常運行,確保這里給出的頁面地址是可訪問的,不然ldirectord會誤認(rèn)為此節(jié)點已經(jīng)失效,發(fā)生錯誤監(jiān)控現(xiàn)象。receive="TestPage"#指定請求和應(yīng)答字串。scheduler=rr#指定調(diào)度算法,這里是rr(輪叫)算法。protocol=tcp#指定協(xié)議的類型,LVS支持TCPprotocol=tcp#指定協(xié)議的類型,LVS支持TCP#指定Ldirectord的檢測類型,默#指定監(jiān)控的端口號。#指定Ldirectord的檢測類型,默#指定監(jiān)控的端口號。#虛擬服務(wù)器的名稱,隨便指定。checkport=80virtualhost=www,5、啟動LVS集群服務(wù)LVS負載均衡管理和使用有兩種方式,這里以Piranha工具為主進行介紹。首先,啟動每個realserver節(jié)點的服務(wù):[root@localhost~]#/etc/init.d/lvsrsstartstartLVSofREALServer然后,在DirectorServer啟動pulse服務(wù):[root@DR1~]#/etc/init.d/pulsestart[root@DR1~]#/ipvsadm-LIPVirtualServerversion1.2.0(size=4096)ProtLocalAddress:PortSchedulerFlags->RemoteAddress:PortForwardWeightActiveConnInActConnTCP35:httprrpersistent600->46:httpRoute1322->37:httpRoute105、啟動LVS集群服務(wù)此時查看pulse->37:httpRoute[root@localhost~]#tail-f/var/log/messagesNov2215:52:55lvslvs[7031]:startingvirtualservicewww,active:80Nov2215:52:55lvslvs[7031]:create_monitorforwww,/RS1runningaspid7039Nov2215:52:55lvsnanny[7039]:startingLVSclientmonitorfor35:80Nov2215:52:55lvslvs[7031]:create_monitorfor/RS2runningaspid7040Nov2215:52:55lvsnanny[7039]:making46:80availableNov2215:52:55lvsnanny[7040]:startingLVSclientmonitorfor35:80Nov2215:52:55lvsnanny[7040]:making37:80available從日志可以看出,pulse服務(wù)啟動了一個的虛擬服務(wù),同時加載了RS1和RS2兩個節(jié)點,然后檢測到RS1和RS2兩個節(jié)點對應(yīng)的80端口可用,最后啟動了虛擬IP的80端口,對外提供服務(wù)。日志中“”、“RS1”、“RS2”等標(biāo)識均在Piranha的配置文件/etc/sysconfig/ha/lvs.cf中定義。Pulse服務(wù)啟動完畢,通過“ps-ef”命令可以看到有如下進程在運行:

[root@localhost~]#ps-ef|grepnanny/usr/sbin/nanny-c-h46-p80-sGET/HTTP/1.0\r\n\r\n-xHTTP-a15-I//usr/sbin/nanny-c-h37-p80-sGET/HTTP/1.0\r\n\r\n-xHTTP-a15-I/其中,nanny就是Pulse服務(wù)的守護進程,用于監(jiān)控LVS服務(wù)節(jié)點的運行狀態(tài),類似與ldirectord的節(jié)點監(jiān)控功能。在實際使用中以下方法方案LVS+Keepalived構(gòu)建拓撲圖ServerArraryfe7、安裝KeepalivedPublicIPl19-2.L6a.lZ..privateIP:10.1D.IQ.2PublifFPi192"軸.圮ServerArraryfe7、安裝KeepalivedPublicIPl19-2.L6a.lZ..privateIP:10.1D.IQ.2HALoM&aiancerEVirtualHALoM&aiancerEkeepalived起初是為LVS設(shè)計的,專門用來監(jiān)控集群系統(tǒng)中各個服務(wù)節(jié)點的狀態(tài),后來又加入了VRRP的功能,VRRP是VirtualRouterRedundancyProtocol(虛擬路由器冗余協(xié)議)的縮寫,VRRP出現(xiàn)的目的就是為了解決靜態(tài)路由出現(xiàn)的單點故障問題,它能夠保證網(wǎng)絡(luò)的不間斷、穩(wěn)定的運行。所以,keepalived一方面具有服務(wù)器健康檢測功能,另一方面也具有HAcluster功能Keepalived的官方站點是,可以在這里下載到各種版本,我們這里下載的是keepalived-1.1.19.tar.gz,安裝步驟如下:[root@DR1~]#tarzxvfkeepalived-1.1.19.tar.gz[root@DR1~]#cdkeepalived-1.1.19[root@DR1keepalived-1.1.19]#./configure--sysconf=/etc\>--with-kernel-dir=/usr/src/kernels/2.6.x[root@DR1keepalived-1.1.19]#make[root@DR1keepalived-1.1.19]#makeinstall[root@DR1keepalived-1.1.19]#ln-s/usr/local/sbin/keepalived/sbin/在編譯選項中,“--sysconf”指定了Keepalived配置文件的安裝路徑,即路徑為/etc/Keepalived/Keepalived.conf,"--with-kernel-dir”這是個很重要的參數(shù),但這個參數(shù)并不是要把Keepalived編譯進內(nèi)核,而是指定使用內(nèi)核源碼里面的頭文件,就是include日錄。如果要使用LVS時,才需要用到此參數(shù),否則是不需要的。8、配置KeepalivedKeepalived的配置非常簡單,僅僅需要一個配置文件即可完成HAcluster和lvs服務(wù)節(jié)點監(jiān)控功能,Keepalived的安裝已經(jīng)在上面章節(jié)進行了介紹,在通過Keepalived搭建高可用的LVS集群實例中,主、備DirectorServer都需要安裝Keepalived軟件,安裝成功后,默認(rèn)的配置文件路徑為/etc/keepalived/keepalived.conf。一個完整的keepalived配置文件,有三個部分組成,分別是全局定義部分、vrrp實例定義部分以及虛擬服務(wù)器定義部分,下面詳細介紹下這個配置文件中每個選項的詳細含義和用法:#全局定義部分global_defs{notification_email{dba.gao@#設(shè)置報警郵件地址,可以設(shè)置多個,每行一個。注意,如果要開啟郵件報警,需要開啟本機的sendmail服務(wù)。ixdba@163.com}notification_email_fromKeepalived@localhost#設(shè)置郵件的發(fā)送地址。smtp_server#設(shè)置smtpserver地址。smtp_connect_timeout30#設(shè)置連接smtp服務(wù)器超時時間。router_idLVS_MASTER#運行Keepalived服務(wù)器的一個標(biāo)識。發(fā)郵件時顯示在郵件標(biāo)題中的信息}#vrrp實例定義部分vrrp_instanceVI_1{stateMASTER#指定Keepalived的角色,MASTER表示此主機是主用服務(wù)器,BACKUP表示是備用服務(wù)器。interfaceeth0#指定HA監(jiān)測網(wǎng)絡(luò)的接口。virtual_router_id51#虛擬路由標(biāo)識,這個標(biāo)識是一個數(shù)字,并且同一個vrrp實例使用唯一的標(biāo)識,即同一個vrrp_instance下,MASTER和BACKUP必須是一致的。priority100#定義優(yōu)先級,數(shù)字越大,優(yōu)先級越高,在一個vrrp_instance下,MASTER的優(yōu)先級必須大于BACKUP的優(yōu)先級。advert_int1#設(shè)定MASTER與BACKUP負載均衡器之間同步檢查的時間間隔,單位是秒。authentication{#設(shè)定驗證類型和密碼。auth_typePASS#設(shè)置驗證類型,主要有PASS和AH兩種。auth_pass1111#設(shè)置驗證密碼,在一個vrrp_instance下,MASTER與BAC

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論