Sun Cluster 3.0 概念

公用網路管理 (PNM) 和網路配接卡失效保護 (NAFO)

用戶端透過公用網路來將要求送至叢集。每一個叢集節點透過公用網路配接卡至少連接到一個公用網路。

「Sun Cluster 公用網路管理 (PNM)」軟體提供監視公用網路配接卡、以及在偵測到失效時將 IP位址從某個配接卡移轉至另一個配接卡的基本機制。每一個叢集節點均擁有自己的 PNM 配置,這些配置可以和其它叢集節點上的 PNM 配置不同。

公用網路配接卡會組成 Network Adapter Failover groups (NAFO 群組)。 每一個 NAFO 群組均有一或多個公用網路配接卡。任何時候,針對指定的 NAFO 群組,只能一個配接卡為作用中,相同群組內的其它配接卡,則作為作用中配接卡上的 PNM 常駐程式偵測到錯誤而進行配接卡失效保護的備份配接卡。失效保護會令作用中配接卡相關的 IP 位址移到備份配接卡,因而保持了節點的公用網路連接性。因為失效保護是發生在配接卡介面層次,所以較高層次的連接 (如 TCP) 不受影響, 但是在失效保護期間的短暫延遲除外。


註解 -

因為 TCP 的壅塞回復特性,TCP 端點在失效保護成功之後可以承受更進一步的延遲,其中部份區段可能會在失效保護期間遺失,因而啟動 TCP 的壅塞控制機制。


NAFO 群組提供邏輯主機名稱和共用位址資源的建置區塊。如果有必要的話,scrgadm(1M) 指令會自動為您建立 NAFO 群組。您也可以另外建立邏輯主機名稱和共用位址資源的 NAFO 群組來 監視叢集節點的公用網路連接性。節點上的相同 NAFO 群組可以擁有任意數目的邏輯主機名稱或共用位址資源。 有關邏輯主機名稱和共用位址資源的其他資訊,請參閱 Sun Cluster 3.0 Data Services Installation and Configuration Guide


註解 -

NAFO 機制的設計是為了偵測和遮罩配接卡失效。其設計目的不是為了回復管理者使用 ifconfig(1M) 移除其中一個邏輯 (或共用) IP 位址的情形。Sun Cluster 設計將 邏輯和共用 IP 位址視為受 RGM 管理的資源。管理者增加或移除 IP 位址的正確方式,是使用 scrgadm(1M) 來修改包含資源的資源群組。


PNM 錯誤偵測和失效保護處理程序

PNM 定期檢查作用中配接卡的封包計數器,假設正常配接卡的封包計數器將會 因為正常網路流量通過配接卡而變更。如果封包計數器經過一段時間後並沒有變更, PNM 會進入 ping 序列,以強制流量通過作用中配接卡。 PNM 會在每次的序列結束時檢查封包計數器是否有任何變更,如果在重複幾次 ping 序列動作之後 封包計數器仍然不變,則宣告配接卡故障。只要有一個備份配接卡可以使用,這些事件會觸發失效保護以備份配接卡。

PNM 會監視輸入和輸出封包計數器,所以當任一或兩者的計數器有一段時間沒有變更時, 即會起始 ping 序列。

ping 序列包含測試 ALL_ROUTER 廣播位址 (224.0.0.2)、ALL_HOST 廣播位址 (224.0.0.1) 和 區域子網路廣播位址。

Ping 的結構,是以花費最少為優先考量的方式,所以如果有一個花費較少的 ping 成功時,花費較多的 ping 就不會執行。此外,ping 只是作為在配接卡上產生流量的方法。其退出狀態不會 作為配接卡是否為可運作或故障的決策。

此演算法中有四個可調參數:inactive_timeping_timeoutrepeat_testslow_network。這些參數提供了錯誤偵測的速度和正確性之間的取捨選擇。請參照 Sun Cluster 3.0 系統管理手冊 中變更公用網路參數和變更方法的程序。

在 NAFO 群組的作用配接卡上偵測到錯誤之後,如果無法使用備份配接卡,群組會宣告為 「當機 (DOWN)」,而所有其備份配接卡的測試會持續。否則,如果有備份配接卡可以使用,失效保護 會發生至備份配接卡。當故障的作用配接卡被關閉和停用時,邏輯位址與其關聯的旗號會「轉移」至備份配接卡。

當 IP 位址失效保護順利完成時,會送出無償式 ARP 廣播,所以可維持與遠程用戶端的連接。