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

控制與初始化回呼方法

主要控制與初始化回呼方法將啟動與停止資源。其他方法執行資源上的初始化程式碼與終止程式碼。

Start

當包含資源的資源群組在某個叢集節點上線運作時,將在該節點上呼叫此必需方法。這個方法將啟動該節點上的資源。

Start 方法啟動的資源已啟動並在本機節點上可用時,該方法才應結束。因此,在 Start 方法結束之前,應輪詢資源以確定資源已啟動。此外,您應為此方法設定足夠長的逾時值。例如,某些資源 (如資料庫常駐程式) 的啟動時間很長,因此需要該方法具有較長的逾時值。

RGM 回應 Start 方法故障的方式取決於 Failover_mode 特性的設定。

資源類型註冊檔案中的 START_TIMEOUT 特性設定資源的 Start 方法之逾時值。

Stop

當包含資源的資源群組在某個叢集節點上離線時,將在該節點上呼叫此必需方法。如果資源處於使用中狀態,則該方法將取消啟動資源。

Stop 方法應該在其控制的資源已完全停止了在本機節點上的所有活動並已關閉了所有檔案描述元後才結束。否則,由於 RGM 假定資源已停止,而實際上資源仍在作用中,可能導致資料毀壞。避免資料毀壞的最安全方法是終止與資源相關的本機節點上的所有程序。

Start 方法結束之前,應輪詢資源以決定資源已停止。此外,您應為此方法設定足夠長的逾時值。例如,某些資源 (如資料庫常駐程式) 的停止時間很長,因此需要該方法具有較長的逾時值。

RGM 回應 Stop 方法失敗的方式取決於 Failover_mode 特性的設定 (請參閱資源特性)。

資源類型註冊檔案中的 STOP_TIMEOUT 特性設定資源的 Stop 方法之逾時值。

Init

當資源處於受管理狀態時 (即資源所在的資源群組從未受管理狀態切換至受管理狀態時;或在已經受管理的資源群組中建立資源時),將呼叫此選用方法,以執行資源的一次性初始化。在 Init_nodes 資源特性決定的節點上呼叫該方法。

Fini

當資源成為不受管理狀態時,當資源所在的資源群組切換到未受管理狀態時,或當從受管理資源群組中刪除資源時,將呼叫此選擇性方法,以執行清除資源作業。在 Init_nodes 資源特性決定的節點上呼叫該方法。

Boot

將呼叫這個與 Init 相似的方法以初始化節點上的資源,這些節點在包含資源的資源群組已置於 RGM 的管理之下後加入叢集。在 Init_nodes 資源特性決定的節點上呼叫該方法。當節點由於啟動或重新啟動而連結或重新連結叢集時,將呼叫 Boot 方法。


注意 –

InitFiniBoot 方法的失敗將導致 syslog() 函式產生一條錯誤訊息,但不會另外影響資源的 RGM 管理。