當前位置:首頁 » 雲伺服器 » 集群時如何判斷進入哪台伺服器

集群時如何判斷進入哪台伺服器

發布時間: 2022-12-30 01:34:20

『壹』 java 集群

群集方法介乎兩種計算機系統結構之間。當把多台計算機配置或互連在一起時,可採取鬆散耦合或緊密耦合結構。網路就是一個鬆散耦合的系統,我們也稱其為異類系統結構。網路把由各種CPU、應用軟體、NIC(網路介面控制器)、甚至是操作系統組成的多台計算機連接在一起。計算機之間的地理距離可以近在咫尺,也可以遠在天邊。可以用實時和/或非同步方式耦合網路。

網際網路就是一個典型的極為鬆散與異類配置的例子。網際網路本身不能「實時」控制與它連接的任何主機。在鬆散耦合網路中,單機崩潰一般不會影響網路的其它部分。

相反,緊密耦合系統則高度依賴於構成系統的所有部件。當系統由相同部件組成,採用並行操作方式並共享所有子系統(存儲器)時,我們稱其為同類系統結構。緊密耦合系統最常見的例子是SMP(對稱多處理)。在SMP狀態下,根據工作量的多少把任務分給幾台處理器,這樣可均勻地分配工作量,以便提高數據吞吐量。

我們舉了兩個典型的鬆散和緊密耦合系統的例子,群集就介於鬆散和緊密耦合系統之間。根據系統的配置,在某些方面(比如操作系統),群集控制的系統也許更偏向緊密耦合的系統,或者偏向鬆散耦合的系統(比如獨立計算能力,通過公共存儲器連接)。

通常群集器放在同一設備區或同一辦公樓里。從理論上說,群集控制方法可應用於閉路廣域網環境中(現正在美國東北部地區進行試驗)。可是在考慮到視頻伺服器應用時,一般來說只能把設備放在主要設施運行所在地。

公共數據共享

群集允許共享幾個節點的數據。在此應用中,這些節點包括客戶工作站、中央或多伺服器。我們知道可以通過許多路徑(比如星形結構)連接節點,客戶可通過不同連接的節點路徑存取數據。當節點就是伺服器時便可共享公共存儲器,某個伺服器節點故障不會導致整個群集器系統癱瘓。

在12月專欄里,我們把群集描述成一個提供高可得性的系統。對廣播或有線電視操作來說,視頻伺服器必須要提供連續的或高可得性的數據。考慮到這一點,我們認為視頻伺服器體系結構採用群集是大有潛力的。

待命或無源伺服器結構就是一種群集形式。在這種結構下,一個或多個伺服器(或節點)平時保持在待命狀態,隨時可以啟動。利用後台控制系統管理待命伺服器內容數據。在未發生故障之前一般不啟用無源伺服器。

無源伺服器未必就是主伺服器的完全鏡像,它也可以有一些有限的數據源,包括存儲器,要經常清除這些數據,然後重新裝入最新的節目或廣告。通過這一循環過程把適量的數據(或視頻媒介)保持在待命狀態,在需要時隨時可以上線使用。

伺服器在待命狀態時通常由少量的部件組成,比如編解碼器,在出現故障或另一個伺服器需要它支持的時候,該伺服器可立即被集成到系統中應用。此時,伺服器進入負載均衡狀態。

數據共享

數據共享是群集器需要提供的最基本功能之一。我們還是以視頻伺服器的應用為例,多個編輯站在這里獨立地工作,不過利用一組公共伺服器來管理數據和應用層的處理。

在這個例子中,多個新聞編輯站(或客戶工作站)可以選擇用哪個編輯伺服器(包括編輯用的軟體和硬體)來進行編輯。這些伺服器控制對公共媒體資料庫的存取,編輯站只是這些伺服器的簡單控制器GUI(圖形用戶界面)。編輯伺服器進一步控制接入另一個更大的數據存儲庫(通常是新聞檔案)。

這個概念可通過群集軟體實現。在獨立的編輯站通過群集器存取數據的過程中,編輯與數據存取或存儲處理自動進行,不會影響其它的客戶編輯站或預放站。通過提供連續的數據可得性,每個伺服器可以是有源的,也可以是無源的,視工作負荷而定。假如有一個伺服器發生了故障,該結構也可提供冗餘或保護方式。

共享一個操作系統和平台是群集的又一個共同特點。讓硬體與軟體平台同屬一類,也就是說,基本上是相同的,就可採用公用互連方案與公共文件格式結構。在SMP這樣的系統中,所有部件都依賴於公用硬體而像單獨部件一樣運行。正如我們已提到的,群集可以讓一部分系統保持同類結構,但脫離所有系統都有的依賴性,其它性能就會下降。

其它優點

我們現在還是回到基於群集伺服器的編輯環境中來,我們又發現了其它一些優點。伺服器硬體具有的冗餘性可對數據起保護作用。在新聞編輯環境中,當即將播放時,一個或更多的伺服器便可將客戶工作站的功能變成播出功能,直接把新聞播出去。這樣還能讓所有客戶和伺服器接入別的伺服器的數據,包括在最後一分鍾直接存取中央存儲庫的數據。

通過使用多個伺服器(每個伺服器收集、編輯、存檔和重放的資源是一個類型的),系統便可對硬體進行備份。在某個伺服器出現故障時,可把資源轉給或分給其它用戶,系統的其餘部分仍繼續工作。

除了上述的數據共享外,其它群集器結構也是可行的。在有些情況下,某些資源可被一個特定的節點「擁有」,在未接到指令前不會放棄。可將該系統的結構配置成一個節點有多個輸入編碼器,但只有一個輸出解碼器。另一個節點可能沒有輸入,但有好幾個輸出供放像和預看用。如果某一個節點出現故障,可讓與它相對應的節點頂替它,直到它被修復為止。

非共享結構

從硬體上說,每個節點的能力(或資源)基本上相同,但內部系統配置是用各種形式鎖定的,除非另有要求。按照群集語言可把此結構

叫做非共享結構。在此結構里,某些資源在未被傳送給其它節點或者該節點未出故障之前歸一個節點所有。在採用非共享結構的計算機與模式里運用群集法通常會把硬碟等設備分配給一個節點,並阻止其他人使用它,除非將其開放或該節點發生故障。

群集結構的其它實施方面增加了系統的復雜程度。除了非共享結構外(只提供最簡單的性能和可得性),還有磁碟共享結構。磁碟共享可提高存儲接入不同主機系統的能力。

從硬體的角度看,系統的磁碟陣列控制器可以很容易地管理這個共享結構。比較難辦的是在最低級別(文件或記錄層)上協調更新數據。

協調工作必須成為群集軟體的一部分。可以設想一下,如果兩個用戶同時接入同一記錄層會發生什麼情況。假定每個用戶都修改了文件。用戶1先把數據寫入伺服器,他發現用戶2做了完全不同的修改並且把修改後的文件用同一文件名存入相同的磁碟,或許存在另一個伺服器上,這樣就有可能把第一個用戶修改的文件沖掉。沒有一個控制方案,就會亂成一團。

盡管每個文件或記錄層都有簡單的口令或鎖定保護,但要確保用文件的正確版本存成另一個文件名或是「正式」版,則要求具有更高層的數據控制與管理能力。磁碟快速緩存問題又是另一種情形,我們等一會兒再說。

另一個防止錯誤數據覆蓋正確數據的方法是在修改未最後定之前限制接入某一特定文件。在計算機數據域中,用一個稱為信息傳送的程序通知管理員(通常是應用後台軟體的一部分)文件存取被鎖定,直到修改程序結束為止。

原子操作

原子操作的三個步驟是:讀數據、修改數據、然後重新寫入新數據。在原子操作過程中,在未執行完操作之前不會受到任何干擾。還必須有其他保護措施,以防隱藏的備份文件在以後某個無法預測的時間改寫其它的文件。

當數據分布在不止一個存儲磁碟上時,或者當公共存儲陣列中的數據被不同用戶在不同時間存取時,如何防止數據不一致是群集軟體需要解決的又一個問題。無論是通過硅緩存器還是通過遠程接入的臨時磁碟緩存器(甚至分區)進行高速緩存都會遇到定時和同步的問題。我們把這個問題叫做緩存相關性,它是因磁碟驅動器定時問題引起的。

磁碟驅動器並不一定能馬上寫入數據,磁頭也許定位在錯誤的磁軌上,導輪也許偏離相位190度,等結束運轉後才能開始磁頭的寫入操作,或許還因為溫度問題造成暫時性延緩,直到一切都符合條件為止。

這通常被稱為等待時間,磁碟驅動器的機械部分要求在驅動器等待寫入時暫存一下數據。最常見的方法是在驅動器上安一個硅緩存器,這個過程被叫做寫回高速緩存。在把主機儲存器中的數據轉存到磁碟驅動器的過程中,設一個寫回緩存器標識,對數據源表示寫入程序成功了。實際上,得過一會兒才能開始真正的電磁機械式的數據儲存過程。

假如系統上的另一個節點也從這個驅動器讀數據,(這是經過許可的操作,因為數據發生器已接到通知,新數據已發送到了這個位置),那麼緩存器已在指定位置存儲了正確新數據的指示信號就不見了。我們用失效數據一詞來表示未更新數據進入新數據區的狀態。

無效數據

RAID控制器在各自磁碟陣列的寫回緩存器里為與這個特殊的陣列有關的磁碟管理失效數據。假如在軟體里設一些適當的開關來檢測和阻止它發生,那麼數據相關性就只是一個小問題了。

當系統是由多層陣列構成的時候,控制失效數據問題的任務就交給高級別軟體去完成,把信號傳送給各自的陣列,就不會發生孤立或失效數據問題了。

在這個簡化的單一視頻伺服器模型里,媒體是通過單編碼器輸入的,並存在一個單實體陣列上。由一個更高級別(通常是第三方API,應用程序介面)登記和管理活動圖像數據。通常將其作為任選的「媒體管理」或「資產管理器」包出售。通過這個軟體,控制活動圖像和數據的過程成為一個閉路過程,因為輸入與輸出指令必須通過這個管理軟體包。該軟體在自己的資料庫里始終跟蹤著數據的有效性。

如果有好幾個伺服器,每個伺服器有自己的任務,情況就變得比較復雜了。這時可以讓幾個信號源的輸入進入不同的編碼器,並存在一個較大的磁碟陣列里。這些陣列通常與光纖通道仲裁環相連,由於它的連接方式決定,它可迫使部分重寫動作由伺服器推遲到存儲器,直到有了充足的帶寬來把該數據從這個存儲器存入另一個存儲器。

在類似的應用中,媒體管理軟體就更完善,更必不可少了。有時候製造商會提供一個完全獨立的CPU和資源管理軟體包(作為選件)。這個軟體包就像看門狗那樣管理伺服器之間的數據共享操作。除了這些基本概念外,還有大量的定時和數據驗證問題,這些問題會經常在伺服器結構的軟體與子系統中碰到。

群集的過程和功能正在擴展到設備內和設備間應用中。群集器理念最終將允許整個廣播集團通過光纖或通過廣域網共享資源。雖然可以讓設施連成網共享媒介,可是在這些設施相互離得很遠的情況下實現節點資源共享的設想似乎還很遙遠。

『貳』 現在apache的負載均衡和tomcat的2台集群我做好了,怎麼看用戶端訪問的是那台伺服器

第一:看tomcat後台,
第二:訪問負載均衡web查看

『叄』 mongo集群怎麼確定主伺服器

樓主知道 「把所有節點Z向位移耦合在一個關鍵點上,然後再關鍵點上施加Z向位移」在ANSYS中怎麼實現么 。。最近遇到這么個問題

貌似ANSYS默認耦合集中編號最小那個節點為主節點,其他未從節點。。施加外力位移等要加在主節點上吧。

『肆』 開發的JAVA WEB程序部署在伺服器集群的哪一個伺服器上

閣下在沒有分布式集群部署經驗的前提下能畫出這樣的架構圖讓人佩服

本來我是不敢回答這些問題的,因為本身我也沒有集群部署經驗,但是一來沒有人幫忙回來二來我也看過一點這些相關的書籍,所以可以把我知道的給你說下,估計能幫助你30%。

整個架構部署用到了集群部署(1:2)、動靜分離、緩存服務、拆分資料庫等高並發處理技術,屬於大型系統的模型。

據我所知,集群1:2是1負載分發器、2web伺服器,(以Apache+tomcat集群為例),那麼Director server應該安裝Apache,而Real Server應該安裝tomcat,至於java web項目在tomcat下面即可。

而你的架構圖中還有動靜分離機制,理論上靜態文件伺服器也應該有java web項目才對,不然靜態文件伺服器如何取靜態文件呢。tomcat對靜態文件處理不是很好,所以很多人推薦用Nginx作為載體。

緩存和集群資料庫我不了解,不發表任何謬論。

session會話就是指的httpsession:一個客戶端一個session會話,在客戶端與伺服器保持通信期間都會需要這個會話,所以集群伺服器一定要保存這個session。問題是客戶端的URL請求被director server均衡分發了,可能第一次訪問的是第一個real server,第二次訪問的是第四個real server,如果session只在第一個real server保存,而第四個real server就會認為客戶掉線拒絕請求,所以你要考慮四個real server用一種機制保存共享所有客戶的session。一些經典的共享session方式有:session復制、session粘連、session統一獨立存儲等。

建議看下一些集群架構方面的書籍,比如《大型網站系統與java中間件實踐》。

『伍』 計算機集群 專家進

一、集群的基本概念

有一種常見的方法可以大幅提高伺服器的安全性,這就是集群。

Cluster集群技術可如下定義:一組相互獨立的伺服器在網路中表現為單一的系統,並以單一系統的模式加以管理。此單一系統為客戶工作站提供高可靠性的服務。

大多數模式下,集群中所有的計算機擁有一個共同的名稱,集群內任一系統上運行的服務可被所有的網路客戶所使用。Cluster必須可以協調管理各分離的組件的錯誤和失敗,並可透明地向Cluster中加入組件。

一個Cluster包含多台(至少二台)擁有共享數據存儲空間的伺服器。任何一台伺服器運行一個應用時,應用數據被存儲在共享的數據空間內。每台伺服器的操作系統和應用程序文件存儲在其各自的本地儲存空間上。

Cluster內各節點伺服器通過一內部區域網相互通訊。當一台節點伺服器發生故障時,這台伺服器上所運行的應用程序將在另一節點伺服器上被自動接管。當一個應用服務發生故障時,應用服務將被重新啟動或被另一台伺服器接管。當以上任一故障發生時,客戶將能很快連接到新的應用服務上。

二、集群的硬體配置

鏡像伺服器雙機

集群中鏡像伺服器雙機系統是硬體配置最簡單和價格最低廉的解決方案,通常鏡像服務的硬體配置需要兩台伺服器,在每台伺服器有獨立操作系統硬碟和數據存貯硬碟,每台伺服器有與客戶端相連的網卡,另有一對鏡像卡或完成鏡像功能的網卡。

鏡像伺服器具有配置簡單,使用方便,價格低廉諸多優點,但由於鏡像伺服器需要採用網路方式鏡像數據,通過鏡像軟體實現數據的同步,因此需要佔用網路伺服器的CPU及內存資源,鏡像伺服器的性能比單一伺服器的性能要低一些。

有一些鏡像伺服器集群系統採用內存鏡像的技術,這個技術的優點是所有的應用程序和網路操作系統在兩台伺服器上鏡像同步,當主機出現故障時,備份機可以在幾乎沒有感覺的情況下接管所有應用程序。因為兩個伺服器的內存完全一致,但當系統應用程序帶有缺陷從而導致系統宕機時,兩台伺服器會同步宕機。這也是內存鏡像卡或網卡實現數據同步,在大數據量讀寫過程中兩台伺服器在某些狀態下會產生數據不同步,因此鏡像伺服器適合那些預算較少、對集群系統要求不高的用戶。

硬體配置範例:

網路伺服器 兩台

伺服器操作系統硬碟 兩塊

伺服器數據存貯硬碟 視用戶需要確定

伺服器鏡像卡(部分軟體可使用標准網卡) 兩塊

網路服務網卡 兩塊三、雙機與磁碟陣列櫃

與鏡像伺服器雙機系統相比,雙機與磁碟陣列櫃互聯結構多出了第三方生產的磁碟陣列櫃,目前,豪威公司、精業公司等許多公司都生產有磁碟陣列櫃,在磁碟陣列櫃中安裝有磁碟陣列控制卡,陣列櫃可以直接將櫃中的硬碟配置成為邏輯盤陣。磁碟陣列櫃通過SCSI電纜與伺服器上普通SCSI卡相連,系統管理員需直接在磁碟櫃上配置磁碟陣列。

雙機與磁碟陣列櫃互聯結構不採用內存鏡像技術,因此需要有一定的切換時間(通常為60?D?D180秒),它可以有郊的避免由於應用程序自身的缺陷導致系統全部宕機,同時由於所有的數據全部存貯在中置的磁碟陣列櫃中,當工作機出現故障時,備份機接替工作機,從磁碟陣列中讀取數據,所以不會產生數據不同步的問題,由於這種方案不需要網路鏡像同步,因此這種集群方案伺服器的性能要比鏡像伺服器結構高出很多。

雙機與磁碟陣列櫃互聯結構的缺點是在系統當中存在單點錯的缺陷,所謂單點錯是指當系統中某個部件或某個應用程序出現故障時,導致所有系統全部宕機。在這個系統中磁碟陣列櫃是會導致單點錯,當磁碟陣列櫃出現邏輯或物理故障時,所有存貯的數據會全部丟失,因此,在選配這種方案時,需要選用一個品質與售後服務較好的產品。

硬體配置範例:

網路伺服器 兩台

伺服器操作系統硬碟 兩塊

第三方生產的磁碟陣列櫃 一台

磁碟櫃專用SCSI電線 兩根

磁碟陣列櫃數據存貯硬碟 視用戶需求確定

網路服務網卡 兩塊

除此之外,一些廠商還有更優秀的技術的解決方案,比如 HP.

四、HP雙機雙控容錯系統

HP NetServer為雙機雙控容錯系統提供了高品質和高可靠的硬體基礎……

HP雙機雙控容錯系統結合了HP伺服器產品的安全可靠性與Cluster技術的優點,相互配合二者的優勢。

硬體配置範例:

HP L系統的網路伺服器 兩台

伺服器操作系統硬碟 兩塊

HP硬碟存貯櫃(SS/6,RS/8,RS/12) 一台

磁碟櫃專用SCSI集群適配電纜 兩根

磁碟櫃數據存貯硬碟 視用戶需求確定

HP集群專用陣列卡 兩塊

網路服務網卡 兩塊五、HP光纖通道雙機雙控集群系統

光纖通道是一種連接標准,可以作為SCSI的一種替代解決方案,光纖技術具有高帶寬、抗電磁干擾、傳輸距離遠、質量高、擴展能力強等特性,目前在FC-AL仲裁環路上可接入126個設備。

光纖設備提供了多種增強的連接技術,大大方便了用戶使用。伺服器系統可以通過光纜遠程連接,最大可跨越10公里的距離。它允許鏡像配置,這樣可以改善系統的容錯能力。伺服器系統的規模將更加靈活多變。SCSI每條通道最多可連接15個設備,而光纖仲裁環路最多可以連接126個設備。

光纖集群系統組成:

HP光纖集群系統硬體設備包括有兩台HP伺服器(需支持光纖卡,目前有LC2000、LH3000、LH4、 LH6000、LT6000、LXr8000、LXR8500)及光纖適配卡,可以使用RS/12FC光纖磁碟陣列櫃,需另加一對或兩對網卡用於心跳檢測和與客戶端連接。在配置過程中還需另外選配光纖卡到光纖存貯設備的光纖電纜。

硬體配置:

HPL系統的網路伺服器 兩台

伺服器操作系統硬碟 兩塊

HP光纖陣列存貯櫃(RS/12FC) 一台

光纖磁碟櫃專用光纖電纜 兩根

光纖磁碟櫃數據存貯硬碟 視用戶需求確定

HP光纖適配卡 兩塊

網路服務網卡 兩塊

六、集群的軟體配置

基於NT平台的集群軟體

Microsoft的MSCS,也有許多第三方的專業軟體公司開發的集群軟體,如豪威的DATAWARE,VIN CA公司的STANDBYSERVER,NSI公司的DOUBLE-TAKE.

MSWolfPack的特點

MS WolfPack是MSCluster server的別稱,是 微軟針對Cluster技術研製開發的雙機軟體。它集成在NT SERVER上,支持由二台機器組成的雙機系統,提供一種高可用且易管理的應用環境。

主要特點:

自動檢測和修復伺服器或應用程序的錯誤

可實現對伺服器中應用程序的切換

可通過TCP/IP連接各種客戶端,如MS-DOS、WINDOWS3.X/9X/NT,Apple Macintosh、UNIX等

生產主機無需人工干涉即可自動恢復數據並接管任務

易管理性:

可自動審核伺服器和應用程序的工作狀態

可建立高可用性的應用程序、文件共享、列印請求等

可靈活設置應用程序和數據的恢復策略

簡單操作即可進行應用程序的離線,重新再線,伺服器間的遷移。

目前,WINDOWS 2000 Advanced Server與WINDOWS 2000 DataCenter Server都集成有更先進集群技術。

其它的網路操作系統平台上也有許多集群軟體,比如:

基於novell平台的集群軟體有Novell HA Server、Novell SFT III

基於sco UNIX平台的集群軟體有Sentinel集群軟體

基於linux平台的集群軟體有TurboCluster

七、集群技術的發展趨勢

集群技術隨著伺服器硬體系統與網路操作系統的發展將會在可用性、高可靠性、系統冗餘等方面逐步提高。未來的集群可以依靠集群文件系統實現對系統中的所有文件、設備和網路資源的全局訪問,並且生成一個完整的系統映像。這樣,無論應用程序在集群中的哪台伺服器上,集群文件系統允許任何用戶(遠程或本地)都可以對這個軟體進行訪問。任何應用程序都可以訪問這個集群任何文件。甚至在應用程序從一個節點轉移到另一個節點的情況下,無需任何改動,應用程序就可以訪問系統上的文件。

在今天,利用伺服器的集群技術,通過周密計劃和網路維護,系統破壞的機率是非常小的。所以,企業伺服器的穩定必須使用集群技術。

『陸』 如何查看 集群的ftp伺服器是哪些,要求列出主機名,磁碟使用情況

如何利用WMI獲取遠程主機的磁碟信息

//創建WMI連接對象,注意引用System.Management命名空間,需要先在項目引用中添加,然後代碼中using

ConnectionOptions conn = new ConnectionOptions();

conn.Username = user; //遠程主機用戶名,注意,必需是管理員許可權

conn.Password = pwd; //密碼

conn.Authority = "ntlmdomain:DOMAIN"; // 這句很重要

conn.Timeout = new TimeSpan(1, 1, 1, 1);//連接時間

//ManagementScope 的伺服器和命名空間。

string path = string.Format(@"\{0} ootcimv2", address);

//表示管理操作的范圍(命名空間),使用指定選項初始化ManagementScope 類的、表示指定范圍路徑的新實例。

ManagementScope scope = new ManagementScope(path, conn);

scope.Connect(); //打開連接方法,如果執行到這里報出拒絕訪問的錯誤,請檢查目標賬號是否為目標主機管理員賬號,或者目標主機WMI服務是否開啟

//查詢

string strQuery = "select * from Win32_LogicalDisk where Name = 'D:'";//查詢語句,這里是查詢D盤存儲信息

ObjectQuery query = new ObjectQuery(strQuery);

//查詢ManagementObjectCollection返回結果集

ManagementObjectSearcher wmifind = new ManagementObjectSearcher(scope, query);

long gb = 1024 * 1024 * 1024;

string type = "";

foreach (var mobj in wmifind.Get()) //循環結果集

{

type = mobj["Description"].ToString();

//判斷是否是本機固盤

if (type == "Local Fixed Disk")

{

int free = (int)Math.Round(Convert.ToDouble(mobj["FreeSpace"]) / gb, 0);//獲取到可用空間

int size = (int)Math.Round(Convert.ToDouble(mobj["Size"].ToString()) / gb, 0);//獲取到總空間

int use = size - free;//已用空間

}

}

以上,就是可以在無服務端程序的情況下,獲取目標主機磁碟使用情況的代碼,當然為了安全考慮,請務必做好賬號和密碼的加密工作

版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

『柒』 求集群管理的相關知識!

集群技術案例介紹和具體操作

集群技術案例介紹和具體操作
中國科學院西安網路中心 中科紅旗linux培訓認證中心
集群技術
1.1 什麼是集群
簡單的說,集群(cluster)就是一組計算機,它們作為一個整體向用戶提
供一組網路資源。這些單個的計算機系統就是集群的節點(node)。一個理想的
集群是,用戶從來不會意識到集群系統底層的節點,在他/她們看來,集群是一
個系統,而非多個計算機系統。並且集群系統的管理員可以隨意增加和刪改集群
系統的節點。
1.2 為什麼需要集群
集群並不是一個全新的概念,其實早在七十年代計算機廠商和研究機構就
開始了對集群系統的研究和開發。由於主要用於科學工程計算,所以這些系統並
不為大家所熟知。直到Linux集群的出現,集群的概念才得以廣為傳播。
對集群的研究起源於集群系統良好的性能可擴展性(scalability)。提高CPU
主頻和匯流排帶寬是最初提供計算機性能的主要手段。但是這一手段對系統性能的
提供是有限的。接著人們通過增加CPU個數和內存容量來提高性能,於是出現了
向量機,對稱多處理機(SMP)等。但是當CPU的個數超過某一閾值,象SMP這些
多處理機系統的可擴展性就變的極差。主要瓶頸在於CPU訪問內存的帶寬並不能
隨著CPU個數的增加而有效增長。與SMP相反,集群系統的性能隨著CPU個數的
增加幾乎是線性變化的。圖1顯示了這中情況。
圖1. 幾種計算機系統的可擴展性
對於關鍵業務,停機通常是災難性的。因為停機帶來的損失也是巨大的。下
面的統計數字列舉了不同類型企業應用系統停機所帶來的損失。
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
應用系統每分鍾損失(美元)
呼叫中心(Call Center) 27000
企業資源計劃(ERP)系統13000
供應鏈管理(SCM)系統11000
電子商務(eCommerce)系統10000
客戶服務(Customer Service Center)系統27000
圖2:停機給企業帶來的損失
隨著企業越來越依賴於信息技術,由於系統停機而帶來的損失也越拉越大。
集群系統的優點並不僅在於此。下面列舉了集群系統的主要優點:
高可擴展性:如上所述。
高可用性:集群中的一個節點失效,它的任務可傳遞給其他節點。可以有效防止單點失效。
高性能:負載平衡集群允許系統同時接入更多的用戶。
高性價比:可以採用廉價的符合工業標準的硬體構造高性能的系統。
2.1 集群系統的分類
雖然,根據集群系統的不同特徵可以有多種分類方法,但是一般把集群系統分為兩類:
(1)、高可用(High Availability)集群,簡稱HA集群。
這類集群致力於提供高度可靠的服務。就是利用集群系統的容錯性對外提供7*24小時不間
斷的服務,如高可用的文件伺服器、資料庫服務等關鍵應用。
目前已經有在Linux下的高可用集群,如Linux HA項目。
負載均衡集群:使任務可以在集群中盡可能平均地分攤不同的計算機進行處理,充分利
用集群的處理能力,提高對任務的處理效率。
在實際應用中這幾種集群類型可能會混合使用,以提供更加高效穩定的服務。如在一個使
用的網路流量負載均衡集群中,就會包含高可用的網路文件系統、高可用的網路服務。
(2)、性能計算(High Perfermance Computing)集群,簡稱HPC集群,也稱為科學計算
集群。
在這種集群上運行的是專門開發的並行應用程序,它可以把一個問題的數據分布到多
台的計算機上,利用這些計算機的共同資源來完成計算任務,從而可以解決單機不能勝任
的工作(如問題規模太大,單機計算速度太慢)。
這類集群致力於提供單個計算機所不能提供的強大的計算能力。如天氣預報、石油勘探與油
藏模擬、分子模擬、生物計算等。這些應用通常在並行通訊環境MPI、PVM等中開發,由於MPI
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
是目前的標准,故現在多使用MPI為並行環境。
比較有名的集群Beowulf就是一種科學計算集群項目。
3、集群系統轉發方式和調度演算法
3.1轉發方式
目前LVS主要有三種請求轉發方式和八種調度演算法。根據請求轉發方式的不同,所構
架集群的網路拓撲、安裝方式、性能表現也各不相同。用LVS主要可以架構三種形式的集群,
分別是LVS/NAT、LVS/TUN和LVS/DR,可以根據需要選擇其中一種。
(1)、網路地址轉換(LVS/NAT)
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
(2)、直接路由
(3)、IP隧道
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
三種轉發方式的比較:
3.2、調度演算法
在選定轉發方式的情況下,採用哪種調度演算法將決定整個負載均衡的性能表現,不同
的演算法適用於不同的應用場合,有時可能需要針對特殊場合,自行設計調度演算法。LVS的算
法是逐漸豐富起來的,最初LVS只提供4種調度演算法,後來發展到以下八種:
1.輪叫調度(Round Robin)
調度器通過「輪叫」調度演算法將外部請求按順序輪流分配到集群中的真實伺服器上,它均
等地對待每一台伺服器,而不管伺服器上實際的連接數和系統負載。
2.加權輪叫(Weighted Round Robin)
調度器通過「加權輪叫」調度演算法根據真實伺服器的不同處理能力來調度訪問請求。這樣
可以保證處理能力強的伺服器能處理更多的訪問流量。調度器可以自動詢問真實伺服器的
負載情況,並動態地調整其權值。
3.最少鏈接(Least Connections)
調度器通過「最少連接」調度演算法動態地將網路請求調度到已建立的鏈接數最少的伺服器
上。如果集群系統的真實伺服器具有相近的系統性能,採用「最小連接」調度演算法可以較
好地均衡負載。
4.加權最少鏈接(Weighted Least Connections)
在集群系統中的伺服器性能差異較大的情況下,調度器採用「加權最少鏈接」調度演算法優
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
化負載均衡性能,具有較高權值的伺服器將承受較大比例的活動連接負載。調度器可以自
動詢問真實伺服器的負載情況,並動態地調整其權值。
5.基於局部性的最少鏈接(Locality-Based Least Connections)
「基於局部性的最少鏈接」調度演算法是針對目標IP地址的負載均衡,目前主要用於Cache
集群系統。該演算法根據請求的目標IP地址找出該目標IP地址最近使用的伺服器,若該服務
器是可用的且沒有超載,將請求發送到該伺服器;若伺服器不存在,或者該伺服器超載且
有伺服器處於一半的工作負載,則用「最少鏈接」的原則選出一個可用的伺服器,將請求
發送到該伺服器。
6. 帶復制的基於局部性最少鏈接( Locality-Based Least Connections with
Replication)
「帶復制的基於局部性最少鏈接」調度演算法也是針對目標IP地址的負載均衡,目前主要
用於Cache集群系統。它與LBLC演算法的不同之處是它要維護從一個目標IP地址到一組服務
器的映射,而LBLC演算法維護從一個目標IP地址到一台伺服器的映射。該演算法根據請求的目
標IP地址找出該目標IP地址對應的伺服器組,按「最小連接」原則從伺服器組中選出一
台伺服器,若伺服器沒有超載,將請求發送到該伺服器;若伺服器超載,則按「最小連接
」原則從這個集群中選出一台伺服器,將該伺服器加入到伺服器組中,將請求發送到該服
務器。同時,當該伺服器組有一段時間沒有被修改,將最忙的伺服器從伺服器組中刪除,
以降低復制的程度。
7.目標地址散列(Destination Hashing)
「目標地址散列」調度演算法根據請求的目標IP地址,作為散列鍵(Hash Key)從靜態分
配的散列表找出對應的伺服器,若該伺服器是可用的且未超載,將請求發送到該伺服器,
否則返回空。
8.源地址散列(Source Hashing)
「源地址散列」調度演算法根據請求的源IP地址,作為散列鍵(Hash Key)從靜態分配的
散列表找出對應的伺服器,若該伺服器是可用的且未超載,將請求發送到該伺服器,否則
返回空。
了解這些演算法原理能夠在特定的應用場合選擇最適合的調度演算法,從而盡可能地保持
Real Server的最佳利用性。當然也可以自行開發演算法,不過這已超出本文范圍,請參考有
關演算法原理的資料。
4.1、什麼是高可用性
計算機系統的可用性(availability)是通過系統的可靠性(reliability)和可維護性
(maintainability)來度量的。工程上通常用平均無故障時間(MTTF)來度量系統的可靠性,
用平均維修時間(MTTR)來度量系統的可維護性。於是可用性被定義為:
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
MTTF/(MTTF+MTTR)*100%
業界根據可用性把計算機系統分為如下幾類:
可用比例
(Percent
Availability)
年停機時間
(downtime/year
)
可用性分類
99.5 3.7天
常規系統
(Conventional)
99.9 8.8小時可用系統(Available)
99.99 52.6分鍾
高可用系統(Highly
Available)
99.999 5.3分鍾Fault Resilient
99.9999 32秒Fault Tolerant
為了實現集群系統的高可用性,提高系統的高可性,需要在集群中建立冗餘機制。一個功
能全面的集群機構如下圖所示
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
負載均衡伺服器的高可用性
為了屏蔽負載均衡伺服器的失效,需要建立一個備份機。主伺服器和備份機上都運行
High Availability監控程序,通過傳送諸如「I am alive」這樣的信息來監控對方的運
行狀況。當備份機不能在一定的時間內收到這樣的信息時,它就接管主伺服器的服務IP並
繼續提供服務;當備份管理器又從主管理器收到「I am alive」這樣的信息是,它就釋放
服務IP地址,這樣的主管理器就開開始再次進行集群管理的工作了。為在住伺服器失效的
情況下系統能正常工作,我們在主、備份機之間實現負載集群系統配置信息的同步與備份,
保持二者系統的基本一致。
HA的容錯備援運作過程
自動偵測(Auto-Detect)階段 由主機上的軟體通過冗餘偵測線,經由復雜的監聽程序。邏
輯判斷,來相互偵測對方運行的情況,所檢查的項目有:
主機硬體(CPU和周邊)
主機網路
主機操作系統
資料庫引擎及其它應用程序
主機與磁碟陣列連線
為確保偵測的正確性,而防止錯誤的判斷,可設定安全偵測時間,包括偵測時間間隔,
偵測次數以調整安全系數,並且由主機的冗餘通信連線,將所匯集的訊息記錄下來,以供
維護參考。
自動切換(Auto-Switch)階段 某一主機如果確認對方故障,則正常主機除繼續進行原來的
任務,還將依據各種容錯備援模式接管預先設定的備援作業程序,並進行後續的程序及服
務。
自動恢復(Auto-Recovery)階段 在正常主機代替故障主機工作後,故障主機可離線進行修
復工作。在故障主機修復後,透過冗餘通訊線與原正常主機連線,自動切換回修復完成的
主機上。整個回復過程完成由EDI-HA自動完成,亦可依據預先配置,選擇回復動作為半自
動或不回復。
4.2、HA三種工作方式:
(1)、主從方式 (非對稱方式)
工作原理:主機工作,備機處於監控准備狀況;當主機宕機時,備機接管主機的一切工作,
待主機恢復正常後,按使用者的設定以自動或手動方式將服務切換到主機上運行,數據的
一致性通過共享存儲系統解決。
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
(2)、雙機雙工方式(互備互援)
工作原理:兩台主機同時運行各自的服務工作且相互監測情況,當任一台主機宕機時,另
一台主機立即接管它的一切工作,保證工作實時,應用服務系統的關鍵數據存放在共享存
儲系統中。
(3)、集群工作方式(多伺服器互備方式)
工作原理:多台主機一起工作,各自運行一個或幾個服務,各為服務定義一個或多個備用
主機,當某個主機故障時,運行在其上的服務就可以被其它主機接管。
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
相關文檔
http://tech.sina.com.cn/it/2004-04-09/1505346805.shtml
http://stonesoup.esd.ornl.gov
LINUX下的集群實列應用
最近有客戶需要一個負載均衡方案,筆者對各種軟硬體的負載均衡方案進行了調查和
比較,從IBM sServer Cluster、Sun Cluster PlatForm 等硬體集群,到中軟、紅旗、
TurboLinux的軟體集群,發現無論採用哪個廠商的負載均衡產品其價格都是該客戶目前所
不能接受的。於是筆者想到了開放源項目Linux Virtual Server(簡稱LVS)。經過對LVS的研
究和實驗,終於在Red Hat 9.0上用LVS成功地構架了一組負載均衡的集群系統。整個實
現過程整理收錄如下,供讀者參考。
選用的LVS實際上是一種Linux操作系統上基於IP層的負載均衡調度技術,它在操
作系統核心層上,將來自IP層的TCP/UDP請求均衡地轉移到不同的伺服器,從而將一組
伺服器構成一個高性能、高可用的虛擬伺服器。使用三台機器就可以用LVS實現最簡單的集
群,如圖1所示。
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
圖1 LVS實現集群系統結構簡圖
圖1顯示一台名為Director的機器在集群前端做負載分配工作;後端兩台機器稱之為
Real Server,專門負責處理Director分配來的外界請求。該集群的核心是前端的Director
機器,LVS就是安裝在這台機器上,它必須安裝Linux。Real Server則要根據其選用的負
載分配方式而定,通常Real Server上的設置比較少。接下來介紹Director機器上LVS的
安裝過程。
安裝
LVS的安裝主要是在Director機器上進行,Real Server只需針對不同的轉發方式做簡單
的設定即可。特別是對LVS的NAT方式,Real Server惟一要做的就是設一下預設的網關。
所以構架集群的第一步從安裝Director機器開始。
首先,要在Director機器上安裝一個Linux操作系統。雖然早期的一些Red Hat版本,
如6.2、7.2、8.0等自帶Red Hat自己的集群軟體,或者是在內核中已經支持LVS,但是為
了更清楚地了解LVS的機制,筆者還是選擇自行將LVS編入Linux內核的方式進行安裝,
Linux版本採用Red Hat 9.0。
如果用戶對Red Hat的安裝比較了解,可以選擇定製安裝,並只安裝必要的軟體包。
安裝中請選擇GRUB 做為啟動引導管理軟體。因為GRUB 在系統引導方面的功能遠比
LILO強大,在編譯Linux內核時可以體會它的方便之處。
LVS是在Linux內核中實現的,所以要對原有的Linux內核打上支持LVS的內核補丁,
然後重新編譯內核。支持LVS 的內核補丁可以從LVS 的官方網
http://www.linuxvirtualserver.org 下載,下載時請注意使用的Linux核心版本,必須下載和
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
使用的Linux內核版本相一致的LVS內核補丁才行。對於Red Hat 9.0,其Linux內核版本
是2.4.20,所以對應內核補丁應該是http://www.linuxvirtualserver.org/software/kernel-
2.4/linux-2.4.20-ipvs-1.0.9.patch.gz。筆者經過多次實驗,使用Red Hat 9.0自帶的Linux
源代碼無法成功編譯LVS 的相關模組。由於時間關系筆者沒有仔細研究,而是另外從
kernel.org上下載了一個tar包格式的2.4.20內核來進行安裝,順利完成所有編譯。下面是
整個內核的編譯過程:
1.刪除Red Hat自帶的Linux源代碼
# cd /usr/src
# rm -rf linux*
2.下載2.4.20內核
# cd /usr/src
# wget ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.20.tar.bz2
3.解壓到當前目錄/usr/src
# cd /usr/src
# tar -xjpvf linux-2.4.20.tar.bz2
4.建立鏈接文件
# cd /usr/src # ln -s linux-2.4.20 linux-2.4 # ln -s linux-2.4.20 linux
5.打上LVS的內核補丁
# cd /usr/src
#wget http://www.linuxvirtualserver.org/software/kernel-2.4/linux-2.4.20-ipvs-
1.0.9.patch.gz
# gzip -cd linux-2.4.20-ipvs-1.0.9.patch.gz
# cd /usr/src/linux
# patch -p1 < ../linux-2.4.20-ipvs-1.0.9.patch
在打補丁時,注意命令執行後的信息,不能有任何錯誤信息,否則核心或模組很可能
無法成功編譯。
6.打上修正ARP問題的內核補丁
# cd /usr/src
# wget http://www.ssi.bg/~ja/hidden-2.4.20pre10-1.diff
# cd /usr/src/linux
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
# patch -p1 < ../hidden-2.4.20pre10-1.diff
這一步在Director機器上可以不做,但是在使用LVS/TUN和LVS/DR方式的Real Server
上必須做。
7.為新核心命名
打開/usr/src/linux/Makefile。注意,在開始部分有一個變數EXTRAVERSION可以自行定
義。修改這個變數,比如改成「EXTRAVERSION=-LVS」後,編譯出的核心版本號就會顯
示成2.4.20-LVS。這樣給出有含義的名稱將有助於管理多個Linux核心。
8.檢查源代碼
# make mrproper
這一步是為確保源代碼目錄下沒有不正確的.o文件及文件的互相依賴。因為是新下載的內
核,所以在第一次編譯時,這一步實際可以省略。
9.配置核心選項
# make menuconfig
命令執行後會進入一個圖形化的配置界面,可以通過這個友好的圖形界面對內核進行定製。
此過程中,要注意對硬體驅動的選擇。Linux支持豐富的硬體,但對於伺服器而言,用不到
的硬體驅動都可以刪除。另外,像Multimedia devices、Sound、Bluetooth support、Amateur
Radio support等項也可以刪除。
注意,以下幾項配置對LVS非常重要,請確保作出正確的選擇:
(1)Code maturity level options項
對此項只有以下一個子選項,請選中為*,即編譯到內核中去。
Prompt for development and/or incomplete code/drivers
(2)Networking options項
對此項的選擇可以參考以下的配置,如果不清楚含義可以查看幫助:
<*> Packet socket
[ ] Packet socket: mmapped IO
< > Netlink device emulation
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
Network packet filtering (replaces ipchains)
[ ] Network packet filtering debugging
Socket Filtering
<*> Unix domain sockets
TCP/IP networking
IP: multicasting
IP: advanced router
IP: policy routing
[ ] IP: use netfilter MARK value as routing key
[ ] IP: fast network address translation
<M> IP: tunneling
IP: broadcast GRE over IP
[ ] IP: multicast routing
[ ] IP: ARP daemon support (EXPERIMENTAL)
[ ] IP: TCP Explicit Congestion Notification support
[ ] IP: TCP syncookie support (disabled per default)
IP: Netfilter Configuration --->
IP: Virtual Server Configuration --->
(3)Networking options項中的IP: Virtual Server Configuration項
如果打好了LVS的內核補丁,就會出現此選項。進入Virtual Server Configuration選項,
有以下子選項:
<M> virtual server support (EXPERIMENTAL)
IP virtual server debugging
(12) IPVS connection table size (the Nth power of 2)
--- IPVS scheler
<M> round-robin scheling
<M> weighted round-robin scheling
<M> least-connection scheling scheling
<M> weighted least-connection scheling
<M> locality-based least-connection scheling
<M> locality-based least-connection with replication scheling
<M> destination hashing scheling
<M> source hashing scheling
<M> shortest expected delay scheling
<M> never queue scheling
--- IPVS application helper
<M> FTP protocol helper
以上所有項建議全部選擇。
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
(4)Networking options項中的IP: Netfilter Configuration項
對於2.4版本以上的Linux Kernel來說,iptables是取代早期ipfwadm和ipchains的
更好選擇,所以除非有特殊情況需要用到對ipchains和ipfwadm的支持,否則就不要選它。
本文在LVS/NAT方式中,使用的就是iptables,故這里不選擇對ipchains和ipfwadm的
支持:
< > ipchains (2.2-style) support
< > ipfwadm (2.0-style) support
10. 編譯內核
(1)檢查依賴關系
# make dep
確保關鍵文件在正確的路徑上。
(2)清除中間文件
# make clean
確保所有文件都處於最新的版本狀態下。
(3)編譯新核心
# make bzImage
(4)編譯模組
# make moles
編譯選擇的模組。
(5)安裝模組
# make moles_install
# depmod -a
生成模組間的依賴關系,以便modprobe定位。
(6)使用新模組
# cp System.map /boot/System.map-2.4.20-LVS
# rm /boot/System.map
# ln -s /boot/System.map-2.4.20-LVS /boot/System.map
# cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.20-LVS
# rm /boot/vmlinuz
# ln -s /boot/vmlinuz-2.4.20-LVS /boot/vmlinuz
# new-kernel-pkg --install --mkinitrd --depmod 2.4.20-LVS
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
(7)修改GRUB,以新的核心啟動
執行完new-kernel-pkg命令後,GRUB的設置文件/etc/grub.conf中已經增加了新核心的
啟動項,這正是開始安裝Linux時推薦使用GRUB做引導程序的原因。
grub.conf中新增內容如下:
title Red Hat Linux (2.4.20-LVS)
root (hd0,0)
kernel /boot/vmlinuz-2.4.20LVS ro root=LABEL=/
initrd /boot/initrd-2.4.20LVS.img
將Kernel項中的root=LABEL=/改成 root=/dev/sda1 (這里的/dev/sda1是筆者Linux的根
分區,讀者可根據自己的情況進行不同設置)。
保存修改後,重新啟動系統:
# reboot
系統啟動後,在GRUB的界面上會出現Red Hat Linux(2.4.20-LVS)項。這就是剛才編譯的
支持LVS的新核心,選擇此項啟動,看看啟動過程是否有錯誤發生。如果正常啟動,ipvs
將作為模塊載入。同時應該注意到,用LVS的內核啟動後在/proc目錄中新增了一些文件,
比如/proc/sys/net/ipv4/vs/*。
11.安裝IP虛擬伺服器軟體ipvsadm
用支持LVS的內核啟動後,即可安裝IP虛擬伺服器軟體ipvsadm了。用戶可以用tar包或
RPM 包安裝,tar 包可以從以下地址http://www.linuxvirtualserver.org/software/kernel-
2.4/ipvsadm-1.21.tar.gz 下載進行安裝。
這里採用源RPM包來進行安裝:
# wget http://www.linuxvirtualserver.org/software/kernel-2.4/ipvsadm-1.21-7.src.rpm
# rpmbuild --rebuild ipvsadm-1.21-7.src.rpm
# rpm -ivh /usr/src/redhat/RPMS/i386/ipvsadm-1.21-7.i386.rpm
注意:高版本的rpm命令去掉了--rebuild這個參數選項,但提供了一個rpmbuild命令來實
現它。這一點和以前在Red Hat 6.2中以rpm—rebuild XXX.src.rpm來安裝源RPM包的習
慣做法有所不同。
安裝完,執行ipvsadm命令,應該有類似如下的信息出現:
# ipvsadm
中科紅旗linux技術支持服務中心---西安站 http://linux.xab.ac.cn
中國科學院西安網路中心 中科紅旗linux培訓認證中心
IP Virtual Server version 1.0.9 (size=4096)
Prot LocalAddress:Port Scheler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
出現類似以上信息,表明支持LVS 的內核和配置工具ipvsadm 已完全安裝,這台
Director機器已經初步安裝完成,已具備構架各種方式的集群的條件。
實例
理解了上述關於請求轉發方式和調度演算法的基本概念後,就可以運用LVS來具體實現
幾種不同方式的負載均衡的集群系統。LVS的配置是通過前面所安裝的IP虛擬伺服器軟體
ipvsadm來實現的。ipvsadm與LVS的關系類似於iptables和NetFilter的關系,前者只是
一個建立和修改規則的工具,這些命令的作用在系統重新啟動後就消失了,所以應該將這
些命令寫到一個腳本里,然後讓它在系統啟動後自動執行。網上有不少配置LVS的工具,
有的甚至可以自動生成腳本。但是自己手工編寫有助於更深入地了解,所以本文的安裝沒
有利用其它第三方提供的腳本,而是純粹使用ipvsadm命令來配置。
下面就介紹一下如何配置LVS/NAT、LVS/TUN、LVS/DR方式的負載均衡集群。
1.設定LVS/NAT方式的負載均衡集群
NAT是指Network Address Translation,它的轉發流程是:Director機器收到外界請求,
改寫數據包的目標地址,按相應的調度演算法將其發送到相應Real Server上,Real Server
處理完該請求後,將結果數據包返回到其默認網關,即Director機器上,Dire

『捌』 關於伺服器集群

問題1 :伺服器集群簡單可以理解為負載均衡 就是多台伺服器分擔同一個應用任務,但是還要看具體應用是要跑什麼然後才能判斷能不能實現。比如web伺服器(網站伺服器)就可以放到群集伺服器上,100個人訪問的話可以隨機分配到3個伺服器上,但是看到的內容是一樣的感覺就是在一台伺服器上。

問題2:雲是依託集群來做的。群集是實現雲技術的一個基礎平台。簡單例子:三台伺服器可以做成群集架設成雲平台,然後經過雲平台虛擬出6台或者更多台的虛擬伺服器(視你物理伺服器的性能來做)

熱點內容
網站搭建伺服器搭建 發布:2025-03-16 10:33:27 瀏覽:795
游戲目錄在哪裡安卓 發布:2025-03-16 10:33:19 瀏覽:467
婉兒腳本 發布:2025-03-16 10:19:33 瀏覽:580
c語言ftp下載文件 發布:2025-03-16 10:05:02 瀏覽:307
手機帳戶密碼怎麼找回密碼 發布:2025-03-16 10:02:10 瀏覽:706
c語言位段的使用 發布:2025-03-16 10:00:38 瀏覽:572
象山編程 發布:2025-03-16 09:38:41 瀏覽:927
綠點掌知識薪資密碼是多少 發布:2025-03-16 09:37:05 瀏覽:597
osu安卓版怎麼 發布:2025-03-16 09:37:05 瀏覽:153
python編程編程第三版 發布:2025-03-16 09:29:56 瀏覽:968