Sun Cluster 資料服務開發者指南 (適用於 Solaris 作業系統)

實施可延伸資源

可延伸資源可以同時在多個節點上置於線上。可延伸資源包含資料服務,如用於 Sun Java System Web Server 的 Sun Cluster HA (以前為用於 Sun ONE Web Server 的 Sun Cluster HA) 和用於 Apache 的 Sun Cluster HA。

RGM 會提供許多支援實作可延伸資源的特性。

將布林值 Failover 資源類型特性設定為 FALSE,以允許在可以同時在多個節點上處於線上的資源群組中配置資源。

Scalable 資源特性將決定資源是否使用叢集共用的位址工具。將此特性設定為 TRUE,因為可延伸服務使用共用的位址資源以使可延伸服務的多個實例顯示為對客戶端的單一服務。

RG_mode 特性可讓叢集管理員識別資源群組為故障轉移資源群組或可延伸資源群組。如果 RG_modeSCALABLE,則 RGM 會允許 Maximum_primaries 具有大於 1 的值,也就是說群組可以由多個節點同時主控。RGM 允許在 RG_modeSCALABLE 的資源群組中創設 Failover 特性為 FALSE 的資源。

叢集管理員建立可延伸資源群組以含有可延伸服務資源,建立單獨的容錯移轉資源群組以含有可延伸的資源所附屬的共用位址資源。

叢集管理員使用 RG_dependencies 資源群組特性,指定在某節點上使資源群組上線或者離線所依據的順序。此排序對於可延伸服務很重要,這是因為可延伸資源與其所依賴的共用位址資源位於不同的資源群組中。可延伸資料服務要求其網路位址 (共用位址) 資源在啟動該資料服務之前已配置完成。因此,叢集管理員必須將 RG_dependencies 特性 (含有可延伸服務的資源群組之特性) 設定為包含含有共用的位址資源之資源群組。

當您在 RTR 檔案中宣告資源的 Scalable 特性時,RGM 會自動為資源建立以下可延伸特性集。

Network_resources_used

識別此資源使用的共用位址資源。此特性預設為空字串,因此叢集管理員必須在建立資源時提供可延伸服務使用的共用位址之實際清單。scsetup 指令和 SunPlex Manager 提供可自動設置可延伸服務之必備資源和群組之功能。

Load_balancing_policy

指定資源的負載平衡策略。您可以在 RTR 檔案中明確設定策略 (或允許預設值 LB_WEIGHTED)。在其他情況下,叢集管理員可以在建立資源時變更此值 (除非您在 RTR 檔案中將 Load_balancing_policyTunable 設定為 NONEFALSE)。以下為您可以使用的合法值︰

LB_WEIGHTED

負載是依照 Load_balancing_weights 特性中所設定的權重而在各節點中進行分配的。

LB_STICKY

總是將可延伸服務的給定用戶端 (由用戶端 IP 位址識別) 發送到叢集的同一個節點。

LB_STICKY_WILD

連接萬用字元 sticky 服務之 IP 位址的給定用戶端 (以用戶端的 IP 位址來識別) 始終被傳送到同一叢集節點,無論其目標通訊埠編號為何。

對於具有 LB_STICKYLB_STICKY_WILDLoad_balancing_policy 的可延伸服務,在服務處於線上時變更 Load_balancing_weights 可能導致重設現有的用戶端關聯性。在此情況下,即使叢集中的一個節點先前已服務過用戶端,其他節點也可能服務隨後的用戶端請求。

同樣地,在叢集上啟動服務的新實例可能會重設現有的用戶端關聯性。

Load_balancing_weights

指定要發送至每個節點的負載。其格式為 weight@node,weight@node,其中 weight 是一個整數,反映分配到指定的 node 之負載的相對部分。分配到節點的負載分數值,是此節點的權重除以使用中實例的權重總量。例如,1@1,3@2 指定節點 1 接收負載量的四分之一,節點 2 接收負載量的四分之三。

Port_list

識別伺服器要在其上進行偵聽的通訊埠。此特性預設為空字串。您可以在 RTR 檔案中提供通訊埠清單。否則,叢集管理員在建立資源時必須提供通訊埠的實際清單。

您可以建立可以由叢集管理員配置為可延伸或容錯移轉的資料服務。若要如此,請在資料服務的 RTR 檔案中宣告 Failover 資源類型特性和 Scalable 資源特性為 FALSE。指定 Scalable 特性在建立時可調。

Failover 特性值 FALSE 允許將資源配置到可延伸資源群組。叢集管理員可以在建立資源時透過將 Scalable 的值變更為 TRUE 來啟用共用位址,以建立可延伸服務。

另一方面,即使 Failover 設定為 FALSE,叢集管理員仍可將資源配置到容錯移轉資源群組,以實作容錯移轉服務。叢集管理員不變更 Scalable 的值 (為 FALSE)。若要支援此情形,您應該在 Scalable 特性上使用 Validate 方法進行檢查。如果 ScalableFALSE,請驗證資源是否已配置到容錯移轉資源群組。

「Sun Cluster 概念指南 (適用於 Solaris 作業系統)」含有有關可延伸資源的附加資訊。

可延伸服務的驗證檢查

每當使用設定為 TRUE 的可延伸特性建立或更新資源時,RGM 均會驗證各種資源特性。如果未正確配置特性,則 RGM 會拒絕所嘗試的更新或建立。RGM 執行下列檢查: