用於 Sun Java System Application Server 的 Sun Cluster 資料服務指南 (適用於 Solaris 作業系統)

調校 Sun Cluster HA for Sun Java System Application Server 的故障監視器

Sun Cluster HA for Sun Java System Application Server 支援的 8.1 版以後的版本 的 Domain Administration Server (DAS) 元件的故障監視器包含在其資源類型為 SUNW.jsas 的資源中。

資源類型的系統特性和延伸特性可以控制故障監視器的運作方式。這些特性的預設值可以決定故障監視器的預設運作方式。預設運作方式應適用於大部分 Sun Cluster 安裝。因此,您應在需要修改預設運作方式時調整故障監視器。

調校這些故障監視器包含以下作業:

請在註冊與配置 Sun Cluster HA for Sun Java System Application Server 時執行這些作業,如註冊與配置 Sun Cluster HA for Sun Java System Application Server 支援的 8.1 版以後的版本中所述。

如需有關這些作業的詳細資訊,請參閱「Sun Cluster Data Services Planning and Administration Guide for Solaris OS」中的「Tuning Fault Monitors for Sun Cluster Data Services」

本節提供以下資訊。

探測期間 DAS 元件的故障監視器執行的作業

Sun Cluster HA for Sun Java System Application Server 的 DAS 元件的故障監視器探測會向伺服器傳送請求,以查詢 Sun Java System Application Server 伺服器的運作狀態。故障監視器的作業取決於 Monitor_Uri_List 延伸特性的設定。

已設定 Monitor_Uri_List 特性時故障監視器執行的作業

當將 Monitor_Uri_List 延伸特性設定為單個 URI 或 URI 清單時,故障監視器探測會執行以下步驟。

  1. 故障監視器依照 Probe_timeout 資源特性設定的逾時值探測 Sun Java System Application Server 實例。

  2. 該探測將連線至 Sun Java System Application Server 伺服器並且執行 HTTP 1.1 GET 檢查,方法是傳送 HTTP 請求並接收對 Monitor_Uri_List 中每個 URI 的回應。

    每個 HTTP 請求的結果為失敗或成功。如果所有要求均成功收到來自 Sun Java System Application Server 伺服器的回覆,測試將返回並繼續進行下一個測試和休息循環。

    大量的網路通訊、沉重的系統負載以及配置錯誤均會導致 HTTP GET 探測失敗。如果 Monitor_Uri_List 中的 URI 包含不正確的連接埠或主機名稱,則 Monitor_Uri_List 特性的配置錯誤可能導致失敗。例如,如果應用程式伺服器實例正在偵聽邏輯主機 schost-1 並且 URI 指定為 http://schost-2/servlet/monitor,則探測將嘗試聯絡 schost-2 以請求 /servlet/monitor

  3. 如果未在 Probe_timeout 限制內收到探測的回應,探測將在歷史記錄中記錄失敗。測試會將此情況視為 Sun Java System Application Server 資料服務部分上的失敗。Sun Java System Application Server 測試失敗可以為完全失敗或部分失敗。

    如果在 Probe_timeout 限制內收到對探測的回覆,則系統將檢查 HTTP 回覆碼。如果回應代碼為 500 內部伺服器錯誤,則認為探測完全失敗。所有其他的回覆碼均被忽略。

    以下為完全探測失敗。

    • 連接至伺服器失敗時會收到以下錯誤訊息。%s 表示主機名稱,%d 表示連接埠編號。


      無法連線至主機 <%s> 與連接埠 <%d>。
      收到回應代碼為 500 內部伺服器錯誤,%s 探測的 HTTP GET
      回應代碼為 500。容錯移轉即將啟動
    • 將測試字串傳送至伺服器失敗時會收到以下錯誤訊息。第一個 %s 表示主機名稱,%d 表示連接埠編號,第二個 %s 表示有關錯誤的進一步詳細資訊。


      無法寫入伺服器:伺服器 %s 連接埠 %d: %s。
  4. 監視器將累積發生在 Retry_interval 資源特性設定中的部分失敗,直至其等同於完全失敗。

    以下為部分探測失敗:

    • 如果無法在 Probe_timeout 設定的時間之前取消連接時,則會收到以下錯誤訊息。%d 表示連接埠號碼,%s 表示資源名稱。


      無法從資源 %s 的連接埠 %d 斷開連線。
    • 無法在 Probe_timeout 時間內完成所有探測步驟為部分失敗。

    • 當由於其他原因無法從伺服器讀取資料時,會收到下列錯誤訊息。第一個 %s 表示主機名稱,%d 表示連接埠編號,第二個 %s 表示有關錯誤的進一步詳細資訊。


      無法與伺服器 %s 連接埠 %d 通訊:%s
  5. 根據失敗的歷史記錄和探測參數的設定,失敗可能導致本機重新啟動或資料服務的容錯移轉。

設定 Monitor_Uri_List 特性時故障監視器執行的作業

設定 Monitor_Uri_List 延伸特性時,故障監視器探測會執行以下步驟。

  1. 故障監視器依照 Probe_timeout 資源特性設定的逾時值探測 Sun Java System Application Server 實例。

  2. 探測使用 asadmin 指令以取得 Domain Administration Server (DAS) 的狀態,如下所示:


    $INSTALL_DIR/appserver/bin/asadmin list-domains --domaindir $DOMAIN_DIR

    設定了以下環境變數。

    • INSTALL_DIR 為使用 Confdir_list 延伸特性設定的安裝位置。

    • DOMAIN_DIR 為網域目錄的完整路徑。

    • DOMAIN_NAME 為網域名稱。

  3. 如果探測確定 DAS 未在執行,將發出完全失敗。

  4. 根據失敗的歷史記錄和探測參數的設定,失敗可能導致本機重新啟動或資料服務的容錯移轉。