天天看點

叢集(cluster)原理(轉)

1、什麼是叢集

叢集(cluster)就是一組計算機,他們作為整體向使用者提供一組網絡資源。這些單個的計算機系統就是叢集的節點(node)。一個理想的叢集是,使用者從不會意識到叢集系統底層的節點,在他/她們看來,叢集是一個系統,而非多個計算機系統。并且叢集系統的管理者可以随意的增加和删除叢集系統的節點。

2、叢集的優點

<1>高擴充性

<2>高可用性HA:叢集中的一個節點失效,它的任務可傳遞給其他節點。可以防止單點失效

<3>高性能:負載平衡叢集允許系統同時接入更多的使用者

<4>高性能價比:可以采用廉價的複合工業标準的硬體來構造高性能的系統。

3、叢集系統的分類

雖然,根據叢集系統的不同特征可以有多種分類方法,但是一般把叢集系統分為兩類:

<1>高可用性(High Availability)叢集,簡稱HA叢集。

這類叢集緻力于提供高度可靠的服務。就是利用叢集系統的容錯性對外提供7*24小時不間斷的服務,如高可用的檔案伺服器、資料庫服務等關鍵應用。

負載均衡叢集:使任務可以在叢集中盡可能平均的分攤不同計算機處理,充分利用叢集的處理能力,提高對任務的處理效率。在實際應用中這幾種叢集類型可能混合使用,以提供更高穩定的服務,如在一個使用網絡流量負載均衡的叢集中,就會包含高可用的網絡檔案系統、高可用的網絡服務。

<3>性能計算(High Perfervidmance  Computing)叢集,簡稱HPC叢集,也稱為計算叢集。

在這種叢集運作的是專門開發的并行應用程式,它可以把一個問題的資料分不到多台計算機上,利用這些計算機的共同資源來完成任務,進而可以解決單機不能勝任的工作(如果問題規模太大,單機計算速度太慢)。

這類叢集緻力于提供了單個計算機所不能提供的強大的計算能力。如天氣預報、石油勘探與油藏模拟、分子模拟、生物計算等。

4、什麼是高可用性(HA)

計算機系統的可用性(availability)是通過系統的可靠性(reliability)和可維護性(maintainability)來度量的。工程上通常采用平均無故障時間(MTTF)來度量系統的可靠性,用平均時間(MTTR)來度量系統的可維護性。于是可用性定義為:MTTF/(MTTF+MTTR)*100%

5、負載均衡伺服器的高可用性

為了屏蔽負載均衡伺服器失效,需要建立一個備份機。主伺服器和備份機上都運作High Availability監控程式,通過傳送諸如“I am alive”這樣的資訊來監控對方的運作狀況。當備份機不能在一定的時間内收到這樣的資訊時,它就接管主伺服器IP并繼續提供服務;當備份管理器又從主管理器收到“I am alive”這樣的資訊時,他就釋放IP位址,這樣的主管理器就開開始再次進行叢集管理的工作了。為在主伺服器失效的情況下系統能正常工作,我們在主、備份機之間實作負載叢集系統配置資訊的同步和備份,保持兩者系統的基本一緻。

6、HA的容錯備援運作過程

自動偵測(Auto-Detect)階段 由主機上的軟體通過備援偵測線,經由複雜的偵聽程式。邏輯判斷,互相偵測對方運作情況,所檢查的項目有:主機硬體(CPU和周邊)、主機網絡、主機作業系統、資料引擎以及其他應用程式、主機與磁盤陣列連線。為確定偵測的正确性,而防止錯我的判斷,可設定安全偵測時間、包括偵測時間間隔、偵測次數以調整安全系數,并且由主機的備援通信連線,将所彙集的訊息記錄下來,以供維護參考。

自動切換(Auto-Switch)階段 某一主機如果确認對方故障,則正常主機繼續進行原來的任務,還将依據各種容錯備援模式接管預先設定的備援作業程式,并進行後續的程式以及服務。

自動恢複(Auto-Recovery)階段  在正常主機代替故障機工作後,故障機可離線進行修複工作。在故障主機修複後,通過備援通訊線與原來主機連線,自動切換回修複完成的主機上。整個回複過程完成有EDI-HA自動完成,亦可依靠預先配置,選擇回複動作為半自動或不回複。

7、HA三種工作方式

<1>主從方式(非對稱方式)

工作原理:主機工作,備機處于監控狀況;當主機當機時,備機接管主機的一切工作,待主機恢複正常後,按使用者的設定以自動或手動方式将服務切換到主機上運作,資料的一緻性通過共享存儲系統解決。

<2>雙機雙工方式(互備互援)

工作原理:兩台主機同時運作各自的服務工作且互相檢測情況,當任一台主機當機時,另一台主機立即接管它的一切工作,保證工作實時,應用服務系統的關鍵資料存放在共享存儲系統中。

<3>叢集工作方式(多伺服器互備方式)

工作原理:多台主機一起工作,各自運作一個或幾個服務,各為服務定義一個或多個備用主機,當某個主機故障時,運作在其上的服務就可以被其它主機接管。