一般而言,您可以在與 Application Server 相同的系統上安裝 HADB (同位拓樸),也可在獨立主機上安裝 HADB (獨立階層拓樸)。如需有關這兩個選項的更多資訊,請參閱「Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Deployment Planning Guide」中的第 3 章「Selecting a Topology」。但是,您必須安裝 HADB 管理用戶端,才能使用 asadmin ha-config-cluster 指令設定高可用性。當使用 Java Enterprise System 安裝程式時,即使節點要安裝在獨立階層上,您也必須安裝整個 HADB 實例才能安裝管理用戶端。
在單一 CPU 或雙 CPU 系統上,如果系統擁有至少 2 GB 的記憶體,則您可以同時安裝 HADB 和 Application Server。否則,請在獨立系統上安裝 HADB,或使用其他硬體。若要使用 asadmin ha-configure-cluster command,必須同時安裝 HADB 和 Application Server。
每個 HADB 節點需要 512 MB 的記憶體,因此機器需要 1 GB 的記憶體來執行兩個 HADB 節點。如果機器的記憶體不足,請將每個節點設定在不同機器上。例如,您可以在以下系統上安裝兩個節點︰
兩個單一 CPU 系統,每個具有 512 MB 至 1 GB 的記憶體
一個單一 CPU 或雙 CPU 系統,具有 1 GB 至 2 GB 的記憶體
您可以使用 Java Enterprise System 安裝程式或 Application Server 獨立安裝程式來安裝 HADB。在每個安裝程式中,從 [元件選取] 頁面中選擇要安裝 HADB (在 Java ES 中稱為高可用性階段作業儲存) 的選項。在您的主機上完成安裝。如果您使用 Application Server 獨立安裝程式,並選擇兩台獨立機器來執行 HADB,則必須在兩台機器上選擇相同的安裝目錄。
在本手冊中,HADB_install_dir 表示安裝 HADB 的目錄。預設安裝目錄取決於您是否將 HADB 做為 Java Enterprise System 的一部分進行安裝。對於 Java Enterprise System,預設安裝目錄為 /opt/SUNWhadb/4。對於獨立的應用程式伺服器安裝程式,預設安裝目錄為 /opt/SUNWappserver/hadb/4。
節點管理員程序 (NSUP) 透過彼此交換「I’m alive」訊息來確保 HADB 的可用性。NSUP 可執行檔必須具有超級使用者權限才能儘快回應。clu_nsup_srv 程序不會消耗大量的 CPU 資源,而且其佔用空間較小,因此,使用即時優先權執行該程序不會影響效能。
Java Enterprise System 安裝程式可自動正確設定 NSUP 權限,因此您無需採取進一步動作。但是,如果您使用獨立 Application Server (非超級使用者) 安裝程式,則必須在建立資料庫之前手動設定該權限。
如果 NSUP 可執行檔不具有適當的權限,您可能會注意到資源不足的徵兆,例如︰
效能問題或 HADB 歷程記錄中的 HIGH LOAD 訊息。
HADB 歷史檔案中顯示警告「程序已被阻斷 x 秒」,然後出現錯誤的網路分割以及節點重新啟動。
作業事件中斷和其他異常。
如果 NSUP 無法設定即時優先權,則 errno 在 Solaris 和 Linux 上被設定為 EPERM。在 Windows 上,會發出警告「無法設定即時優先權」。該錯誤會寫入 ma.log 檔案,並且程序會在沒有即時優先權的情況下繼續執行。
在以下情況中無法設定即時優先權︰
HADB 安裝在 Solaris 10 非全域區域中
在 Solaris 10 中撤銷 PRIV_PROC_LOCK_MEMORY (允許程序在實體記憶體中鎖定頁面) 和/或 PRIV_PROC_PRIOCNTL 權限
使用者關閉 setuid 權限
使用者將軟體做為 tar 檔案 (應用程式伺服器的非超級使用者安裝選項) 安裝