集群和負載均衡知識_第1頁
集群和負載均衡知識_第2頁
集群和負載均衡知識_第3頁
集群和負載均衡知識_第4頁
全文預覽已結(jié)束

下載本文檔

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

文檔簡介

1、集群和負載均衡知識在今天的IT界,我們會經(jīng)常聽到“集群”這個詞,特別是在服務器和小型機廣泛應用的領域,好像集群的概念已經(jīng)深入到IT界的方方面面。那么什么是集群呢?通俗一點說,集群是這樣一種技術:它包括至少將兩個系統(tǒng)連接到一起,使兩個服務器能夠像一臺機器那樣工作或者看起來好像一臺機器。例如,一個有2臺服務器生成的web服務器集群系統(tǒng),它對每個終端用戶是透明的,而且看起來完全就像一個web服務器。 采用集群系統(tǒng)通常是為了提高系統(tǒng)的穩(wěn)定性和網(wǎng)絡中心的數(shù)據(jù)處理能力及服務能力,自80年代初以來,各種形式的集群技術紛紛涌現(xiàn),這些技術均源于Digital的VAX平臺之上。因為集群能夠提供高可用性和可伸縮性,

2、所以,它迅速成為企業(yè)和ISP計算的支柱。一、 集群系統(tǒng)的分類:最常見的三種群集類型包括高性能科學群集、負載均衡群集和高可用性群集科學群集通常,第一種涉及為群集開發(fā)并行編程應用程序,以解決復雜的科學問題。這是并行計算的基礎,盡管它不使用專門的并行超級計算機,這種超級計算機內(nèi)部由十至上萬個獨立處理器組成。但它卻使用商業(yè)系統(tǒng),如通過高速連接來鏈接的一組單處理器或雙處理器 PC,并且在公共消息傳遞層上進行通信以運行并行應用程序。因此,您會常常聽說又有一種便宜的Linux 超級計算機問世了。但它實際是一個計算機群集,其處理能力與真的超級計算機相等,通常一套象樣的群集配置開銷要超過 $100,000。這對

3、一般人來說似乎是太貴了,但與價值上百萬美元的專用超級計算機相比還算是便宜的。負載均衡群集 負載均衡群集為企業(yè)需求提供了更實用的系統(tǒng)。如名稱所暗示的,該系統(tǒng)使負載可以在計算機群集中盡可能平均地分攤處理。該負載可能是需要均衡的應用程序處理負載或網(wǎng)絡流量負載。這樣的系統(tǒng)非常適合于運行同一組應用程序的大量用戶。每個節(jié)點都可以處理一部分負載,并且可以在節(jié)點之間動態(tài)分配負載,以實現(xiàn)平衡。對于網(wǎng)絡流量也如此。通常,網(wǎng)絡服務器應用程序接受了太多入網(wǎng)流量,以致無法迅速處理,這就需要將流量發(fā)送給在其它節(jié)點上運行的網(wǎng)絡服務器應用。還可以根據(jù)每個節(jié)點上不同的可用資源或網(wǎng)絡的特殊環(huán)境來進行優(yōu)化?高可用性群集 

4、 高可用性群集的出現(xiàn)是為了使群集的整體服務盡可能可用,以便考慮計算硬件和軟件的易錯性。如果高可用性群集中的主節(jié)點發(fā)生了故障,那么這段時間內(nèi)將由次節(jié)點代替它。次節(jié)點通常是主節(jié)點的鏡像,所以當它代替主節(jié)點時,它可以完全接管其身份,并且因此使系統(tǒng)環(huán)境對于用戶是一致的。二、 集群現(xiàn)有解決方案1、高級集群解決方案NOVELLS NETWARE CLUSTER SERVICES FOR NETWARE 5VERITAS CLUSETER SERVER FOR NT 42、標準集群方案MICROSOFT(R) CLUSTER SERVER (MSCS) (注:Windows2000Advanced

5、Server 內(nèi)置)LONGER HA FOR NT4LONGER HA FOR SCO UNIXLONGER HA FOR LINUX負載均衡的分類和說明定義 : 其實,負載均衡并非傳統(tǒng)意義上的“均衡”,一般來說,它只是把有可能擁塞于一個地方的負載交給多個地方分擔。如果將其改稱為“負載分擔” ,也許更好懂一些。說得通俗一點,負載均衡在網(wǎng)絡中的作用就像輪流值日制度,把任務分給大家來完成,以免讓 一個人累死累活。不過,這種意義上的均衡一般是靜態(tài)的,也就是事先確定的“輪值”策略。與輪流值日制度不同的是,動態(tài)負載均衡通過一些工具實時地分析數(shù)據(jù)包,掌握網(wǎng)絡中的數(shù)據(jù)流量狀況,把任務合理分配出去

6、。結(jié)構(gòu)上分為本地負載均衡和地域負載均衡(全局負載均衡),前一種是指對本地的服務器集群做負載均衡,后一種是指對分別放置在不同的地理位置、在不同的網(wǎng)絡及服務器群集之間作負載均衡。服務器群集中每個服務結(jié)點運行一個所需服務器程序的獨立拷貝,諸如Web、FTP、Telnet或e-mail服務器程序。對于某些服務(如運行在Web服務器上的那些服務)而言,程序的一個拷貝運行在群集內(nèi)所有的主機上,而網(wǎng)絡負載均衡則將工作負載在這些主機間進 行分配。對于其他服務(例如e-mail),只有一臺主機處理工作負載,針對這些服務,網(wǎng)絡負載均衡允許網(wǎng)絡通訊量流到一個主機上,并在該主機發(fā)生故障時將通訊量移至其他主機。負載均衡

7、技術實現(xiàn)結(jié)構(gòu)在現(xiàn)有網(wǎng)絡結(jié)構(gòu)之上,負載均衡提供了一種廉價有效的方法擴展服務器帶寬和增加吞吐量,加強網(wǎng)絡數(shù)據(jù)處理能力,提高網(wǎng)絡的 靈活性和可用性。它主要完成以下任務:解決網(wǎng)絡擁塞問題,服務就近提供,實現(xiàn)地理位置無關性 為用戶提供更好的訪問質(zhì)量提高服務器響應速度 提高服務器及其他資源的利用效率避免了網(wǎng)絡關鍵部位出現(xiàn)單點失效    廣義上的負載均衡既可以設置專門的網(wǎng)關、負載均衡器,也可以通過一些專用軟件與協(xié)議來實現(xiàn)。對一個網(wǎng)絡的負載均衡應用,從網(wǎng)絡的不同層次入手,根據(jù)網(wǎng)絡瓶頸所在進行具體分析。從客戶端應用為起點縱向分析,參考OSI的分層模型,

8、我們把負載均衡技術的實現(xiàn)分為客戶端負載均衡技術、應用服務器技術、高層協(xié)議交換、網(wǎng)絡接入?yún)f(xié)議交換等幾種方式?;诳蛻舳说呢撦d均衡這種模式指的是在網(wǎng)絡的客戶端運行特定的程序,該程序通過定期或不定期的收集服務器群的運行參數(shù):CPU占用情況、磁盤 IO、內(nèi)存等動態(tài)信息,再根據(jù)某種選擇策略,找到可以提供服務的最佳服務器,將本地的應用請求發(fā)向它。如果負載信息采集程序發(fā)現(xiàn)服務器失效,則找到其他可替代的服務器作為服務選擇。整個過程對于應用程序來說是完全透明的,所有的工作都在運行時處理。因此這也是一種動態(tài)的負載均衡技術。但這種技術存在通用性的問題。因為每一個客戶端都要安裝這個特殊的采集程序;并且,為了保證應用層

9、的透明運行,需要針對 每一個應用程序加以修改,通過動態(tài)鏈接庫或者嵌入的方法,將客戶端的訪問請求能夠先經(jīng)過采集程序再發(fā)往服務器,以重定向的過程進行。對于每一個應用幾乎要對代碼進行重新開發(fā),工作量比較大。所以,這種技術僅在特殊的應用場合才使用到,比如在執(zhí)行某些專有任務的時候,比較需要分布式的計算能力,對應用的開發(fā)沒 有太多要求。另外,在采用JAVA構(gòu)架模型中,常常使用這種模式實現(xiàn)分布式的負載均衡,因為java應用都基于虛擬機進行,可以在應用層和虛擬機之間設計一個中間層,處理負載均衡的工作。應用服務器的負載均衡技術如果將客戶端的負載均衡層移植到某一個中間平臺,形成三層結(jié)構(gòu),則客戶端應用可以不需要做特

10、殊的修改,透明的通過中間層應用服務器將請求均衡到相應的服務結(jié)點。比較常見的實現(xiàn)手段就是反向代理技術。使用反向代理服務器,可以將請求均勻轉(zhuǎn)發(fā)給多臺服務器,或者直接將緩存的數(shù)據(jù)返回客戶端,這樣的加速模式在一定程度上可以提升靜態(tài)網(wǎng)頁的訪問速度,從而達到負載均衡的目的。使用反向代理的好處是,可以將負載均衡和代理服務器的高速緩存技術結(jié)合在一起,提供使用反向代理的好處是,可以將負載均衡和代理服務器的高速緩存技術結(jié)合在一起,提供有益的性能。然而它本身也存在一些問題,首先就是必須為每一種服務都專門開發(fā)一個反向代理服務器,這就不是一個輕松的任務。反向代理服務器本身雖然可以達到很高效率,但是針對每一次代理,代理服

11、務器就必須維護兩個連接,一個對外的連接,一個對 內(nèi)的連接,因此對于特別高的連接請求,代理服務器的負載也就非常之大。反向代理能夠執(zhí)行針對應用協(xié)議而優(yōu)化的負載均衡策略, 每次僅訪問最空閑的內(nèi)部服務器來提供服務。但是隨著并發(fā)連接數(shù)量的增加,代理服務器本身的負載也變得非常大,最后反向代理服務器本身會成為服務的瓶頸?;谟蛎到y(tǒng)的負載均衡 NCSA的可擴展Web是最早使用動態(tài)DNS輪詢技術的web系統(tǒng)。在DNS中為多個地址配置同一個名字,因而查詢這個名字的客戶機將 得到其中一個地址,從而使得不同的客戶訪問不同的服務器,達到負載均衡的目的。在很多知名的web站點都使用了這個技術:包括 早期的ya

12、hoo站點、163等。動態(tài)DNS輪詢實現(xiàn)起來簡單,無需復雜的配置和管理,一般支持bind8.2以上的類unix系統(tǒng)都能夠運行,因此廣為使用。DNS負載均衡是一種簡單而有效的方法,但是存在不少問題。首先域名服務器無法知道服務結(jié)點是否有效,如果服務結(jié)點失效,余名系統(tǒng)依然會將域名解析到該節(jié)點上,造成用戶訪問失效。其次,由于DNS的數(shù)據(jù)刷新時間TTL(Time to LIVE)標志,一旦超過這個TTL,其他DNS服務器就需要和這個服務器交互,以重新獲得地址數(shù)據(jù),就有可能獲得不同IP地址。因此為了使地址能隨機分配,就應使TTL盡量短,不同地方的DNS服務器能更新對應的 地址,達到隨機獲得地址。然而將TT

13、L設置得過短,將使DNS流量大增,而造成額外的網(wǎng)絡問題。最后,它不能區(qū)分服務器的差異,也不能反映服務器的當前運行狀態(tài)。當使用DNS負載均衡的時候,必須盡量保證不同的客戶計 算機能均勻獲得不同的地址。例如,用戶A可能只是瀏覽幾個網(wǎng)頁,而用戶B可能進行著大量的下載,由于域名系統(tǒng)沒有合適的負載策略僅僅是簡單的輪流均衡,很容易將用戶A的請求發(fā)往負載輕的站點,而將B的請求發(fā)往負載已經(jīng)很重的站點。因此,在動態(tài)平衡特 性上,動態(tài)DNS輪詢的效果并不理想。高層協(xié)議內(nèi)容交換技術除了上述的幾種負載均衡方式之外,還有在協(xié)議內(nèi)部支持負載均衡能力的技術,即URL交換或七層交換,提供了一種對訪問流量的高層控制方式。Web

14、內(nèi)容交換技術檢查所有的HTTP報頭,根據(jù)報頭內(nèi)的信息來執(zhí)行負載均衡的決策。例如可以根據(jù)這些信息來確定 如何為個人主頁和圖像數(shù)據(jù)等內(nèi)容提供服務,常見的有HTTP協(xié)議中的重定向能力等。HTTP運行于TCP連接的最高層??蛻舳送ㄟ^恒定的端口號80的TCP服務直接連接到服務器,然后通過TCP連接向服務器端發(fā)送一個 HTTP請求。協(xié)議交換根據(jù)內(nèi)容策略來控制負載,而不是根據(jù)TCP端口號,所以不會造成訪問流量的滯留。由于負載平衡設備要把進入的請求分配給多個服務器,因此,它只能在TCP連接時建立,且HTTP請求通過后才能確定如何進行負載的平衡。當一個網(wǎng)站的點擊率達到每秒上百甚至上千次時,TCP連接、HTTP報

15、頭信息的分析以及進程的時延已經(jīng)變得很重要了,要 盡一切可能提高這幾各部份的性能。在HTTP請求和報頭中有很多對負載平衡有用的信息。我們可以從這些信息中獲知客戶端所請求的URL和網(wǎng)頁,利用這個信息,負載平衡設備就可以將所有的圖像請求引導到一個圖像服務器,或者根據(jù)URL的數(shù)據(jù)庫查詢內(nèi)容調(diào)用CGI程序,將請求引導到一個專用 的高性能數(shù)據(jù)庫服務器。如果網(wǎng)絡管理員熟悉內(nèi)容交換技術,他可以根據(jù)HTTP報頭的cookie字段來使用Web內(nèi)容交換技術改善對特定客戶的服務,如果能從HTTP請求中找到一些規(guī)律,還可以充分利用它作出各種決策。除了TCP連接表的問題外,如何查找合適的HTTP報頭信息以及作出負載平衡決

16、策的過程,是影響Web內(nèi)容交換技術性能的重要問題。如果We b服務器已經(jīng)為圖像服務、SSL對話、數(shù)據(jù)庫事務服務之類的特殊功能進行了優(yōu)化,那么,采用這個層次的流量控制將可以提高網(wǎng)絡的性能。網(wǎng)絡接入?yún)f(xié)議交換大型的網(wǎng)絡一般都是由大量專用技術設備組成的,如包括防火墻、路由器、第3、4層交換機、負載均衡設備、緩沖服務器和Web 服務器等。如何將這些技術設備有機地組合在一起,是一個直接影響到網(wǎng)絡性能的關鍵性問題?,F(xiàn)在許多交換機提供第四層交換功能,對外提供一個一致的IP地址,并映射為多個內(nèi)部IP地址,對每次TCP和UDP連接請求,根據(jù)其端口號,按照即定的策略動態(tài)選擇一個內(nèi)部地址,將數(shù)據(jù)包轉(zhuǎn)發(fā)到該地址上,達到

17、負載均衡的目的。很多硬件廠商將這種技術集成在他們的交換機中,作為他們第四層交換的一種功能來實現(xiàn),一般采用隨機選擇、根據(jù)服務器的連接數(shù)量或者響應時間進行選擇的負載均衡策略來分配負載。由于地址轉(zhuǎn) 換相對來講比較接近網(wǎng)絡的低層,因此就有可能將它集成在硬件設備中,通常這樣的硬件設備是局域網(wǎng)交換機。當前局域網(wǎng)交換機所謂的第四層交換技術,就是按照IP地址和TCP端口進行虛擬連接的交換,直接將數(shù)據(jù)包發(fā)送到目的計算機的 相應端口。通過交換機將來自外部的初始連接請求,分別與內(nèi)部的多個地址相聯(lián)系,此后就能對這些已經(jīng)建立的虛擬連接進行交換。 因此,一些具備第四層交換能力的局域網(wǎng)交換機,就能作為一個硬件負載均衡器,完成服務器的負載均衡。由于第四層交換基于硬件芯片,因此其性能非常優(yōu)秀,尤其是對于網(wǎng)絡傳輸速度和交換速度遠遠超過普通的數(shù)據(jù)包轉(zhuǎn)發(fā)。然而,正因為它是使用硬件

溫馨提示

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

評論

0/150

提交評論