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

服務器羣集

鎖定
羣集由通過輸入/輸出系統互聯的若干服務器構成。這些服務器連接到存儲介質中,由分佈資源管理軟件(DRM) 進行管理。其組成部分處在不斷的改進之中:刀片式服務器,快速InfiniBand I/O技術和更為複雜的DRM軟件,這些部分組合在一起,使得羣集成為IT經理們的實用工具。
中文名
服務器羣集
外文名
Server Cluster
組    成
輸入/輸出系統互聯的若干服務器
羣集概念
網絡負載平衡
羣集算法
完全分佈式

服務器羣集主要應用

服務器羣集技術最主要的應用即在於網絡負載平衡的功能。 網絡負載平衡使用兩台或更多台一起工作的主機計算機組成的羣集,為服務器提供了高可用性和高伸縮性。Internet客户端使用一個 IP 地址或一組地址訪問羣集。客户端無法區別羣集和單一服務器。服務器應用程序並不表明它們是在羣集上運行的。但是,網絡負載平衡羣集與運行單個服務器應用程序的單個主機有很大的區別,因為即使在某個羣集主機發生故障的情況下,它也可以提供不間斷服務。羣集對客户端請求的響應也比單個主機快。
如果某個主機發生故障或脱機,則網絡負載平衡通過將傳入的網絡通信重定向到工作的羣集主機,從而帶來了高可用性。連到脱機主機的現有連接將丟失,但是 Internet 服務仍然是可用的。在多數情況下(例如,就 Web 服務器而言),客户端軟件可以自動重試失敗的連接,而且客户端在接收響應時,只有數秒鐘的延遲。網絡負載平衡通過在分配給網絡負載平衡羣集的一個或多個虛擬 IP 地址(羣集 IP 地址)間分配傳入的網絡通信,從而帶來了可變化的性能。然後,羣集中的主機同時對不同的客户端請求甚至來自同一客户端的多個請求做出響應。例如,Web瀏覽器可以從網絡負載平衡羣集中的不同主機獲得所有單張網頁中的多幅圖像。這就提高了處理速度,並縮短了對客户端做出響應的時間。
網絡負載平衡使得單個子網上的所有羣集主機可以同時檢測羣集 IP 地址的傳入網絡通信。在每個羣集主機上,網絡負載平衡驅動程序充當羣集適配器驅動程序和 TCP/IP堆棧間的過濾器,以便在主機間分配通信。

服務器羣集羣集算法

網絡負載平衡採用一種完全分佈式的算法,根據傳入客户端的 IP 地址和端口,以統計方式將其映射到羣集主機。此進程的發生不需要主機間進行任何通信。當發現到達的數據包時,所有主機同時執行這種映射,以快速確定哪個主機應當處理這個程序包。這種映射一直保持不變,直到羣集主機數發生更改時為止。與集中式負載平衡應用程序相比,網絡負載平衡篩選算法處理數據包的效率更高,因為前者必須修改和重新傳送數據包。
網絡負載平衡通過以下方式,控制從 Internet 客户端到羣集中選定主機的 TCP 和 UDP 通信的分配:配置好網絡負載平衡後,羣集中的所有主機都接收傳到羣集 IP 地址的傳入客户端請求。網絡負載平衡篩選傳到指定 TCP 和 UDP 端口的傳入數據報,之後這些數據報才會到達 TCP/IP 協議軟件。網絡負載平衡在 TCP/IP 內管理 TCP 和 UDP 協議,從而逐個端口地控制其操作。
多播模式下,網絡負載平衡可以提供 Internet 組管理協議 (IGMP) 支持,限制交換流。除了指定端口的 TCP 和 UDP 通信以及多播模式中的 IGMP 通信,網絡負載平衡不控制任何傳入 IP 通信。它並不篩選其他 IP 協議(例如,ICMP 或 ARP),但是下述情況除外。請注意,當使用羣集 IP 地址時,應當會看到來自特定點對點 TCP/IP 應用程序(例如 ping)的重複響應。如果需要,這些應用程序可以將專用 IP 地址用於每個主機,以避免這種操作。
為了協調其操作,網絡負載平衡主機在羣集內週期性地交換檢測信號(詳細信息,請參閲Internet 組管理協議 (IGMP))。IP多播允許主機監控羣集狀態。當羣集狀態更改時(例如當主機發生故障、離開或加入羣集時),網絡負載平衡將調用稱作“聚合”的過程,在該過程中,主機交換數量有限的消息,以確定羣集的新的一致狀態,併為主機指定最高主機優先級,即作為新的默認主機。當所有羣集主機在正確的新羣集狀態下取得一致後,它們將在 Windows 事件日誌中記錄聚合的完成。完成這個過程一般用不了 10 秒種。
在聚合過程中,其餘主機繼續處理傳入的網絡通信。對工作主機的客户端請求不受影響。完成聚合後,將以故障主機為目標的通信重新分發給仍在工作的主機。經過負載平衡後的通信將在仍在工作的主機間得到重新劃分,以便儘可能好地實現特定 TCP 或 UDP 端口的新的負載平衡。
如果向羣集添加了一個主機,則聚合允許該主機接收自己那份經過負載平衡的通信。羣集的擴展不影響正在進行的羣集操作,而且其實現過程對 Internet 客户端和服務器應用程序都是透明的。但是,當選擇了“客户端相似性”時,它可能影響跨多個 TCP 連接的客户端會話,因為可能會將客户端重映射到連接間的不同羣集主機。有關相似性的詳細信息,請參閲網絡負載平衡和狀態可控的連接。
網絡負載平衡假定,主機在羣集內正常工作的時間與它同其他羣集主機交換檢測信號的時間一樣長。如果在多次檢測信號交換中,其他主機都沒有接收到來自任何成員的響應,則它們將啓動聚合,重新分發本來應由失敗主機處理的負載。

服務器羣集羣集功能

WIN 2003中的服務器羣集功能
服務器羣集功能最早是為 Microsoft Windows NT® Server 4.0 操作系統設計的,這一功能在 Microsoft Windows Server 2003 Enterprise Edition 和 Windows Server 2003 Datacenter Edition 操作系統中又得到重大改進。您可以藉助服務器羣集功能將多台服務器連接在一起,從而為在該羣集中運行的數據和程序提供高可用性和易管理性。服務器羣集提供了以下三種主要的羣集技術優點:
更高的可用性。允許服務器羣集中的服務和應用在硬件或軟件組件故障下或在計劃維護期間仍能不間斷地提供服務。
更高的可擴展性。支持通過增加多個處理器(在 Windows Server 2003 Enterprise Edition 中最多可達 8 個,在 Windows Server 2003 Datacenter Edition 中最多可達 32 個)和額外內存(在企業版中,隨機存取內存[RAM] 最多可達 8 GB,在 Windows Server 2003 Datacenter Edition 中最多可達 64 GB)來擴展服務器。
更高的可管理性。允許管理員如同管理單台計算機那樣管理整個羣集內的設備和資源。
該羣集服務是兩種互為補充的 Windows羣集技術(為了擴展 Windows Server 2003 和 Windows 2000 基礎操作系統而提供的)中的一種。另一個羣集技術網絡負載均衡(Network Load Balancing,NLB)。該技術作為服務器羣集的互補,可面向前端應用和服務(如 Internet 或 Intranet 站點、基於 Web 的應用、媒體流以及 Microsoft終端服務)來支持高度可用和可伸縮的羣集。
計算機羣集的出現和使用已經有十幾年的歷史。作為最早的羣集技術設計師之一,G. Pfister 對羣集的定義是,“一種並行或分佈式的系統,由全面互連的計算機集合組成,可作為一個統一的計算資源使用”。
將數台服務器計算機組合成一個統一的羣集,多台服務器將可以在用户或管理員不必瞭解細節的情況下分擔計算負載。例如,如果服務器羣集中的任何資源發生了故障,則不論發生故障的組件是硬件還是軟件資源,作為一個整體的羣集都可以使用羣集中其它服務器上的資源來繼續向用户提供服務。
換言之,當資源發生故障時,同服務器羣集連接的用户可能經歷短暫的性能下降現象,但不會完全失去對服務的訪問能力。當需要更高的處理能力時,管理員可以通過滾動升級過程來添加新資源。該過程中,羣集在整體上將保持聯機狀態,它不僅可供用户使用,而且在升級後,其性能也將得到改善。
Windows Server 2003 Enterprise Edition 和 Windows Server 2003 Datacenter Edition 操作系統是完全針對用户和業務對羣集技術的要求而設計開發的。主要目標是:開發一種能滿足大多數商業機構和組織的羣集需求的操作系統服務,而不是僅針對小型和特定的市場段。
Microsoft 市場調查顯示,隨着中小型商業機構的日常運作已越來越離不開數據庫和電子郵件,因此它們對高可用系統的需求很大,而且這種需求日趨旺盛。易於安裝和管理,被認為是這種規模的機構最關鍵的要求。Microsoft 的調查同時顯示,那些對高性能和高可用性具有很高要求的大企業對基於 Windows 的服務器也日益感興趣。
作為 Windows NT、Windows 2000 和 Windows Server 2003 基礎操作系統的集成化擴展而開發的服務器羣集服務,正是源於此次市場調查。該服務同其設計目標保持了一致,通過它可將多台服務器和數據存儲組件連接成一個易於管理的單元,即服務器羣集。對於大型和小型企業中運行基於 Windows Server 2003 和 Windows 2000 的應用程序的系統,服務器羣集功能將可以賦予它們高可用性和易管理性。服務器羣集功能還提供了開發可利用服務器羣集的高可用功能並且具有羣集意識的新應用程序所必需的應用程序接口和工具。

服務器羣集安裝配置

以在Windows Server 2003系統中安裝配置羣集服務為例介紹方法:
第1步,依次單擊“開始”→“所有程序”→“管理工具”→“羣集管理器”菜單,打開“羣集管理器”窗口,並自動打開“打開到羣集的連接”對話框。這個對話框為用户提供了創建新羣集、添加節點到羣集和打開到羣集的連接三個選項。在“操作”下拉菜單中選擇“創建新羣集”命令並單擊“確定”按鈕。
第2步,打開“新建服務器羣集嚮導”,在歡迎向導頁中單擊“下一步”按鈕。在打開的“羣集名稱和域”嚮導頁中輸入一個羣集名稱,且該名稱必須是有效的計算機名稱。另外需要選擇一個域名,新的羣集將創建在這個域中。採用默認域名,單擊“下一步”按鈕。
第3步,在打開的“請選擇計算機”嚮導頁中提示用户輸入將要安裝新羣集的第一個節點計算機,默認情況下將自動選擇本地服務器。單擊“下一步”按鈕。
單擊“高級”按鈕並選中“高級(最小)配置”複選框後,則在“新建服務器羣集嚮導”完成最後的步驟後需要手動添加共享設備。
第4步,接着“新建服務器羣集嚮導”將使用用户提供的信息來分析所有為了成功創建羣集所必需的因素。嚮導主要通過以下五個方面進行分析:
(1)檢驗現有羣集:驗證網絡上不存在具有相同名稱的羣集;
(2)建立節點連接:連接到目標服務器並初始化羣集創建過程;
(3)檢驗節點可行性:確定目標服務器是否滿足所有的先決條件;
(4)查找節點上的公共資源:確定共享資源的可用性,包括列舉共享磁盤資源(為了創建仲裁)和網絡適配器(為了安裝羣集網絡);
(5)檢驗羣集可行性:驗證羣集的創建是可能的併為仲裁指定資源。
嚮導將用對勾表示成功,用叉號表示失敗,而帶有歎號的黃色三角形表示警告,其中警告標識可以忽略。如果分析中任何一個方面存在問題,則必須清除故障後才能繼續操作。通過分析驗證後單擊“下一步”按鈕。
第5步,打開“IP地址”嚮導頁,這時需要設置羣集的IP地址。該地址將作為DNS解析羣集名稱時的目標地址,且該地址應該跟“公用連接”的IP地址處於同一個網段。本例中輸入該網段中一個空閒的IP地址10.115.1.168。設置完畢單擊“下一步”按鈕。
第6步,在打開的“羣集服務賬户”嚮導頁中需要提供一個域用户賬户,以便對羣集進行管理。這個賬户將被放在本地管理員組(Administrators)中,並被賦予在目標服務器上的適當權限。這裏輸入前面創建的羣集用户賬户Cluster和其密碼,並單擊“下一步”按鈕。
第7步,打開“建議的羣集配置”嚮導頁,在該向導頁中列出了到目前為止用户設置的所有信息。確認無誤後單擊“下一步”按鈕。
第8步,嚮導開始創建並啓動服務器羣集,這個過程被分成了4個主要部分:
(1)重新分析羣集:重複原先在檢驗羣集可行性時選擇的步驟。一旦這種可行性被驗證,羣集配置就已經初始化了;
(2)配置羣集服務:將羣集服務賬户分配到合適的組,並賦予其合適的用户權利。然後創建並啓動與羣集有關的服務、創建並配置羣集數據庫以及創建並啓動Cluster Service(羣集服務);
(3)配置資源類型:配置Generic Script和Majority Node Set資源類型;
(4)配置資源:創建、配置並啓動羣集組中的資源(包括仲裁資源)。
創建完畢單擊“下一步”按鈕。
羣集服務安裝完畢以後會自動連接到羣集。
如果由於配置錯誤導致無法連接到羣集而需要取消羣集配置時,可以在“命令提示符”窗口中輸入命令行“cluster node 節點名稱 /forcecleanup”並按回車鍵來實現。