Sun Cluster 簡介 (適用於 Solaris 作業系統)

第 3 章 Sun Cluster 架構

Sun Cluster 架構允許將一組系統作為單一大型系統進行部署、管理和檢視。

本章包含下列小節:

Sun Cluster 硬體環境

叢集由以下硬體元件組成:

圖 3–1 用圖例說明硬體元件如何相互協作。

圖 3–1 Sun Cluster 硬體元件

圖例:雙節點叢集,具有公用網路與私有網路、互連硬體、本機磁碟與多重主機磁碟、主控台以及用戶端。

Sun Cluster 軟體環境

若要作為叢集成員運作,節點必須安裝有以下軟體:

圖 3–2 顯示共同作業以建立 Sun Cluster 軟體環境之軟體元件的高階檢視。

圖 3–2 Sun Cluster 軟體架構

圖例:Sun Cluster 軟體元件,例如 RGM、CMM、CCR、容體管理程式以及叢集檔案系統。

叢集成員關係監視器

為了確保資料免於毀壞,所有節點必須針對叢集成員關係達成一致協議。必要時,CMM 會協調叢集服務的叢集重新配置以回應故障。

CMM 從叢集傳輸層接收有關連接到其他節點的資訊。在重新配置期間,CMM 使用叢集交互連接來交換狀態資訊。

偵測到叢集成員關係變更後,CMM 會執行叢集的同步化配置。在此配置中,叢集資源可能會根據新的叢集成員關係重新分配。

CMM 完全在核心中執行。

Cluster Configuration Repository (CCR,叢集配置儲存庫)

CCR 依賴 CMM 來保證叢集只有在到達法定數目時才能執行。CCR 負責驗證整個叢集的資料一致性,必要時執行復原,以及促使資料的更新。

叢集檔案系統

叢集檔案系統是以下兩者間的代理:

叢集檔案系統依賴全域裝置 (磁碟、磁帶、CD-ROM)。全域裝置可以從叢集中的任何節點,使用相同檔案名稱 (例如 /dev/global/) 來存取。該節點無需有與儲存裝置的實體連線。您可以像使用一般裝置一樣使用全域裝置,亦即,您可以使用 newfsmkfs 在全域裝置上建立檔案系統。

叢集檔案系統具備下述功能:

可延伸的資料服務

叢集網路的主要目標是為資料服務提供可延伸性。可延伸性意味著,當服務的負載增加時,資料服務可以在一定時間內回應此增加的工作負荷量,以使新的節點可以加入叢集並且新的伺服器實例可以執行。可延伸資料服務的典型範例是網際網路服務。通常,可延伸資料服務是由許多實例所組成,每一個實例執行於叢集的不同節點上。這些實例一起對於該服務的遠端用戶端來說為單一服務,並實現該服務的功能。在不同節點上執行多個 httpd 常駐程式的可延伸 Web 服務,可以讓任何常駐程式處理用戶端要求。服務此項要求的常駐程式依賴平衡資料流量策略。對用戶端的回覆看上去是來自服務,而不是服務該要求的特定常駐程式,因此保留了單一服務的外觀。

下圖說明了可延伸服務的架構。

圖 3–3 可延伸資料服務的架構

圖例:在多個節點上執行的資料服務。

沒有放置整體介面的節點 (代理節點) 將共用位址放在其回送介面上。進入全域介面的資料封包會根據可配置平衡資料流量策略分配至其他叢集節點。可能的平衡資料流量策略說明如後。

平衡資料流量策略

平衡資料流量可以在回應時間及產量上增進可延伸服務的效能。

可延伸資料服務的類別有兩種:PureSticky。Pure 服務是任何實例均可回應用戶端要求的服務。Sticky 服務使叢集可以平衡節點要求的資料流量。那些要求不會重新導向至其他實例。

Pure 服務使用加權平衡資料流量策略。在此平衡資料流量策略下,依預設用戶端要求會平均地分配給叢集中的伺服器實例。例如,在每個節點權重均為 1 的三節點叢集中,每個節點代表該服務分別為來自任何用戶端的要求提供三分之一的服務。透過 scrgadm(1M) 指令介面或 SunPlex Manager GUI 可隨時變更權重。

Sticky 服務有兩種類型:Ordinary StickyWildcard Sticky。Sticky 服務允許在多個 TCP 連接上並行處理應用程式層次階段作業,以共用 in-state 記憶體 (應用程式階段作業狀態)。

Ordinary Sticky 服務允許用戶端共用多個並行 TCP 連接之間的狀態。用戶端被稱為「sticky」是因為該伺服器實例偵聽單一埠。只要該實例維持啟動與可存取的狀態,且當此服務處於線上狀態時,平衡資料流量策略未曾改變,即可保證用戶端的所有要求均會到達相同的伺服器實例。

Wildcard Sticky 服務使用動態指定的通訊埠編號,但是仍然希望用戶端要求會到達相同的節點。用戶端在同一 IP 位址的埠上呈現「Sticky Wildcard」。

多重主機磁碟儲存裝置

Sun Cluster 軟體利用多重主機磁碟儲存裝置 (一次可連線至多個節點) 使磁碟具有高度可用性。容體管理軟體可用於將這些磁碟分佈至由叢集節點控制的共用儲存裝置。然後,配置這些磁碟以在發生故障時移至其他節點。在 Sun Cluster 系統中使用多重主機磁碟可提供多種優勢,包括:

叢集交互連接

必須使用叢集互連 (透過至少兩個實體獨立的冗餘網路或路徑) 來連線所有節點,以避免單一故障點。冗餘需要兩個互連,但最多可使用六個互連分散流量,以避免通訊阻塞並改善冗餘功能和可延伸性。Sun Cluster 互連使用 Fast Ethernet、Gigabit-Ethernet、Sun Fire Link 或 Scalable Coherent Interface (SCI,IEEE 1596-1992),以進行高效能且叢集私有的通訊。

在叢集環境中,用於節點間通訊的高速、低延時互連及協定是必要的。Sun Cluster 系統中的 SCI 互連經由典型網路介面卡 (NIC) 提供改善的效能。Sun Cluster 將遠端共用記憶體 (RSMTM) 介面用於整個 Sun Fire Link 網路中節點間的通訊。RSM 是一個 Sun 訊息傳送介面,對於遠端記憶體作業效率很高。

遠端共用記憶體可靠資料報傳輸 (RSMRDT) 驅動程式由一個建立於 RSM API 上的驅動程式與一個匯出 RSMRDT-API 介面的程式庫組成。該驅動程式提供的 Oracle Parallel Server/Real Application Clusters 效能有所增強。該驅動程式內部直接提供有負載平衡與高可用性 (HA) 功能,因此這兩項功能也有所增強並且用戶端可以透明地使用這兩項功能。

叢集互連由以下硬體元件組成:

圖 3–4 顯示連線這三個元件的方式。

圖 3–4 叢集交互連接

圖例:由傳輸配接卡、電纜以及傳輸接點連線的兩個接點。

IP 網路多重路徑群組

可將公用網路配接卡組織到 IP 多重路徑群組 (多重路徑群組) 中。每個多重路徑群組均有一個或多個公用網路配接卡。多重路徑群組中的每個配接卡都可以處於作用中,或者您可以配置備用介面 (除非發生防故障備用,否則處於非作用中)。

多重路徑群組可提供邏輯主機名稱與共用位址資源的基礎。節點上的相同多重路徑群組可以擁有任意數目的邏輯主機名稱或共用位址資源。若要監視叢集節點的公用網路連線,您可建立多重路徑。

如需有關邏輯主機名稱和共用位址資源的更多資訊,請參閱「Sun Cluster Data Services Planning and Administration Guide for Solaris OS」

公用網路介面

用戶端透過公用網路介面連接至叢集。每一個網路配接卡可以連接至一或多個公用網路,這要根據配接卡是否有多重硬體介面而定。您可以設定節點來包含已配置的多重公用網路介面卡,以便多個配接卡均處於作用中,並且彼此作為防故障備用的備份。如果一個配接卡失敗,系統將呼叫 Sun Cluster 中的 Solaris 網際網路通訊協定 (IP) 網路多重路徑軟體,以將失敗的介面防故障備用至群組中的其他配接卡。