特點
每個主機運行所需伺服器應用程式(例如 Web、FTP 和 Telnet 伺服器)的獨立副本。
網路負載平衡將傳入客戶端請求分發到群集中的所有主機。每台主機處理的負荷量可在必要時配置。也可動態地向群集中添加主機來處理增加的負載。另外,網路負載平衡可以將所有通信發到指定的單個主機上,這個主機稱為默認主機。
網路負載平衡允許群集中的所有計算機被一組相同的群集 IP 地址
定址(同時保持其現有的唯一專用
IP地址)。
對於經過
負載平衡的程式,當某個主機出現故障或脫機時,將在繼續運行的計算機間自動重新分配負載。單個伺服器中的程式將其通信重定向到特定的主機。當計算機出乎預料地出現故障或脫機時,連到失敗或脫機伺服器的
活動連線將會丟失。但是,如果有意讓主機停機,則可以在讓計算機脫機之前,用 drainstop 命令為所有活動連線提供服務。在這兩種情況下,脫機計算機都可以透明地重新加入群集,並重新獲得自己那份
工作負荷。
注意如果打算在 64 位環境中使用
網路負載平衡,必須使用 64 位網路負載平衡版本。如果不這樣做,群集將無法建立。
網路負載平衡作為 Windows 聯網驅動程式運行。其操作對 TCP/IP 聯網
協定棧是透明的。下圖表明了在網路負載平衡主機的典型配置中其他軟體組件與網路
負載平衡軟體之間的關係:
ART圖像
某些伺服器應用程式訪問由客戶端請求更新的資料庫。當這些應用程式在群集中進行負載平衡時,這些更新任務需要正確同步。每個主機都可使用本地的獨立資料庫副本,必要時可脫機合併。作為一種選擇方案,群集主機可共享對單獨的聯網
資料庫伺服器的訪問。也可使用這些方法的組合。例如,靜態的 Web 頁可在所有的
群集伺服器之間複製以確保快速訪問和完成容錯。但是,資料庫請求將被轉發給處理多個 Web 伺服器更新工作的公用資料庫伺服器。
一些關鍵任務應用程式可能需要使用
高可用性的
資料庫引擎來保證服務的完全容錯。建議部署可以識別群集的
資料庫軟體,以便在一套總體群集方案內,提供高可用和高伸縮的資料庫訪問。Microsoft SQL Server 便是這樣的一個例子,它可使用伺服器群集中的群集服務進行部署。群集服務確保了一旦某個節點出現故障,則其餘的節點將接管發生故障的計算機的職責,因此對 Microsoft SQL Server 的客戶端提供幾乎不間斷的服務。因為伺服器群集中的計算機利用了群集
存儲設備,所以它能執行此任務。有關群集服務以及它如何配合
網路負載平衡工作的詳細信息,請參閱更新的技術信息。
注意
· 將目前討論的兩種群集解決方案區分開非常重要。首先,網路負載平衡主要用來對傳入的 TCP/IP 通信進行
負載平衡。參與這一解決方案的計算機形成了一種類型的群集。第二,群集服務主要用來提供從一台計算機到另一台計算機的
故障轉移服務。參與這一解決方案的計算機形成了一個不同類型的群集。此外,網路負載平衡群集通常運行 Web 伺服器應用程式。相反,群集服務通常運行資料庫應用程式(在與“網路負載平衡”一起使用時)。在同一計算機上不能同時激活網路負載平衡和群集服務,但是通過兩種群集解決方案以互補方式運作,可以創建如下圖所示的總體群集方案。