複製鏈接
請複製以下鏈接發送給好友

服務器集羣

鎖定
服務器集羣就是指將很多服務器集中起來一起進行同一種服務,在客户端看來就像是隻有一個服務器。集羣可以利用多個計算機進行並行計算從而獲得很高的計算速度,也可以用多個計算機做備份,從而使得任何一個機器壞了整個系統還是能正常運行。
中文名
服務器集羣
外文名
Server cluster
特    點
很高的計算速度
學    科
計算機學
途    徑
並行計算
平    台
於Windows Server 2003的企業版和Datacenter版

服務器集羣服務器集羣簡介

一旦在服務器上安裝並運行了集羣服務,該服務器即可加入羣集。集羣化操作可以減少單點故障數量,並且實現了羣集化資源的高可用性。下述各節簡要介紹了羣集創建和集羣操作中的節點行為。
注意:有關安裝羣集服務器的信息,請參閲 Windows server 2003產品家族的幫助和部署指南。
關於Windows Server 2003的企業版和Datacenter版都可以支持最大達8個節點的集羣配置;其典型的特徵是可為數據庫、消息系統、文件與打印服務這些關鍵業務應用,提供高可用性和可擴展性,在集羣中的多個服務器(節點)保持不間斷的聯繫。即是説如果在集羣中的某一節點因出錯或維護不可用時,另一節點會立刻提供服務,以實現容錯。正在訪問服務的用户可以繼續訪問,而不會察覺到服務已經由另一台服務器(節點)提供。

服務器集羣創建羣集

服務器羣集產品中含有用來在服務器上安裝羣集軟件和創建新羣集的羣集安裝實用工具。創建新羣集時,首先在選擇作為羣集的第一個成員的計算機上運行該實用工具。第一步是確定羣集名稱並創建羣集數據庫和初始的羣集成員列表來定義新羣集。 Windows server 2003 羣集新增了一個羣集管理設置嚮導以及使用 cluster.exe命令行界面創建( 包括從遠程創建 )羣集的功能。
創建羣集的第二步是,添加可供所有羣集成員使用的共用數據存儲設備。這樣,創建的新羣集將帶有一個節點、自己的本地數據存儲設備以及羣集共用資源 —— 通常是磁盤或數據存儲和連接介質資源。
創建羣集的最後一步是,在另外將要成為羣集成員的每一台計算機上運行安裝實用工具。每當將新節點添加到羣集中時,新節點都會自動從羣集的原始成員獲得現有羣集數據庫的副本。當節點加入或形成羣集時,羣集服務會更新該節點私有的配置數據庫副本。

服務器集羣形成羣集

如果服務器運行了羣集服務並且無法找到羣集中的其它節點,它自己可以形成一個羣集。要形成羣集,節點必須能夠獲得對仲裁資源的獨佔權。
當最初形成羣集時,羣集中的第一個節點將包括羣集配置數據庫。每當有新節點加入羣集時,新節點都會在本地獲得並保持羣集配置數據庫的副本。仲裁資源用恢復日誌(其中含有同節點無關的羣集配置和狀態數據)的形式存儲配置數據庫的最新版本。
在羣集運行中,羣集服務使用仲裁恢復日誌執行以下操作 :
保證只有一組活動、可相互通訊的節點才能形成羣集
僅當某個節點可以獲得對仲裁資源的控制權時 , 才允許它形成羣集
僅當某個節點可以同控制仲裁資源的節點通訊時 , 才允許它加入或留在現有羣集中

服務器集羣集羣服務的狀態

從羣集中的其它節點和羣集服務管理接口的角度看,當形成羣集時,羣集中的每個節點可能處於三種不同狀態中的一種。事件處理器會記錄這些狀態,而事件日誌管理器會將這些狀態複製到羣集的其它節點。羣集服務狀態包括:
脱機。此時的節點不是完全有效的羣集成員。該節點及其羣集服務器可能在運行,也可能未運行。
聯機。此時的節點是完全有效的羣集成員。它遵從羣集數據庫的更新、對仲裁算法施加自己的影響、維護心跳通訊,並可以擁有和運行資源組。
暫停。它只能支持它當前已擁有的那些資源組。之所以提供暫停狀態,是為了允許執行某些維護。大多數服務器羣集組件會將聯機和暫停視為等價的狀態。

服務器集羣優勢

一、集羣系統可解決所有的服務器硬件故障,當某一台服務器出現任何故障,如:硬盤、內存、CPU、主板、I/O板以及電源故障,運行在這台服務器上的應用就會切換到其它的服務器上。
二、集羣系統可解決軟件系統問題,我們知道,在計算機系統中,用户所使用的是應用程序和數據,而應用系統運行在操作系統之上,操作系統又運行在服務器上。這樣,只要應用系統、操作系統、服務器三者中的任何一個出現故障,系統實際上就停止了向客户端提供服務,比如我們常見的軟件死機,就是這種情況之一,儘管服務器硬件完好,但服務器仍舊不能向客户端提供服務。而集羣的最大優勢在於對故障服務器的監控是基於應用的,也就是説,只要服務器的應用停止運行,其它的相關服務器就會接管這個應用,而不必理會應用停止運行的原因是什麼。
三、集羣系統可以解決人為失誤造成的應用系統停止工作的情況,例如,當管理員對某台服務器操作不當導致該服務器停機,因此運行在這台服務器上的應用系統也就停止了運行。由於集羣是對應用進行監控,因此其它的相關服務器就會接管這個應用。

服務器集羣缺點

我們知道集羣中的應用只在一台服務器上運行,如果這個應用出現故障,其它的某台服務器會重新啓動這個應用,接管位於共享磁盤櫃上的數據區,進而使應用重新正常運轉。我們知道整個應用的接管過程大體需要三個步驟:偵測並確認故障、後備服務器重新啓動該應用、接管共享的數據區。因此在切換的過程中需要花費一定的時間,原則上根據應用的大小不同切換的時間也會不同,越大的應用切換的時間越長。

服務器集羣加入羣集

服務器集羣尋找

如果一個服務器要加入現有羣集 , 則它必須運行羣集服務並且必須成功找到羣集中的其它節點。在找到其它節點後,加入的服務器必須接受羣集成員資格驗證,並獲得羣集配置數據庫的副本。

服務器集羣條件

加入現有羣集的過程開始於 Windows Server 2003 或 Windows 2000 Service Control Manager 在節點上啓動羣集服務之時。在啓動過程中,羣集服務會配置並裝入該節點的本地數據設備。它並不會試圖將共用的羣集數據設備作為節點聯機,因為現有羣集可能正在使用這些設備。

服務器集羣過程

為了查找其它節點 , 會啓動一個發現過程。當節點發現任何羣集成員時,它將執行身份驗證序列。第一個羣集成員會對新加入者進行身份驗證,並且在新服務器得到成功驗證後返回成功狀態。如果驗證不成功(未能識別待加入節點的羣集成員身份,或者它使用了無效的帳户密碼),則加入羣集的請求會被拒絕。

服務器集羣驗證

進行成功驗證後,首先聯機的羣集節點會檢查加入節點上的配置數據庫副本。如果該副本已過時,對加入服務器進行驗證的羣集節點會為加入的服務器發送該數據庫的更新副本。剛加入羣集的節點在收到複製的數據庫後,可以用它查找共享資源並根據需要將它們聯機。

服務器集羣脱離羣集

當節點關閉或羣集服務被停止時,節點可能脱離羣集。但當節點不執行羣集操作(比如不向羣集配置數據庫提交更新)時,節點也可能被迫脱離(被逐出)羣集。
如果節點根據預先的計劃脱離羣集,它會向其它所有節點成員發送 ClusterExit 消息,通知它們它將脱離羣集。該節點不等待任何響應就會立即進行關閉資源和所有羣集連接的操作。由於其餘節點收到了退出消息,因此它們不會執行在節點意外失效或網絡通訊停止時發生的重新分組過程以重新確立羣集成員身份。

服務器集羣方法

有兩種常用的服務器集羣方法,一種是將備份服務器連接在主服務器上,當主服務器發生故障時,備份服務器才投入運行,把主服務器上所有任務接管過來。另一種方法是將多台服務器連接,這些服務器一起分擔同樣的應用和數據庫計算任務,改善關鍵大型應用的響應時間。同時,每台服務器還承擔一些容錯任務,一旦某台服務器出現故障時,系統可以在系統軟件的支持下,將這台服務器與系統隔離,並通過各服務器的負載轉嫁機制完成新的負載分配。PC服務器中較為常見的是兩台服務器的集羣,UNIX系統可支持8台服務器的集羣系統,康柏的專用系統OpenVMS可支持多達96台服務器的集羣系統。

服務器集羣集羣的特點

在集羣系統中,所有的計算機擁有一個共同的名稱,集羣內任一系統上運行的服務可被所有的網絡客户所使用。集羣必須可以協調管理各分離組件的錯誤和失敗,並可透明的向集羣中加入組件。用户的公共數據被放置到了共享的磁盤櫃中,應用程序被安裝到了所有的服務器上,也就是説,在集羣上運行的應用需要在所有的服務器上安裝一遍。當集羣系統在正常運轉時,應用只在一台服務器上運行,並且只有這台服務器才能操縱該應用在共享磁盤櫃上的數據區,其它的服務器監控這台服務器,只要這台服務器上的應用停止運行(無論是硬件損壞、操作系統死機、應用軟件故障,還是人為誤操作造成的應用停止運行),其它的服務器就會接管這台服務器所運行的應用,並將共享磁盤櫃上的相應數據區接管過來。其接管過程如下圖所示(以應用A為例):
1.應用A正常工作時;
2.應用A停止工作後,其它的備用服務器將該應用接管過來。 具體接管過程分三部執行: a.系統接管 b.加載應用 c.客户端連接

服務器集羣集羣技術的分類

  1. 高可用集羣
    高可用集羣的英文全稱是High Availability,簡稱HA cluster。高可用的含義是最大限度地可以使用。從集羣的名字上可以看出,此類集羣實現的功能是保障用户的應用程序持久、不間斷地提供服務。
  2. 負載均衡集羣
    負載均衡集羣也是由兩台或者兩台以上的服務器組成。分為前端負載調度和後端服務兩個部分。負載調度部分負責把客户端的請求按照不同的策略分配給後端服務節點,而後端節點是真正提供應用程序服務的部分。與HA Cluster不同的是,負載均衡集羣中,所有的後端節點都處於活動狀態,它們都對外提供服務,分攤系統的工作負載。
  3. 科學計算集羣
    高性能計算集羣,簡稱HPC集羣。這類集羣致力於提供單個計算機所不能提供的強大計算能力,包括數值計算和數據處理,並且傾向於追求綜合性能。HPC與超級計算類似,但是又有不同,計算速度是超級計算追求的第一目標。最快的速度、最大的存儲、最龐大的體積、最昂貴的價格代表了超級計算的特點。隨着人們對計算速度需求的提高,超級計算也應用到各個領域,對超級計算追求單一計算速度指標轉變為追求高性能的綜合指標,即高性能計算。 [1] 
參考資料