負(fù)載均衡技術(shù)攻略_第1頁
負(fù)載均衡技術(shù)攻略_第2頁
負(fù)載均衡技術(shù)攻略_第3頁
負(fù)載均衡技術(shù)攻略_第4頁
負(fù)載均衡技術(shù)攻略_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、Internet的規(guī)模每一百天就會增長一倍,客戶希望獲得7天24小時(shí)的不間斷可用性及較快的系統(tǒng)反應(yīng)時(shí)間,而不愿屢次看到某個站點(diǎn)“Server Too Busy”及頻繁的系統(tǒng)故障。網(wǎng)絡(luò)的各個核心部分隨著業(yè)務(wù)量的提高、訪問量和數(shù)據(jù)流量的快速增長,其處理能力和計(jì)算強(qiáng)度也相應(yīng)增大,使得單一設(shè)備根本無法承擔(dān)。在此情況下,如果扔掉現(xiàn)有設(shè)備去做大量的硬件升級,這樣將造成現(xiàn)有資源的浪費(fèi),而且如果再面臨下一次業(yè)務(wù)量的提升,這又將導(dǎo)致再一次硬件升級的高額成本投入,甚至性能再卓越的設(shè)備也不能滿足當(dāng)前業(yè)務(wù)量的需求。于是,負(fù)載均衡機(jī)制應(yīng)運(yùn)而生。負(fù)載均衡(Load Balance)建立在現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)之上,它提供了一種廉價(jià)

2、有效透明的方法擴(kuò)展網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬、增加吞吐量、加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性。負(fù)載均衡有兩方面的含義:首先,大量的并發(fā)訪問或數(shù)據(jù)流量分擔(dān)到多臺節(jié)點(diǎn)設(shè)備上分別處理,減少用戶等待響應(yīng)的時(shí)間;其次,單個重負(fù)載的運(yùn)算分擔(dān)到多臺節(jié)點(diǎn)設(shè)備上做并行處理,每個節(jié)點(diǎn)設(shè)備處理結(jié)束后,將結(jié)果匯總,返回給用戶,系統(tǒng)處理能力得到大幅度提高。本文所要介紹的負(fù)載均衡技術(shù)主要是指在均衡服務(wù)器群中所有服務(wù)器和應(yīng)用程序之間流量負(fù)載的應(yīng)用,目前負(fù)載均衡技術(shù)大多數(shù)是用于提高諸如在Web服務(wù)器、FTP服務(wù)器和其它關(guān)鍵任務(wù)服務(wù)器上的Internet服務(wù)器程序的可用性和可伸縮性。 負(fù)載均衡技術(shù)分類目前有許多不同的負(fù)

3、載均衡技術(shù)用以滿足不同的應(yīng)用需求,下面從負(fù)載均衡所采用的設(shè)備對象、應(yīng)用的網(wǎng)絡(luò)層次(指OSI參考模型)及應(yīng)用的地理結(jié)構(gòu)等來分類。軟/硬件負(fù)載均衡 軟件負(fù)載均衡解決方案是指在一臺或多臺服務(wù)器相應(yīng)的操作系統(tǒng)上安裝一個或多個附加軟件來實(shí)現(xiàn)負(fù)載均衡,如DNS Load Balance,CheckPoint Firewall-1 ConnectControl等,它的優(yōu)點(diǎn)是基于特定環(huán)境,配置簡單,使用靈活,成本低廉,可以滿足一般的負(fù)載均衡需求。軟件解決方案缺點(diǎn)也較多,因?yàn)槊颗_服務(wù)器上安裝額外的軟件運(yùn)行會消耗系統(tǒng)不定量的資源,越是功能強(qiáng)大的模塊,消耗得越多,所以當(dāng)連接請求特別大的時(shí)候,軟件本身會成為服務(wù)器工作

4、成敗的一個關(guān)鍵;軟件可擴(kuò)展性并不是很好,受到操作系統(tǒng)的限制;由于操作系統(tǒng)本身的Bug,往往會引起安全問題。硬件負(fù)載均衡解決方案是直接在服務(wù)器和外部網(wǎng)絡(luò)間安裝負(fù)載均衡設(shè)備,這種設(shè)備我們通常稱之為負(fù)載均衡器,由于專門的設(shè)備完成專門的任務(wù),獨(dú)立于操作系統(tǒng),整體性能得到大量提高,加上多樣化的負(fù)載均衡策略,智能化的流量管理,可達(dá)到最佳的負(fù)載均衡需求。負(fù)載均衡器有多種多樣的形式,除了作為獨(dú)立意義上的負(fù)載均衡器外,有些負(fù)載均衡器集成在交換設(shè)備中,置于服務(wù)器與Internet鏈接之間,有些則以兩塊網(wǎng)絡(luò)適配器將這一功能集成到PC中,一塊連接到Internet上,一塊連接到后端服務(wù)器群的內(nèi)部網(wǎng)絡(luò)上。一般而言,硬件

5、負(fù)載均衡在功能、性能上優(yōu)于軟件方式,不過成本昂貴。 本地/全局負(fù)載均衡負(fù)載均衡從其應(yīng)用的地理結(jié)構(gòu)上分為本地負(fù)載均衡(Local Load Balance)和全局負(fù)載均衡(Global Load Balance,也叫地域負(fù)載均衡),本地負(fù)載均衡是指對本地的服務(wù)器群做負(fù)載均衡,全局負(fù)載均衡是指對分別放置在不同的地理位置、有不同網(wǎng)絡(luò)結(jié)構(gòu)的服務(wù)器群間作負(fù)載均衡。本地負(fù)載均衡能有效地解決數(shù)據(jù)流量過大、網(wǎng)絡(luò)負(fù)荷過重的問題,并且不需花費(fèi)昂貴開支購置性能卓越的服務(wù)器,充分利用現(xiàn)有設(shè)備,避免服務(wù)器單點(diǎn)故障造成數(shù)據(jù)流量的損失。其有靈活多樣的均衡策略把數(shù)據(jù)流量合理地分配給服務(wù)器群內(nèi)的服務(wù)器共同負(fù)擔(dān)。即使是再給現(xiàn)有服

6、務(wù)器擴(kuò)充升級,也只是簡單地增加一個新的服務(wù)器到服務(wù)群中,而不需改變現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)、停止現(xiàn)有的服務(wù)。全局負(fù)載均衡主要用于在一個多區(qū)域擁有自己服務(wù)器的站點(diǎn),為了使全球用戶只以一個IP地址或域名就能訪問到離自己最近的服務(wù)器,從而獲得最快的訪問速度,也可用于子公司分散站點(diǎn)分布廣的大公司通過Intranet(企業(yè)內(nèi)部互聯(lián)網(wǎng))來達(dá)到資源統(tǒng)一合理分配的目的。全局負(fù)載均衡有以下的特點(diǎn): 1. 實(shí)現(xiàn)地理位置無關(guān)性,能夠遠(yuǎn)距離為用戶提供完全的透明服務(wù)。 2. 除了能避免服務(wù)器、數(shù)據(jù)中心等的單點(diǎn)失效,也能避免由于ISP專線故障引起的單點(diǎn)失效。 3. 解決網(wǎng)絡(luò)擁塞問題,提高服務(wù)器響應(yīng)速度,服務(wù)就近提供,達(dá)到更好的訪問質(zhì)

7、量。 網(wǎng)絡(luò)層次上的負(fù)載均衡針對網(wǎng)絡(luò)上負(fù)載過重的不同瓶頸所在,從網(wǎng)絡(luò)的不同層次入手,我們可以采用相應(yīng)的負(fù)載均衡技術(shù)來解決現(xiàn)有問題。隨著帶寬增加,數(shù)據(jù)流量不斷增大,網(wǎng)絡(luò)核心部分的數(shù)據(jù)接口將面臨瓶頸問題,原有的單一線路將很難滿足需求,而且線路的升級又過于昂貴甚至難以實(shí)現(xiàn),這時(shí)就可以考慮采用鏈路聚合(Trunking)技術(shù)。鏈路聚合技術(shù)(第二層負(fù)載均衡)將多條物理鏈路當(dāng)作一條單一的聚合邏輯鏈路使用,網(wǎng)絡(luò)數(shù)據(jù)流量由聚合邏輯鏈路中所有物理鏈路共同承擔(dān),由此在邏輯上增大了鏈路的容量,使其能滿足帶寬增加的需求?,F(xiàn)代負(fù)載均衡技術(shù)通常操作于網(wǎng)絡(luò)的第四層或第七層。第四層負(fù)載均衡將一個Internet上合法注冊的IP

8、地址映射為多個內(nèi)部服務(wù)器的IP地址,對每次TCP連接請求動態(tài)使用其中一個內(nèi)部IP地址,達(dá)到負(fù)載均衡的目的。在第四層交換機(jī)中,此種均衡技術(shù)得到廣泛的應(yīng)用,一個目標(biāo)地址是服務(wù)器群VIP(虛擬IP,Virtual IP address)連接請求的數(shù)據(jù)包流經(jīng)交換機(jī),交換機(jī)根據(jù)源端和目的IP地址、TCP或UDP端口號和一定的負(fù)載均衡策略,在服務(wù)器IP和VIP間進(jìn)行映射,選取服務(wù)器群中最好的服務(wù)器來處理連接請求。第七層負(fù)載均衡控制應(yīng)用層服務(wù)的內(nèi)容,提供了一種對訪問流量的高層控制方式,適合對HTTP服務(wù)器群的應(yīng)用。第七層負(fù)載均衡技術(shù)通過檢查流經(jīng)的HTTP報(bào)頭,根據(jù)報(bào)頭內(nèi)的信息來執(zhí)行負(fù)載均衡任務(wù)。第七層負(fù)載均

9、衡優(yōu)點(diǎn)表現(xiàn)在如下幾個方面: 1. 通過對HTTP報(bào)頭的檢查,可以檢測出HTTP400、500和600系列的錯誤信息,因而能透明地將連接請求重新定向到另一臺服務(wù)器,避免應(yīng)用層故障。 2. 可根據(jù)流經(jīng)的數(shù)據(jù)類型(如判斷數(shù)據(jù)包是圖像文件、壓縮文件或多媒體文件格式等),把數(shù)據(jù)流量引向相應(yīng)內(nèi)容的服務(wù)器來處理,增加系統(tǒng)性能。 3. 能根據(jù)連接請求的類型,如是普通文本、圖象等靜態(tài)文檔請求,還是asp、cgi等的動態(tài)文檔請求,把相應(yīng)的請求引向相應(yīng)的服務(wù)器來處理,提高系統(tǒng)的性能及安全性。 第七層負(fù)載均衡受到其所支持的協(xié)議限制(一般只有HTTP),這樣就限制了它應(yīng)用的廣泛性,并且檢查HTTP報(bào)頭會占用大量的系統(tǒng)資

10、源,勢必會影響到系統(tǒng)的性能,在大量連接請求的情況下,負(fù)載均衡設(shè)備自身容易成為網(wǎng)絡(luò)整體性能的瓶頸負(fù)載均衡策略 在實(shí)際應(yīng)用中,我們可能不想僅僅是把客戶端的服務(wù)請求平均地分配給內(nèi)部服務(wù)器,而不管服務(wù)器是否宕機(jī)。而是想使Pentium III服務(wù)器比Pentium II能接受更多的服務(wù)請求,一臺處理服務(wù)請求較少的服務(wù)器能分配到更多的服務(wù)請求,出現(xiàn)故障的服務(wù)器將不再接受服務(wù)請求直至故障恢復(fù)等等。選擇合適的負(fù)載均衡策略,使多個設(shè)備能很好的共同完成任務(wù),消除或避免現(xiàn)有網(wǎng)絡(luò)負(fù)載分布不均、數(shù)據(jù)流量擁擠反應(yīng)時(shí)間長的瓶頸。在各負(fù)載均衡方式中,針對不同的應(yīng)用需求,在OSI參考模型的第二、三、四、七層的負(fù)載均衡都有相應(yīng)

11、的負(fù)載均衡策略。 負(fù)載均衡策略的優(yōu)劣及其實(shí)現(xiàn)的難易程度有兩個關(guān)鍵因素:一、負(fù)載均衡算法,二、對網(wǎng)絡(luò)系統(tǒng)狀況的檢測方式和能力??紤]到服務(wù)請求的不同類型、服務(wù)器的不同處理能力以及隨機(jī)選擇造成的負(fù)載分配不均勻等問題,為了更加合理的把負(fù)載分配給內(nèi)部的多個服務(wù)器,就需要應(yīng)用相應(yīng)的能夠正確反映各個服務(wù)器處理能力及網(wǎng)絡(luò)狀態(tài)的負(fù)載均衡算法:1. 輪循均衡(Round Robin):每一次來自網(wǎng)絡(luò)的請求輪流分配給內(nèi)部中的服務(wù)器,從1至N然后重新開始。此種均衡算法適合于服務(wù)器組中的所有服務(wù)器都有相同的軟硬件配置并且平均服務(wù)請求相對均衡的情況。 2. 權(quán)重輪循均衡(Weighted Round Robin):根據(jù)服

12、務(wù)器的不同處理能力,給每個服務(wù)器分配不同的權(quán)值,使其能夠接受相應(yīng)權(quán)值數(shù)的服務(wù)請求。例如:服務(wù)器A的權(quán)值被設(shè)計(jì)成1,B的權(quán)值是3,C的權(quán)值是6,則服務(wù)器A、B、C將分別接受到10%、30、60的服務(wù)請求。此種均衡算法能確保高性能的服務(wù)器得到更多的使用率,避免低性能的服務(wù)器負(fù)載過重。 3. 隨機(jī)均衡(Random):把來自網(wǎng)絡(luò)的請求隨機(jī)分配給內(nèi)部中的多個服務(wù)器。 4. 權(quán)重隨機(jī)均衡(Weighted Random):此種均衡算法類似于權(quán)重輪循算法,不過在處理請求分擔(dān)時(shí)是個隨機(jī)選擇的過程。 5. 響應(yīng)速度均衡(Response Time):負(fù)載均衡設(shè)備對內(nèi)部各服務(wù)器發(fā)出一個探測請求(例如Ping),

13、然后根據(jù)內(nèi)部中各服務(wù)器對探測請求的最快響應(yīng)時(shí)間來決定哪一臺服務(wù)器來響應(yīng)客戶端的服務(wù)請求。此種均衡算法能較好的反映服務(wù)器的當(dāng)前運(yùn)行狀態(tài),但這最快響應(yīng)時(shí)間僅僅指的是負(fù)載均衡設(shè)備與服務(wù)器間的最快響應(yīng)時(shí)間,而不是客戶端與服務(wù)器間的最快響應(yīng)時(shí)間。6. 最少連接數(shù)均衡(Least Connection):客戶端的每一次請求服務(wù)在服務(wù)器停留的時(shí)間可能會有較大的差異,隨著工作時(shí)間加長,如果采用簡單的輪循或隨機(jī)均衡算法,每一臺服務(wù)器上的連接進(jìn)程可能會產(chǎn)生極大的不同,并沒有達(dá)到真正的負(fù)載均衡。最少連接數(shù)均衡算法對內(nèi)部中需負(fù)載的每一臺服務(wù)器都有一個數(shù)據(jù)記錄,記錄當(dāng)前該服務(wù)器正在處理的連接數(shù)量,當(dāng)有新的服務(wù)連接請求時(shí)

14、,將把當(dāng)前請求分配給連接數(shù)最少的服務(wù)器,使均衡更加符合實(shí)際情況,負(fù)載更加均衡。此種均衡算法適合長時(shí)處理的請求服務(wù),如FTP。7. 處理能力均衡:此種均衡算法將把服務(wù)請求分配給內(nèi)部中處理負(fù)荷(根據(jù)服務(wù)器CPU型號、CPU數(shù)量、內(nèi)存大小及當(dāng)前連接數(shù)等換算而成)最輕的服務(wù)器,由于考慮到了內(nèi)部服務(wù)器的處理能力及當(dāng)前網(wǎng)絡(luò)運(yùn)行狀況,所以此種均衡算法相對來說更加精確,尤其適合運(yùn)用到第七層(應(yīng)用層)負(fù)載均衡的情況下。 8. DNS響應(yīng)均衡(Flash DNS):在Internet上,無論是HTTP、FTP或是其它的服務(wù)請求,客戶端一般都是通過域名解析來找到服務(wù)器確切的IP地址的。在此均衡算法下,分處在不同地理

15、位置的負(fù)載均衡設(shè)備收到同一個客戶端的域名解析請求,并在同一時(shí)間內(nèi)把此域名解析成各自相對應(yīng)服務(wù)器的IP地址(即與此負(fù)載均衡設(shè)備在同一位地理位置的服務(wù)器的IP地址)并返回給客戶端,則客戶端將以最先收到的域名解析IP地址來繼續(xù)請求服務(wù),而忽略其它的IP地址響應(yīng)。在種均衡策略適合應(yīng)用在全局負(fù)載均衡的情況下,對本地負(fù)載均衡是沒有意義的。 盡管有多種的負(fù)載均衡算法可以較好的把數(shù)據(jù)流量分配給服務(wù)器去負(fù)載,但如果負(fù)載均衡策略沒有對網(wǎng)絡(luò)系統(tǒng)狀況的檢測方式和能力,一旦在某臺服務(wù)器或某段負(fù)載均衡設(shè)備與服務(wù)器網(wǎng)絡(luò)間出現(xiàn)故障的情況下,負(fù)載均衡設(shè)備依然把一部分?jǐn)?shù)據(jù)流量引向那臺服務(wù)器,這勢必造成大量的服務(wù)請求被丟失,達(dá)不到

16、不間斷可用性的要求。所以良好的負(fù)載均衡策略應(yīng)有對網(wǎng)絡(luò)故障、服務(wù)器系統(tǒng)故障、應(yīng)用服務(wù)故障的檢測方式和能力:1. Ping偵測:通過ping的方式檢測服務(wù)器及網(wǎng)絡(luò)系統(tǒng)狀況,此種方式簡單快速,但只能大致檢測出網(wǎng)絡(luò)及服務(wù)器上的操作系統(tǒng)是否正常,對服務(wù)器上的應(yīng)用服務(wù)檢測就無能為力了。 2. TCP Open偵測:每個服務(wù)都會開放某個通過TCP連接,檢測服務(wù)器上某個TCP端口(如Telnet的23口,HTTP的80口等)是否開放來判斷服務(wù)是否正常。 3. HTTP URL偵測:比如向HTTP服務(wù)器發(fā)出一個對main.html文件的訪問請求,如果收到錯誤信息,則認(rèn)為服務(wù)器出現(xiàn)故障。 負(fù)載均衡策略的優(yōu)劣除受上

17、面所講的兩個因素影響外,在有些應(yīng)用情況下,我們需要將來自同一客戶端的所有請求都分配給同一臺服務(wù)器去負(fù)擔(dān),例如服務(wù)器將客戶端注冊、購物等服務(wù)請求信息保存的本地?cái)?shù)據(jù)庫的情況下,把客戶端的子請求分配給同一臺服務(wù)器來處理就顯的至關(guān)重要了。有兩種方式可以解決此問題,一是根據(jù)IP地址把來自同一客戶端的多次請求分配給同一臺服務(wù)器處理,客戶端IP地址與服務(wù)器的對應(yīng)信息是保存在負(fù)載均衡設(shè)備上的;二是在客戶端瀏覽器cookie內(nèi)做獨(dú)一無二的標(biāo)識來把多次請求分配給同一臺服務(wù)器處理,適合通過代理服務(wù)器上網(wǎng)的客戶端。還有一種路徑外返回模式(Out of Path Return),當(dāng)客戶端連接請求發(fā)送給負(fù)載均衡設(shè)備的時(shí)候

18、,中心負(fù)載均衡設(shè)備將請求引向某個服務(wù)器,服務(wù)器的回應(yīng)請求不再返回給中心負(fù)載均衡設(shè)備,即繞過流量分配器,直接返回給客戶端,因此中心負(fù)載均衡設(shè)備只負(fù)責(zé)接受并轉(zhuǎn)發(fā)請求,其網(wǎng)絡(luò)負(fù)擔(dān)就減少了很多,并且給客戶端提供了更快的響應(yīng)時(shí)間。此種模式一般用于HTTP服務(wù)器群,在各服務(wù)器上要安裝一塊虛擬網(wǎng)絡(luò)適配器,并將其IP地址設(shè)為服務(wù)器群的VIP,這樣才能在服務(wù)器直接回應(yīng)客戶端請求時(shí)順利的達(dá)成三次握手。 負(fù)載均衡技術(shù)全攻略(下)Internet的規(guī)模每一百天就會增長一倍,客戶希望獲得7天24小時(shí)的不間斷可用性及較快的系統(tǒng)反應(yīng)時(shí)間,而不愿屢次看到某個站點(diǎn)“Server Too Busy”及頻繁的系統(tǒng)故障。網(wǎng)絡(luò)的各個核

19、心部分隨著業(yè)務(wù)量的提高、訪問量和數(shù)據(jù)流量的快速增長,其處理能力和計(jì)算強(qiáng)度也相應(yīng)增大,使得單一設(shè)備根本無法承擔(dān)。在此情況下,如果扔掉現(xiàn)有設(shè)備去做大量的硬件升級,這樣將造成現(xiàn)有資源的浪費(fèi),而且如果再面臨下一次業(yè)務(wù)量的提升,這又將導(dǎo)致再一次硬件升級的高額成本投入,甚至性能再卓越的設(shè)備也不能滿足當(dāng)前業(yè)務(wù)量的需求。于是,負(fù)載均衡機(jī)制應(yīng)運(yùn)而生。負(fù)載均衡(Load Balance)建立在現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)之上,它提供了一種廉價(jià)有效透明的方法擴(kuò)展網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬、增加吞吐量、加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性。負(fù)載均衡有兩方面的含義:首先,大量的并發(fā)訪問或數(shù)據(jù)流量分擔(dān)到多臺節(jié)點(diǎn)設(shè)備上分別處理,減少

20、用戶等待響應(yīng)的時(shí)間;其次,單個重負(fù)載的運(yùn)算分擔(dān)到多臺節(jié)點(diǎn)設(shè)備上做并行處理,每個節(jié)點(diǎn)設(shè)備處理結(jié)束后,將結(jié)果匯總,返回給用戶,系統(tǒng)處理能力得到大幅度提高。本文所要介紹的負(fù)載均衡技術(shù)主要是指在均衡服務(wù)器群中所有服務(wù)器和應(yīng)用程序之間流量負(fù)載的應(yīng)用,目前負(fù)載均衡技術(shù)大多數(shù)是用于提高諸如在Web服務(wù)器、FTP服務(wù)器和其它關(guān)鍵任務(wù)服務(wù)器上的Internet服務(wù)器程序的可用性和可伸縮性。  負(fù)載均衡實(shí)施要素負(fù)載均衡方案應(yīng)是在網(wǎng)站建設(shè)初期就應(yīng)考慮的問題,不過有時(shí)隨著訪問流量的爆炸性增長,超出決策者的意料,這也就成為不得不面對的問題。當(dāng)我們在引入某種負(fù)載均衡方案乃至具體實(shí)施時(shí),像其他的許多方案一樣,首先

21、是確定當(dāng)前及將來的應(yīng)用需求,然后在代價(jià)與收效之間做出權(quán)衡。針對當(dāng)前及將來的應(yīng)用需求,分析網(wǎng)絡(luò)瓶頸的不同所在,我們就需要確立是采用哪一類的負(fù)載均衡技術(shù),采用什么樣的均衡策略,在可用性、兼容性、安全性等等方面要滿足多大的需求,如此等等。不管負(fù)載均衡方案是采用花費(fèi)較少的軟件方式,還是購買代價(jià)高昂在性能功能上更強(qiáng)的第四層交換機(jī)、負(fù)載均衡器等硬件方式來實(shí)現(xiàn),亦或其他種類不同的均衡技術(shù),下面這幾項(xiàng)都是我們在引入均衡方案時(shí)可能要考慮的問題: 1. 性能:性能是我們在引入均衡方案時(shí)需要重點(diǎn)考慮的問題,但也是一個最難把握的問題。衡量性能時(shí)可將每秒鐘通過網(wǎng)絡(luò)的數(shù)據(jù)包數(shù)目做為一個參數(shù),另一個參數(shù)是均衡方案中服務(wù)器群

22、所能處理的最大并發(fā)連接數(shù)目,但是,假設(shè)一個均衡系統(tǒng)能處理百萬計(jì)的并發(fā)連接數(shù),可是卻只能以每秒2個包的速率轉(zhuǎn)發(fā),這顯然是沒有任何作用的。 性能的優(yōu)劣與負(fù)載均衡設(shè)備的處理能力、采用的均衡策略息息相關(guān),并且有兩點(diǎn)需要注意:一、均衡方案對服務(wù)器群整體的性能,這是響應(yīng)客戶端連接請求速度的關(guān)鍵;二、負(fù)載均衡設(shè)備自身的性能,避免有大量連接請求時(shí)自身性能不足而成為服務(wù)瓶頸。 有時(shí)我們也可以考慮采用混合型負(fù)載均衡策略來提升服務(wù)器群的總體性能,如DNS負(fù)載均衡與NAT負(fù)載均衡相結(jié)合。另外,針對有大量靜態(tài)文檔請求的站點(diǎn),也可以考慮采用高速緩存技術(shù),相對來說更節(jié)省費(fèi)用,更能提高響應(yīng)性能;對有大量ssl/xml內(nèi)容傳輸

23、的站點(diǎn),更應(yīng)考慮采用ssl/xml加速技術(shù)。 2. 可擴(kuò)展性:IT技術(shù)日新月異,一年以前最新的產(chǎn)品,現(xiàn)在或許已是網(wǎng)絡(luò)中性能最低的產(chǎn)品;業(yè)務(wù)量的急速上升,一年前的網(wǎng)絡(luò),現(xiàn)在需要新一輪的擴(kuò)展。合適的均衡解決方案應(yīng)能滿足這些需求,能均衡不同操作系統(tǒng)和硬件平臺之間的負(fù)載,能均衡HTTP、郵件、新聞、代理、數(shù)據(jù)庫、防火墻和 Cache等不同服務(wù)器的負(fù)載,并且能以對客戶端完全透明的方式動態(tài)增加或刪除某些資源。 3. 靈活性:均衡解決方案應(yīng)能靈活地提供不同的應(yīng)用需求,滿足應(yīng)用需求的不斷變化。在不同的服務(wù)器群有不同的應(yīng)用需求時(shí),應(yīng)有多樣的均衡策略提供更廣泛的選擇。 4. 可靠性:在對服務(wù)質(zhì)量要求較高的站點(diǎn),負(fù)

24、載均衡解決方案應(yīng)能為服務(wù)器群提供完全的容錯性和高可用性。但在負(fù)載均衡設(shè)備自身出現(xiàn)故障時(shí),應(yīng)該有良好的冗余解決方案,提高可靠性。使用冗余時(shí),處于同一個冗余單元的多個負(fù)載均衡設(shè)備必須具有有效的方式以便互相進(jìn)行監(jiān)控,保護(hù)系統(tǒng)盡可能地避免遭受到重大故障的損失。 5. 易管理性:不管是通過軟件還是硬件方式的均衡解決方案,我們都希望它有靈活、直觀和安全的管理方式,這樣便于安裝、配置、維護(hù)和監(jiān)控,提高工作效率,避免差錯。在硬件負(fù)載均衡設(shè)備上,目前主要有三種管理方式可供選擇:一、命令行接口(CLI:Command Line Interface),可通過超級終端連接負(fù)載均衡設(shè)備串行接口來管理,也能telnet遠(yuǎn)

25、程登錄管理,在初始化配置時(shí),往往要用到前者;二、圖形用戶接口(GUI:Graphical User Interfaces),有基于普通web頁的管理,也有通過Java Applet 進(jìn)行安全管理,一般都需要管理端安裝有某個版本的瀏覽器;三、SNMP(Simple Network Management Protocol,簡單網(wǎng)絡(luò)管理協(xié)議)支持,通過第三方網(wǎng)絡(luò)管理軟件對符合SNMP標(biāo)準(zhǔn)的設(shè)備進(jìn)行管理。 負(fù)載均衡配置實(shí)例DNS負(fù)載均衡 DNS負(fù)載均衡技術(shù)是在DNS服務(wù)器中為同一個主機(jī)名配置多個IP地址,在應(yīng)答DNS查詢時(shí),DNS服務(wù)器對每個查詢將以DNS文件中主機(jī)記錄的IP地址按順序返回不同的解析結(jié)

26、果,將客戶端的訪問引導(dǎo)到不同的機(jī)器上去,使得不同的客戶端訪問不同的服務(wù)器,從而達(dá)到負(fù)載均衡的目的。DNS負(fù)載均衡的優(yōu)點(diǎn)是經(jīng)濟(jì)簡單易行,并且服務(wù)器可以位于internet上任意的位置。但它也存在不少缺點(diǎn): 1. 為了使本DNS服務(wù)器和其他DNS服務(wù)器及時(shí)交互,保證DNS數(shù)據(jù)及時(shí)更新,使地址能隨機(jī)分配,一般都要將DNS的刷新時(shí)間設(shè)置的較小,但太小將會使DNS流量大增造成額外的網(wǎng)絡(luò)問題。 2. 一旦某個服務(wù)器出現(xiàn)故障,即使及時(shí)修改了DNS設(shè)置,還是要等待足夠的時(shí)間(刷新時(shí)間)才能發(fā)揮作用,在此期間,保存了故障服務(wù)器地址的客戶計(jì)算機(jī)將不能正常訪問服務(wù)器。 3. DNS負(fù)載均衡采用的是簡單的輪循負(fù)載算法

27、,不能區(qū)分服務(wù)器的差異,不能反映服務(wù)器的當(dāng)前運(yùn)行狀態(tài),不能做到為性能較好的服務(wù)器多分配請求,甚至?xí)霈F(xiàn)客戶請求集中在某一臺服務(wù)器上的情況。 4. 要給每臺服務(wù)器分配一個internet上的IP地址,這勢必會占用過多的IP地址。 判斷一個站點(diǎn)是否采用了DNS負(fù)載均衡的最簡單方式就是連續(xù)的ping這個域名,如果多次解析返回的IP地址不相同的話,那么這個站點(diǎn)就很可能采用的就是較為普遍的DNS負(fù)載均衡。但也不一定,因?yàn)槿绻捎玫氖荄NS響應(yīng)均衡,多次解析返回的IP地址也可能會不相同。不妨試試Ping一下,。現(xiàn)假設(shè)有三臺服務(wù)器來應(yīng)對的請求。在采用BIND 8.x DNS服務(wù)器的unix系統(tǒng)上實(shí)現(xiàn)起來比較

28、簡單,只需在該域的數(shù)據(jù)記錄中添加類似下面的結(jié)果: www1    IN    A           www2    IN    A           www3   

29、60;IN    A           www     IN    CNAME      www1www     IN    CNAME      www2ww

30、w     IN    CNAME      www3在NT下的實(shí)現(xiàn)也很簡單,下面詳細(xì)介紹在win2000 server下實(shí)現(xiàn)DNS負(fù)載均衡的過程,NT4.0類似:1. 打開“管理工具”下的“DNS”,進(jìn)入DNS服務(wù)配置控制臺。 2. 打開相應(yīng)DNS 服務(wù)器的“屬性”,在“高級”選項(xiàng)卡的“服務(wù)器選項(xiàng)”中,選中“啟用循環(huán)”復(fù)選框。此步相當(dāng)于在注冊表記錄HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesDNSPa

31、rameters中添加一個雙字節(jié)制值(dword值)RoundRobin,值為1。 3. 打開正向搜索區(qū)域的相應(yīng)區(qū)域(如),新建主機(jī)添加主機(jī) (A) 資源記錄,記錄如下: www    IN    A           www    IN    A      

32、     www    IN    A           在這里可以看到的區(qū)別是在NT下一個主機(jī)名對應(yīng)多個IP地址記錄,但在unix下,是先添加多個不同的主機(jī)名分別對應(yīng)個自的IP地址,然后再把這些主機(jī)賦同一個別名(CNAME)來實(shí)現(xiàn)的。 4. 在此需要注意的是,NT下本地子網(wǎng)優(yōu)先級會取代多宿主名稱的循環(huán)復(fù)用,所以在測試時(shí),如果做測試用的客戶

33、機(jī)IP地址與主機(jī)資源記錄的IP在同一有類掩碼范圍內(nèi),就需要清除在“高級”選項(xiàng)卡“服務(wù)器選項(xiàng)”中的“啟用netmask排序”。 6.NAT負(fù)載均衡NAT(Network Address Translation 網(wǎng)絡(luò)地址轉(zhuǎn)換)簡單地說就是將一個IP地址轉(zhuǎn)換為另一個IP地址,一般用于未經(jīng)注冊的內(nèi)部地址與合法的、已獲注冊的Internet IP地址間進(jìn)行轉(zhuǎn)換。適用于解決Internet IP地址緊張、不想讓網(wǎng)絡(luò)外部知道內(nèi)部網(wǎng)絡(luò)結(jié)構(gòu)等的場合下。每次NAT轉(zhuǎn)換勢必會增加NAT設(shè)備的開銷,但這種額外的開銷對于大多數(shù)網(wǎng)絡(luò)來說都是微不足道的,除非在高帶寬有大量NAT請求的網(wǎng)絡(luò)上。NAT負(fù)載均衡將一個外部IP地址

34、映射為多個內(nèi)部IP地址,對每次連接請求動態(tài)地轉(zhuǎn)換為一個內(nèi)部服務(wù)器的地址,將外部連接請求引到轉(zhuǎn)換得到地址的那個服務(wù)器上,從而達(dá)到負(fù)載均衡的目的。NAT負(fù)載均衡是一種比較完善的負(fù)載均衡技術(shù),起著NAT負(fù)載均衡功能的設(shè)備一般處于內(nèi)部服務(wù)器到外部網(wǎng)間的網(wǎng)關(guān)位置,如路由器、防火墻、四層交換機(jī)、專用負(fù)載均衡器等,均衡算法也較靈活,如隨機(jī)選擇、最少連接數(shù)及響應(yīng)時(shí)間等來分配負(fù)載。 NAT負(fù)載均衡可以通過軟硬件方式來實(shí)現(xiàn)。通過軟件方式來實(shí)現(xiàn)NAT負(fù)載均衡的設(shè)備往往受到帶寬及系統(tǒng)本身處理能力的限制,由于NAT比較接近網(wǎng)絡(luò)的低層,因此就可以將它集成在硬件設(shè)備中,通常這樣的硬件設(shè)備是第四層交換機(jī)和專用負(fù)載均衡器,第四

35、層交換機(jī)的一項(xiàng)重要功能就是NAT負(fù)載均衡。 下面以實(shí)例介紹一下Cisco路由器NAT負(fù)載均衡的配置: 現(xiàn)有一臺有一個串行接口和一個Ethernet接口的路由器,Ethernet口連接到內(nèi)部網(wǎng)絡(luò),內(nèi)部網(wǎng)絡(luò)上有三臺web服務(wù)器,但都只是低端配置,為了處理好來自Internet上大量的web連接請求,因此需要在此路由器上做NAT負(fù)載均衡配置,把發(fā)送到web服務(wù)器合法Internet IP地址的報(bào)文轉(zhuǎn)換成這三臺服務(wù)器的內(nèi)部本地地址。 其具體配置過程如下: 1. 做好路由器的基本配置,并定義各個接口在做NAT時(shí)是內(nèi)部還是外部接口。 2. 然后定義一個標(biāo)準(zhǔn)訪問列表(standard access list

36、),用來標(biāo)識要轉(zhuǎn)換的合法IP地址。 3. 再定義NAT地址池來標(biāo)識內(nèi)部web服務(wù)器的本地地址,注意要用到關(guān)鍵字rotary,表明我們要使用輪循(Round Robin)的方式從NAT地址池中取出相應(yīng)IP地址來轉(zhuǎn)換合法IP報(bào)文。 4. 最后,把目標(biāo)地址為訪問表中IP的報(bào)文轉(zhuǎn)換成地址池中定義的IP地址。 相應(yīng)配置文件如下:interface Ethernet0/0ip address 48ip nat inside!interface Serial0/0ip address 48 ip nat ou

37、tside! ip access-list 1 permit !ip nat pool websrv netmask 48 type rotary ip nat inside destination list 1 pool websrv 反向代理負(fù)載均衡普通代理方式是代理內(nèi)部網(wǎng)絡(luò)用戶訪問internet上服務(wù)器的連接請求,客戶端必須指定代理服務(wù)器,并將本來要直接發(fā)送到internet上服務(wù)器的連接請求發(fā)送給代理服務(wù)器處理。反向代理(Reverse Proxy)方式是指以代理服務(wù)器來接受interne

38、t上的連接請求,然后將請求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給internet上請求連接的客戶端,此時(shí)代理服務(wù)器對外就表現(xiàn)為一個服務(wù)器。反向代理負(fù)載均衡技術(shù)是把將來自internet上的連接請求以反向代理的方式動態(tài)地轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的多臺服務(wù)器進(jìn)行處理,從而達(dá)到負(fù)載均衡的目的。 反向代理負(fù)載均衡能以軟件方式來實(shí)現(xiàn),如apache mod_proxy、netscape proxy等,也可以在高速緩存器、負(fù)載均衡器等硬件設(shè)備上實(shí)現(xiàn)。 反向代理負(fù)載均衡可以將優(yōu)化的負(fù)載均衡策略和代理服務(wù)器的高速緩存技術(shù)結(jié)合在一起,提升靜態(tài)網(wǎng)頁的訪問速度,提供有益的性能;由于網(wǎng)絡(luò)外部用戶不能直接訪問真實(shí)的服務(wù)器,具備額外的安全性(同理,NAT負(fù)載均衡技術(shù)也有此優(yōu)點(diǎn))。其缺點(diǎn)主要表現(xiàn)在以下兩個方面: 1. 反向代理是處于OSI參考模型第七層應(yīng)用的,所以就必須為每一種應(yīng)用服務(wù)專門開發(fā)一個反向代理服務(wù)器,這樣就限制了反向代理負(fù)載均衡技術(shù)的應(yīng)用范圍,現(xiàn)在一般都用于對web服務(wù)器的負(fù)載均衡。 2. 針對每一次代理,代理服務(wù)器就必須打開兩個連接,一個對外,一個對內(nèi),因此在并發(fā)連接請求數(shù)量非常大的時(shí)候,代理服務(wù)器的負(fù)載也就非常大了,在最后代理服務(wù)器本身會成為服務(wù)的瓶頸。 一般來講,可以用它來對連接數(shù)量不是特別大,但每次連接都需要消耗大量處理資源的站點(diǎn)進(jìn)行負(fù)載均衡,如se

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論