云計(jì)算集群技術(shù)及應(yīng)用 課件 第6章-LVS四層負(fù)載集群_第1頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第6章-LVS四層負(fù)載集群_第2頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第6章-LVS四層負(fù)載集群_第3頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第6章-LVS四層負(fù)載集群_第4頁
云計(jì)算集群技術(shù)及應(yīng)用 課件 第6章-LVS四層負(fù)載集群_第5頁
已閱讀5頁,還剩57頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第6章

LVS四層負(fù)載集群6.1LVS簡介6.2LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.3LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例熟悉LVS的特點(diǎn)熟悉LVS的工作原理了解LVS的4種工作模式及特點(diǎn)

了解LVS-NAT的部署過程引言在前幾章已經(jīng)提到過,當(dāng)一臺服務(wù)器的處理能力、存儲(chǔ)空間不足時(shí),可以增加一臺服務(wù)器,將應(yīng)用與數(shù)據(jù)分離,降低服務(wù)器負(fù)載壓力,提高網(wǎng)站訪問效率。四層負(fù)載均衡是指基于IP和端口的負(fù)載均衡,訪問流量通過負(fù)載均衡設(shè)備設(shè)置的服務(wù)器選擇方式(算法),然后決定選擇后端的真實(shí)服務(wù)器。四層負(fù)載集群架構(gòu)設(shè)計(jì)比較簡單,因?yàn)闊o需解析接收的具體消息內(nèi)容,所以在網(wǎng)絡(luò)吞吐量及處理能力上會(huì)相對比較高。四層負(fù)載用得最多得是LVS軟件,本章將詳細(xì)講解使用LVS四層負(fù)載集群。6.1LVS簡介LVS概念LVS原理架構(gòu)LVS工作模式LVS(LinuxVirtualServer)是一款虛擬的服務(wù)器集群系統(tǒng),該項(xiàng)目在1998年5月由章文嵩博士成立,是中國國內(nèi)最早出現(xiàn)的自由軟件項(xiàng)目之一。LVS本身并不提供服務(wù),只作為流量的接入層,將客戶端的請求轉(zhuǎn)發(fā)給對應(yīng)的后端服務(wù)器進(jìn)行處理,從而實(shí)現(xiàn)集群環(huán)境中的負(fù)載均衡。LVS為集群提供一個(gè)訪問的入口,真正提供服務(wù)的是后端真實(shí)服務(wù)器。6.1

LVS簡介6.1.1

LVS概念LVS已經(jīng)成為了Linux內(nèi)核的一部分,LVS提供的任何功能可以直接使用。LVS的特性如下所示。(1)作為四層負(fù)載均衡調(diào)度器,僅用于分發(fā)流量,以至于消耗極低的CPU和內(nèi)存,因此具備極高的抗負(fù)載能力。(2)因?yàn)長inux內(nèi)核已經(jīng)內(nèi)置了LVS功能模塊,所以無需人為接觸過多的配置項(xiàng),極大地降低了配置的難度。(3)LVS可以在二層、三層、四層工作,應(yīng)用范圍比較廣。一般情況下,大部分的應(yīng)用都可以使用LVS做負(fù)載均衡,LVS不但能快速響應(yīng)用戶的請求,還能夠支持上百萬的并發(fā)連接,其吞吐量的最大連接數(shù)高達(dá)10GBits/s。(4)LVS在負(fù)載均衡端具有靈活的策略選擇,其中包括3種工作模塊,10種調(diào)度算法。6.1

LVS簡介6.1.1

LVS概念LVS的不足如下所示。(1)LVS無法在云端服務(wù)器上部署,因?yàn)長VS基于虛擬IP,而云端服務(wù)器的專有云網(wǎng)絡(luò)不支持虛擬IP的功能??墒褂肧LB代替或者自行部署Nginx、HAProxy。(2)LVS在原理上講,直接將客戶端請求分發(fā)給后端節(jié)點(diǎn),缺少抵御網(wǎng)絡(luò)攻擊的能力。(3)LVS不支持七層的虛擬主機(jī),動(dòng)靜分離等功能,不適合中小型應(yīng)用。6.1

LVS簡介6.1.1

LVS概念LVS集群的體系結(jié)構(gòu)可以分為3層,分別為負(fù)載均衡調(diào)度器(或者負(fù)載調(diào)度器)、服務(wù)器池、共享存儲(chǔ),具體如圖。6.1

LVS簡介6.1.1

LVS概念圖中的提及到的及其他術(shù)語如下所示。(1)CIP:ClientIP,客戶端的IP地址。(2)VIP:對外公布的虛擬IP,用戶所請求的目標(biāo)IP的地址。(3)RS:RealServer,后端真正提供服務(wù)的服務(wù)器。(4)RIP:RealServerIP,后端真正提供服務(wù)的服務(wù)器IP。(5)DS:DirectorServer,調(diào)度器,LVS前端負(fù)載均衡器。(6)DIP:DirectorServerIP,負(fù)載均衡的IP,用于與內(nèi)部服務(wù)器進(jìn)行通信。LVS的原理架構(gòu)圖。6.1

LVS簡介6.1.2

LVS原理架構(gòu)LVS重要的內(nèi)核模塊和管理工具,如下所示。IPVS:LVS集群系統(tǒng)的重要內(nèi)核模塊,工作在內(nèi)核上的程序,直接作用于請求轉(zhuǎn)發(fā)。Ipvsadm:工作在用戶空間的命令行工具,主要用于管理集群服務(wù)等。在安裝LVS時(shí)需要另行安裝Ipvsadm工具。6.1

LVS簡介6.1.2

LVS原理架構(gòu)在圖中,負(fù)載均衡調(diào)度器的IPVS會(huì)虛擬一個(gè)IP供外部客戶端訪問,客戶端只能通過這個(gè)VIP訪問服務(wù)器。數(shù)據(jù)的傳輸過程如下所示。(1)訪問數(shù)據(jù)包首先發(fā)送至負(fù)載調(diào)度器的內(nèi)核空間。(2)PREROUTING的作用是目標(biāo)地址轉(zhuǎn)換,當(dāng)PREROUTING收到訪問數(shù)據(jù)包時(shí),解析目標(biāo)地址是否是本機(jī)IP,然后將數(shù)據(jù)包傳輸至INPUT。(3)INPUT收到請求后,IPVS把訪問請求與Ipvsadm的規(guī)則進(jìn)行對比。若訪問請求的是后端集群,IPVS則會(huì)修改數(shù)據(jù)包,然后把修改好的數(shù)據(jù)包發(fā)送至POSTROUTING。(4)POSTROUTING用于將公網(wǎng)IP修改為內(nèi)網(wǎng)的主機(jī)IP。POSTROUTING收到數(shù)據(jù)包后核對目標(biāo)IP,最后將數(shù)據(jù)包發(fā)送至后端服務(wù)器。6.1

LVS簡介6.1.3

LVS工作模式LVS有4種工作模式。NAT轉(zhuǎn)發(fā)模式,DR直接路由模式,TUN-IP隧道模式,F(xiàn)ULLNAT模式。1.LVS-NAT6.1

LVS簡介6.1.3

LVS工作模式LVS-NAT(地址轉(zhuǎn)換):將請求的目標(biāo)地址轉(zhuǎn)換為真實(shí)服務(wù)器的地址,并且所有流量都將經(jīng)過負(fù)載均衡服務(wù)器,真實(shí)服務(wù)器網(wǎng)關(guān)都應(yīng)指向負(fù)載均衡服務(wù)器。1.LVS-NAT6.1

LVS簡介6.1.3

LVS工作模式LVS-NAT的工作原理主要有以下4步。(1)客戶端將請求發(fā)送到負(fù)載均衡服務(wù)器,此時(shí)請求報(bào)文源地址是CIP,目標(biāo)地址為VIP;(2)負(fù)載均衡服務(wù)器收到報(bào)文后,將客戶端請求報(bào)文的目標(biāo)IP地址改為后端服務(wù)器的RIP地址并將報(bào)文根據(jù)算法發(fā)送到后端服務(wù)器;(3)報(bào)文發(fā)送到后端服務(wù)器后,由于報(bào)文的目標(biāo)地址是該服務(wù)器,所以會(huì)響應(yīng)該請求,并將響應(yīng)報(bào)文返還給負(fù)載均衡服務(wù)器。(4)最后再由負(fù)載均衡服務(wù)器將此報(bào)文的源地址修改為VIP地址并發(fā)送給客戶端。2.LVS-DR6.1

LVS簡介6.1.3

LVS工作模式LVS-DR(直接路由):負(fù)載均衡服務(wù)器和真實(shí)服務(wù)器必須在同一物理網(wǎng)絡(luò),響應(yīng)由后端服務(wù)器直接發(fā)送給客戶端,其工作原理如圖。2.LVS-DR6.1

LVS簡介6.1.3

LVS工作模式DR直接路由模式的工作步驟主要有以下3步。(1)客戶端將請求發(fā)送到負(fù)載均衡服務(wù)器,請求報(bào)文源地址是CIP,目標(biāo)地址為VIP;(2)負(fù)載均衡服務(wù)器收到報(bào)文后,將客戶端請求報(bào)文的源MAC地址改為自己的MAC地址,目標(biāo)MAC改為了RIP的MAC地址,并將此包發(fā)送給后端服務(wù)器;(3)后端服務(wù)器發(fā)現(xiàn)請求報(bào)文中的目標(biāo)MAC地址是自己的,便將請求進(jìn)行處理,處理完請求后,將響應(yīng)報(bào)文通過lo接口送給eth0網(wǎng)卡再發(fā)送給客戶端。2.LVS-DR6.1

LVS簡介6.1.3

LVS工作模式LVS-DR模式的特點(diǎn)主要有以下幾點(diǎn)。RS和DS需要在同一個(gè)物理網(wǎng)絡(luò)中。所有請求報(bào)文經(jīng)過DS,而響應(yīng)報(bào)文不經(jīng)過DS。既不支持端口映射,又不支持地址轉(zhuǎn)換。RS的網(wǎng)關(guān)不可以指向DIP。RS上的lo接口需要配置VIP的IP地址。3.LVS-TUN6.1

LVS簡介6.1.3

LVS工作模式LVS-TUN(隧道):與LVS-DR方式相似,不同的是LVS-TUN將IP報(bào)文在封裝一層,形成隧道傳輸,其工作原理。3.LVS-TUN6.1

LVS簡介6.1.3

LVS工作模式LVS-TUN模式的特點(diǎn)主要有以下幾點(diǎn)。RIP、VIP和DIP是公網(wǎng)IP。RS的網(wǎng)關(guān)不會(huì)指向DIP。所有的請求報(bào)文經(jīng)過DS,而響應(yīng)報(bào)文不會(huì)經(jīng)過DS。不支持端口映射。RS的系統(tǒng)需要支持隧道功能3.LVS-TUN6.1

LVS簡介6.1.3

LVS工作模式三種模式的對比如表。LVS工作模式VS/NATVS/TUNVS/DR服務(wù)器操作系統(tǒng)任意支持隧道多數(shù)(支持Non-arp)服務(wù)器網(wǎng)絡(luò)私有網(wǎng)絡(luò)局域網(wǎng)/廣域網(wǎng)局域網(wǎng)服務(wù)器數(shù)目(100M網(wǎng)絡(luò))10~20100大于100服務(wù)器網(wǎng)關(guān)負(fù)載均衡器自己的路由自己的路由效率一般高最高4.FULLNAT6.1

LVS簡介6.1.3

LVS工作模式FULLNAT:與LVS-NAT模式轉(zhuǎn)發(fā)數(shù)據(jù)包的方式類似,請求和響應(yīng)報(bào)文都經(jīng)過LVS,不同的是后端RS不需要進(jìn)行配置。其工作原理如圖。4.FULLNAT6.1

LVS簡介6.1.3

LVS工作模式FULLNAT直接路由模式的工作步驟主要有以下4步。(1)客戶端將請求發(fā)送到負(fù)載均衡服務(wù)器,請求報(bào)文源地址是CIP,目標(biāo)地址為VIP;(2)負(fù)載均衡服務(wù)器收到報(bào)文后,發(fā)現(xiàn)請求的是后端服務(wù)器,然后將源IP改為自己的IP,目標(biāo)IP改為真實(shí)服務(wù)器IP,并將此包發(fā)送給后端服務(wù)器;(3)后端服務(wù)器收到請求報(bào)文后,將請求進(jìn)行處理,處理完請求后,將源IP改為RIP,目標(biāo)IP改為DIP,并將響應(yīng)報(bào)文返還給負(fù)載均衡服務(wù)器。(4)最后再由負(fù)載均衡服務(wù)器將此報(bào)文的源地址修改為VIP地址并發(fā)送給客戶端。4.FULLNAT6.1

LVS簡介6.1.3

LVS工作模式FULLNAT模式的特點(diǎn)主要有以下幾點(diǎn)。DIP和RIP不需要在同一網(wǎng)段。與NAT模式相比,RS的響應(yīng)包一定可到達(dá)負(fù)載均衡服務(wù)器。與NAT模式相比,需要更新源IP,性能會(huì)下降。6.2LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例實(shí)驗(yàn)原理環(huán)境準(zhǔn)備搭建部署服務(wù)器使用NAT模式對外提供服務(wù)時(shí),用戶請求的整體處理流程如圖。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.1

實(shí)驗(yàn)原理客戶端的請求在網(wǎng)上進(jìn)行傳送時(shí)會(huì)經(jīng)過路由器及交換機(jī)的轉(zhuǎn)發(fā),尋找到網(wǎng)站的服務(wù)器。網(wǎng)站設(shè)置為LVS-NAT模式后,對外接收請求的只有負(fù)載均衡器。負(fù)載均衡器設(shè)有兩塊網(wǎng)卡,一個(gè)IP對外接收請求,另一個(gè)IP則對內(nèi)進(jìn)行資源的分發(fā)與收集,將外網(wǎng)與內(nèi)網(wǎng)隔開。簡而言之,外界的請求只有通過負(fù)載均衡器的轉(zhuǎn)發(fā),才能到達(dá)真實(shí)的服務(wù)器進(jìn)行處理;內(nèi)在的處理結(jié)果也只有通過負(fù)載均衡器進(jìn)行轉(zhuǎn)發(fā),才能反饋給客戶端。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.1

實(shí)驗(yàn)原理一個(gè)數(shù)據(jù)包有兩個(gè)IP:源地址IP和目標(biāo)地址IP,分別表示數(shù)據(jù)包的來處和去處。假設(shè)一組IP實(shí)時(shí)模擬一個(gè)數(shù)據(jù)包在LVS-NAT網(wǎng)站中的處理過程。假設(shè)的服務(wù)器及IP如表。服務(wù)器IP外網(wǎng)(客戶端)10負(fù)載均衡器(LVS-NAT)公網(wǎng)IP為5、私網(wǎng)IP為36真實(shí)服務(wù)器web137真實(shí)服務(wù)器web238分配完成服務(wù)器的IP,現(xiàn)在模擬客戶端向網(wǎng)站發(fā)出一個(gè)請求,該數(shù)據(jù)包的Sip(源IP)和Dip(目標(biāo)IP)分別如下所示。Sip:10;Dip:5。當(dāng)數(shù)據(jù)包到達(dá)負(fù)載均衡器后,負(fù)載均衡器本身無法處理請求,只能將該數(shù)據(jù)包轉(zhuǎn)給后臺空閑的真實(shí)服務(wù)器進(jìn)行處理。判定處理請求的服務(wù)器后,負(fù)載均衡器會(huì)將數(shù)據(jù)包的目標(biāo)地址換為真實(shí)服務(wù)器地址,進(jìn)行下一步的處理。假設(shè)目前兩臺真實(shí)服務(wù)器都處于空閑狀態(tài),數(shù)據(jù)包被隨機(jī)交給web1進(jìn)行處理,該數(shù)據(jù)包的Sip和Dip分別如下所示。Sip:10;Dip:37。真實(shí)服務(wù)器web1處理數(shù)據(jù)包的信息之后,將響應(yīng)數(shù)據(jù)包進(jìn)行返程,源地址與目標(biāo)地址互換,此時(shí)的Sip和Dip分別如下所示。Sip:37;Dip:10。因?yàn)閮?nèi)網(wǎng)無法與外網(wǎng)直接進(jìn)行通信,所以只能通過負(fù)載均衡器進(jìn)行傳送。負(fù)載均衡器將源地址IP換為自己的公網(wǎng)IP,響應(yīng)數(shù)據(jù)包就可以正常返回。此時(shí)數(shù)據(jù)包的Sip和Dip分別如下所示。Sip:5;Dip:10。綜上所述就是一個(gè)數(shù)據(jù)包在LVS-NAT網(wǎng)站架構(gòu)中的完整處理流程,接下來通過具體的實(shí)驗(yàn)來詮釋其核心原理。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.1

實(shí)驗(yàn)原理6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.2

環(huán)境準(zhǔn)備本次實(shí)驗(yàn)需要3臺VM虛擬機(jī)(或者物理服務(wù)器),一臺LVS負(fù)載均衡服務(wù)器,兩臺真實(shí)服務(wù)器。需要提前準(zhǔn)備的條件如下所示。操作系統(tǒng)版本:CentOS7.6。提前關(guān)閉防火墻及SELinux。虛擬LVS服務(wù)器需要一個(gè)公網(wǎng)IP、一個(gè)私網(wǎng)IP,使用一塊網(wǎng)卡為橋接模式,另一塊為主機(jī)模式。真實(shí)服務(wù)器只需要設(shè)有私網(wǎng)IP即可,網(wǎng)卡為主機(jī)模式。默認(rèn)的服務(wù)器都只設(shè)有1塊網(wǎng)卡,故現(xiàn)在需要為虛擬LVS服務(wù)器添加第2塊網(wǎng)卡,在本次實(shí)驗(yàn)中,具體操作如下所示。1.對服務(wù)器增加或者刪除硬件都需要先將服務(wù)器關(guān)機(jī)。關(guān)機(jī)之后,再選中虛擬服務(wù)器,單擊“編輯虛擬機(jī)設(shè)置”,如圖。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.2

環(huán)境準(zhǔn)備2.單擊“編輯虛擬機(jī)設(shè)置”鏈接,虛擬機(jī)設(shè)置界面如圖。目前該虛擬機(jī)只有一塊網(wǎng)卡。3.單擊界面左下方的“添加”按鈕,會(huì)彈出一個(gè)添加硬件向?qū)Т翱?,如圖。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.2

環(huán)境準(zhǔn)備目前該虛擬硬件類型選擇“網(wǎng)絡(luò)適配器”選項(xiàng),單擊圖右下方的“完成”按鈕即可。機(jī)只有一塊網(wǎng)卡。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.2

環(huán)境準(zhǔn)備4.添加網(wǎng)卡之后,對現(xiàn)有的兩塊網(wǎng)卡分配網(wǎng)段,設(shè)置網(wǎng)卡1為VMNET0(橋接模式),網(wǎng)卡2為VMNET1(僅主機(jī)模式),設(shè)置完成后如圖。檢查無誤后,單擊圖6.11右下方的“確定”按鈕,添加網(wǎng)卡的操作完成。本書所用的負(fù)載均衡器(LVS-NAT)的公網(wǎng)IP為2,私網(wǎng)IP為0??蛻舳耸褂盟拗鳈C(jī)瀏覽器。為了便于讀者觀察實(shí)驗(yàn)操作對象,這里分別將服務(wù)器的主機(jī)名修改為natlb01、web1、web2。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.2

環(huán)境準(zhǔn)備5.為了保證各服務(wù)器的時(shí)間一致,對所有服務(wù)器進(jìn)行時(shí)間校對。6.查看操作系統(tǒng)及內(nèi)核版本。[root@localhost~]#ntpdate-u1[root@localhost~]#cat/etc/redhat-releaseCentOSLinuxrelease7.6.1810(Core)[root@localhost~]#uname-r3.10.0-957.el7.x86_64[root@localhost~]#uname-mx86_646.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.2

環(huán)境準(zhǔn)備7.使用宿主機(jī)測試LVS負(fù)載調(diào)度器的網(wǎng)絡(luò)連通性。打開宿主機(jī)的命令提示符,測試公網(wǎng)IP,具體如圖。8.測試私網(wǎng)IP。宿主機(jī)客戶端可以訪問到公網(wǎng)IP。宿主機(jī)客戶端無法訪問私網(wǎng)IP。(1)在web1和web2上安裝Apache服務(wù)。[root@web1~]#yum-yinstallhttpd……安裝過程省略……已安裝:httpd.x86_640:2.4.6-97.el7.centos.4完畢![root@web2~]#yum-yinstallhttpd1.配置真實(shí)服務(wù)器首先為真實(shí)服務(wù)器配置網(wǎng)站及路由,具體的步驟如下所示。6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署(2)啟動(dòng)網(wǎng)站服務(wù),并設(shè)置為開機(jī)自啟。//web1[root@web1~]#systemctlstarthttpd[root@web1~]#systemctlenablehttpd//web2[root@web2~]#systemctlstarthttpd[root@web2~]#systemctlenablehttpd(3)做負(fù)載均衡時(shí),后端所有真實(shí)服務(wù)器提供的服務(wù)應(yīng)該是一樣的,此處為了區(qū)分到底是哪臺服務(wù)器在處理請求,設(shè)置不同的Web頁面。//web1[root@web1~]#echoweb1>/var/www/html/index.html//web2[root@web2~]#echoweb2>/var/www/html/index.html1.配置真實(shí)服務(wù)器6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署(4)下載Net-tools工具,以便使用route命令處理網(wǎng)關(guān)接口。[root@natlb~]#yum-yinstallnet-tools……安裝過程省略……Installed:net-tools.x86_640:2.0-0.25.20131004git.el7Complete!(5)配置Web服務(wù)器的網(wǎng)卡模式為僅主機(jī)模式,即與LVS負(fù)載調(diào)度器的私網(wǎng)IP在同一網(wǎng)段。右擊web1虛擬主機(jī)選項(xiàng)卡的“設(shè)置”選項(xiàng),具體如圖。1.配置真實(shí)服務(wù)器6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署單擊圖的“網(wǎng)絡(luò)適配器”選項(xiàng),選擇VMnet1模式(僅主機(jī)模式)。然后單擊“確認(rèn)”按鈕。web1和web2的網(wǎng)卡配置過程相同。(6)修改web1的網(wǎng)卡配置文件,設(shè)置靜態(tài)網(wǎng)絡(luò)。1.配置真實(shí)服務(wù)器6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署(7)修改web2的網(wǎng)卡配置文件,設(shè)置靜態(tài)網(wǎng)絡(luò)。(9)為外網(wǎng)的請求指定處理網(wǎng)關(guān)接口。//web1[root@web1~]#routeadd-net/24gw0//web2[root@web2~]#routeadd-net/24gw01.配置真實(shí)服務(wù)器6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署Web服務(wù)器的配置到此結(jié)束,web2除了默認(rèn)頁面與其不同,其他配置與web1相同即可。(3)為LVS負(fù)載均衡服務(wù)器添加一個(gè)VIP,并指定網(wǎng)絡(luò)協(xié)議為TCP協(xié)議,輪詢策略為rr(輪詢調(diào)度算法)。[root@natlb~]#ipvsadm-A-t2:80-srr2.配置LVS負(fù)載均衡器6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署(4)將Web真實(shí)服務(wù)器的IP加入輪詢隊(duì)伍。[root@natlb~]#ipvsadm-a-t2:80-r1:80-m[root@natlb~]#ipvsadm-a-t2:80-r2:80-m參數(shù)含義如下所示。-A:表示添加一個(gè)新的虛擬服務(wù)器;-t:表示tcp協(xié)議;-s:表示調(diào)度算法是輪詢。參數(shù)含義如下所示。-a:表示添加一個(gè)真實(shí)服務(wù)器,以及之前定義的集群服務(wù)的地址端口;-r:表示增加具體真實(shí)服務(wù)器的IP地址;-m:表示模式為NAT模式。(1)配置完成后,需要使用客戶端測試負(fù)載均衡器是否正常工作。若使用VM虛擬機(jī)或真實(shí)物理機(jī)作為客戶端,需要在客戶端安裝測試工具Elinks。[root@natlb~]#yum-yinstallelinks……安裝過程省略……Installed:elinks.x86_640:0.12-0.37.pre6.el7.0.1

Complete!3.客戶端測試6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署3.客戶端測試6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署(2)多進(jìn)行幾次網(wǎng)站的訪問。[root@natlb~]#elinks--dump2web1[root@natlb~]#elinks--dump2web2[root@natlb~]#elinks--dump2web1[root@natlb~]#elinks--dump2web2[root@natlb~]#elinks--dump2web1[root@natlb~]#elinks--dump2web2[root@natlb~]#elinks--dump2web1web1和web2交替進(jìn)行服務(wù),說明負(fù)載均衡器有效地將外界的請求在內(nèi)部進(jìn)行分發(fā),提高了網(wǎng)站的工作效率。3.客戶端測試6.2

LVS-NAT四層負(fù)載集群實(shí)戰(zhàn)案例6.2.3

搭建部署(3)使用宿主機(jī)瀏覽器訪問LVS負(fù)載均衡調(diào)度器,模擬客戶端訪問的場景,會(huì)交替訪問到后端真實(shí)服務(wù)器,具體如圖。6.3LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例環(huán)境準(zhǔn)備搭建部署6.2節(jié)講解了LVS-NAT模式集群,其優(yōu)點(diǎn)是使用內(nèi)網(wǎng)與真實(shí)服務(wù)器傳輸數(shù)據(jù)包,網(wǎng)絡(luò)隔離更安全,節(jié)約了IP地址,以致于被廣泛使用。隨著網(wǎng)絡(luò)規(guī)模的不斷增大,其缺點(diǎn)逐漸暴露,由于所有的數(shù)據(jù)流都要經(jīng)過DR進(jìn)入和轉(zhuǎn)發(fā),DR很可能成為系統(tǒng)性能瓶頸。本節(jié)講解LVS-DR模式,有效地規(guī)避了這個(gè)問題。6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.1

環(huán)境準(zhǔn)備本次實(shí)驗(yàn)需要3臺VM虛擬機(jī)(或者物理服務(wù)器),一臺LVS負(fù)載均衡服務(wù)器,兩臺真實(shí)服務(wù)器,并且處于同一網(wǎng)段,具體如表。角色主機(jī)名IP負(fù)載均衡器(LVS-DR)drlb2950(VIP)真實(shí)服務(wù)器web330真實(shí)服務(wù)器web431說明:提前關(guān)閉防火墻及SELinux;客戶端使用宿主機(jī)代替。為了便于讀者觀察實(shí)驗(yàn)操作對象,這里分別將服務(wù)器的主機(jī)名修改為drlb、web3、web4。1.為了保證各服務(wù)器的時(shí)間一致,對所有服務(wù)器進(jìn)行時(shí)間校對。2.查看操作系統(tǒng)及內(nèi)核版本。[root@localhost~]#ntpdate-u1[root@localhost~]#cat/etc/redhat-releaseCentOSLinuxrelease7.6.1810(Core)[root@localhost~]#uname-r3.10.0-957.el7.x86_64[root@localhost~]#uname-mx86_646.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.1

環(huán)境準(zhǔn)備1.配置LVS負(fù)載均衡器在LVS-DR負(fù)載集群中,要求包含的每一臺主機(jī)都要配置一個(gè)公網(wǎng)IP,并且LVS負(fù)載調(diào)度器以及真實(shí)服務(wù)器配置一個(gè)相同的虛擬IP,此虛擬IP需要與其他IP在同一網(wǎng)段,且是未被占有的IP地址。(3)安裝網(wǎng)卡接口配置工具。[root@drlb~]#yum-yinstallnet-tools……安裝過程省略……Installed:net-tools.x86_640:2.0-0.25.20131004git.el7Complete!6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(4)添加虛擬IP的虛擬接口,將VIP配置在物理網(wǎng)卡的子接口上,本實(shí)驗(yàn)的VIP設(shè)置為50。[root@drlb~]#ifconfigens33:050broadcast55netmaskup1.配置LVS負(fù)載均衡器(5)查看網(wǎng)絡(luò)接口和網(wǎng)卡信息。6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(6)給ens33:0添加路由,實(shí)現(xiàn)將目標(biāo)地址為VIP的數(shù)據(jù)包從VIP的子接口上發(fā)送出去。[root@drlb~]#routeadd-host50devens33:0為ens33網(wǎng)卡配置了一個(gè)子接口,即VIP。1.配置LVS負(fù)載均衡器(7)修改系統(tǒng)配置文件,設(shè)置路由轉(zhuǎn)發(fā),關(guān)閉重定向。[root@drlb~]#vim/etc/sysctl.confnet.ipv4.ip_forward=1 #開啟路由功能net.ipv4.conf.all.send_redirects=0 #禁止轉(zhuǎn)發(fā)重定向報(bào)文net.ipv4.conf.ens33.send_redirects=0

#禁止ens33轉(zhuǎn)發(fā)重定向報(bào)文net.ipv4.conf.default.send_redirects=0 #禁止轉(zhuǎn)發(fā)默認(rèn)重定向報(bào)文6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(8)修改完成系統(tǒng)配置文件后,可以更新配置結(jié)果到內(nèi)存。[root@drlb~]#sysctl-pnet.ipv4.ip_forward=1net.ipv4.conf.all.send_redirects=0net.ipv4.conf.ens33.send_redirects=0net.ipv4.conf.default.send_redirects=01.配置LVS負(fù)載均衡器(9)安裝LVS集群管理軟件Ipvsadm。[root@drlb~]#yum-yinstallipvsadm……安裝過程省略……Installed:ipvsadm.x86_640:1.27-8.el7Complete!6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(10)清除內(nèi)核虛擬服務(wù)器表中的所有IPVS規(guī)則。[root@drlb~]#ipvsadm-C(11)添加虛擬服務(wù)器,即VIP,使用輪詢調(diào)度算法。[root@drlb~]#ipvsadm-A-t50:80-srr1.配置LVS負(fù)載均衡器(12)將Web真實(shí)服務(wù)器的IP加入輪詢隊(duì)伍。[root@drlb~]#ipvsadm-a-t50:80-r30:80-g[root@drlb~]#ipvsadm-a-t50:80-r31:80-g6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(13)查看當(dāng)前配置的虛擬服務(wù)以及各個(gè)真實(shí)服務(wù)器的權(quán)重。[root@drlb~]#ipvsa[root@drlb~]#ipvsadm-LnIPVirtualServerversion1.2.1(size=4096)ProtLocalAddress:PortSchedulerFlags->RemoteAddress:PortForwardWeightActiveConnInActConnTCP50:80rr->30:80Route100->31:80Route110dm-C-g參數(shù)表示LVS的工作模式為直接路由模式。1.配置LVS負(fù)載均衡器(15)設(shè)置Ipvsadm開機(jī)自啟。[root@drlb~]#systemctlenableipvsadm6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(14)永久保存LVS負(fù)載配置,以確保Ipvsadm服務(wù)正常運(yùn)行。[root@drlb~]#ipvsadm-save>/etc/sysconfig/ipvsadm2.配置Web集群(1)為案例中的兩臺web服務(wù)器安裝http軟件,部署Web服務(wù)。[root@web3~]#yum-yinstallhttpd……安裝過程省略……Installed:httpd.x86_640:2.4.6-97.el7.centos.4Complete![root@web4~]#yum-yinstallhttpd6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(2)為了區(qū)分到底是哪臺服務(wù)器在處理請求,設(shè)置不同的Web頁面。//web3[root@web3~]#echoweb3>/var/www/html/index.html//web4[root@web4~]#echoweb4>/var/www/html/index.html2.配置Web集群(3)啟動(dòng)httpd服務(wù),并設(shè)置為開機(jī)自啟。//web3[root@web3~]#systemctlstarthttpd[root@web3~]#systemctlenablehttpd//web4[root@web4~]#systemctlstarthttpd[root@web4~]#systemctlenablehttpd6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(4)安裝Net-tools工具,然后為Web服務(wù)器的lo網(wǎng)卡設(shè)置成子網(wǎng)掩碼為32位的VIP。//web3[root@web3~]#yum-yinstallnet-tools[root@web3~]#ifconfiglo:050/32//web4[root@web4~]#yum-yinstallnet-tools[root@web4~]#ifconfiglo:050/322.配置Web集群若在同一個(gè)廣播域(網(wǎng)段)配置多個(gè)相同VIP,會(huì)造成各服務(wù)器ARP(AddressResolutionProtocol,地址解析協(xié)議)通信的紊亂,那么需要配置Web服務(wù)器的內(nèi)核參數(shù),關(guān)閉ARP轉(zhuǎn)發(fā),實(shí)現(xiàn)接口IP的廣播不響應(yīng)不廣播。6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(5)配置接收到ARP請求時(shí)的應(yīng)答模式。//web3[root@web3~]#echo1>/proc/sys/net/ipv4/conf/all/arp_ignore//web4[root@web4~]#echo1>/proc/sys/net/ipv4/conf/all/arp_ignore2.配置Web集群6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(5)arp_ignore內(nèi)核參數(shù)文件的取值及含義如下所示。0(默認(rèn)值):表示回應(yīng)任何網(wǎng)絡(luò)接口上對任何本地IP地址的ARP查詢請求。1:表示只回答目標(biāo)IP地址是來訪網(wǎng)絡(luò)接口本地地址的ARP查詢請求。2:表示只回答目標(biāo)IP地址是來訪網(wǎng)絡(luò)接口本地地址的ARP查詢請求,且來訪IP必須在該網(wǎng)絡(luò)接口的子網(wǎng)段內(nèi)。3:表示不回應(yīng)該網(wǎng)絡(luò)界面的ARP請求,而只對設(shè)置的唯一和連接地址作出回應(yīng)。4-7:表示保留未使用。8:表示不回應(yīng)所有(本地地址)的arp查詢。2.配置Web集群6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(5)配置接發(fā)送ARP請求時(shí)的動(dòng)作。//web3[root@web3~]#echo2>/proc/sys/net/ipv4/conf/all/arp_announce//web4[root@web4~]#echo2>/proc/sys/net/ipv4/conf/all/arp_announcearp_announce內(nèi)核參數(shù)文件的取值及含義如下所示。0(默認(rèn)值):允許使用任意網(wǎng)卡上的IP地址作為ARP請求的源IP。1:盡量避免不在該網(wǎng)絡(luò)接口子網(wǎng)段的本地地址作為發(fā)送ARP請求的源IP地址。2:忽略IP數(shù)據(jù)包的源IP地址,選擇該發(fā)送網(wǎng)卡上最合適的本地地址作為ARP請求的源IP地址。3.客戶端測試(1)配置完成后,需要使用客戶端測試負(fù)載均衡器是否正常工作。若使用VM虛擬機(jī)或真實(shí)物理機(jī)作為客戶端,需要在客戶端安裝測試工具Elinks。[root@drlb~]#yum-yinstallelinks……安裝過程省略……Installed:elinks.x86_640:0.12-0.37.pre6.el7.0.1Complete!6.3

LVS-DR四層負(fù)載集群實(shí)戰(zhàn)案例6.3.2

搭建部署(2)多進(jìn)行幾次網(wǎng)站的訪問,觀察訪問的結(jié)果。[root@drlb

溫馨提示

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

最新文檔

評論

0/150

提交評論