本小節透過一個簡單範例說明如何為 Sun Cluster 3.1 配置目前版本的 Messaging Server 之 HA 支援和 HA StoragePlus。
配置 HA 之後,請務必檢閱將 IP 位址連結至伺服器,以取得與 HA 支援相關的其他步驟。
下例假定已使用 HA 邏輯主機名稱和 IP 位址配置了郵件傳送伺服器。實體主機名稱假設為 mail-1 和 mail-2,HA 邏輯主機名稱假設為 budgie。圖 3–3 描繪了配置 Messaging Server HA 支援時建立的其他 HA 資源的巢式相依性。
成為超級使用者並開啟主控台。
以下所有 Sun Cluster 指令均要求您以超級使用者身份登入。您還需要有一個主控台或視窗來檢視輸出到 /dev/console 中的訊息。
新增必需的資源類型。
配置 Sun Cluster 以瞭解要使用的資源類型。可以使用 scrgadm -a -t 指令來完成此作業:
# scrgadm -a -t SUNW.HAStoragePlus # scrgadm -a -t SUNW.ims |
為 Messaging Server 建立一個資源群組:
如果尚未進行此作業,請建立一個資源群組,並使其顯示在將執行 Messaging Server 的叢集節點上。以下指令將建立名為 MAIL-RG 的資源群組,並使其顯示在 mail-1 和 mail-2 叢集節點上:
# scrgadm -a -g MAIL-RG -h mail-1,mail-2
當然,您可以依需要對資源群組使用任何名稱。
建立 HA 邏輯主機名稱資源並啟動資源群組。
如果尚未執行此作業,請為 HA 邏輯主機名稱建立並啟用資源,將其置於資源群組中。以下指令使用邏輯主機名稱 budgie 執行此作業。由於省略了 -j 切換,因此建立的資源名稱也將為 budgie。
# scrgadm -a -L -g MAIL-RG -l budgie # scswitch -Z -g MAIL-RG |
建立 HAStoragePlus 資源。
然後,您需要為 Messaging Server 所相依的檔案系統建立 HAStoragePlus 資源類型。以下指令將建立名為 disk-rs 的 HAStoragePlus 資源,並會將檔案系統 disk_sys_mount_point 置於其控制之下:
# scrgadm -a -j disk-rs -g MAIL-RG \ -t SUNW.HAStoragePlus \ -x ServicePaths=disk_sys_mount_point-1, disk_sys_mount_point-2 |
以逗號分隔的 ServicePaths 清單列出 Messaging Server 所相依的叢集檔案系統的掛載點。在以上範例中,僅指定了兩個掛載點 disk_sys_mount_point-1 和 disk_sys_mount_point-2。如果某台伺服器具有其所相依的附加檔案系統,則可以建立附加 HA 儲存資源,並在步驟 10 中指示附加相依性。
安裝和配置 Administration Server。
請參閱「Sun Java Enterprise System 2005Q4 安裝指南」,以取得相關說明。
指定完全合格的網域名稱後,請使用在步驟 4 中所建立的 HA 邏輯主機名稱。
安裝和配置 Messaging Server。請參閱建立初始 Messaging Server 執行階段配置
在初始執行階段配置中,要求您在建立初始 Messaging Server 執行階段配置時指定一個配置目錄。請務必使用 HAStoragePlus 資源的共用磁碟目錄路徑。
執行以下指令以在 Sun Cluster 中啟用 watcher 程序:
configutil -o local.autorestart -v 1 |
如需有關 watcher 程序的更多資訊,請參照自動重新啟動失敗或無回應的服務。
執行 ha_ip_config 程序檔以設定 service.listenaddr 和 service.http.smtphost,並配置 dispatcher.cnf 和 job_controller.cnf 檔案,從而實現高可用性。該程序檔可確保為這些參數和檔案設定邏輯 IP 位址而非實體 IP 位址。它還啟用 watcher 程序 (將 local.watcher.enable 設定為 1) 和 auto restart 程序 (將 local.auto.restart 設定為 1)。
如需有關執行該程序檔的說明,請參閱將 IP 位址連結至伺服器。
只能在擁有共用磁碟 (用於配置和資料) 的機器上執行一次 ha_ip_config 程序檔。
修改 imta.cnf 檔案,並用叢集的邏輯名稱替代所有的實體主機名稱。
建立一個 HA Messaging Server 資源。
現在應該建立 HA Messaging Server 資源,並將其增加至資源群組中。此資源依賴於 HA 邏輯主機名稱和 HA 磁碟資源。
建立 HA Messaging Server 資源過程時,我們需要指示至 Messaging Server 頂層目錄的路徑—msg_svr_base 的路徑。如以下指令所示,這些作業可使用 IMS_serverroot 延伸特性來完成。
# scrgadm -a -j mail-rs -t SUNW.ims -g MAIL-RG \ -x IMS_serverroot=msg_svr_base \ -y Resource_dependencies=disk-rs,budgie |
以上指令為 Messaging Server 建立了一個名為 mail-rs 的 HA Messaging Server 資源,該資源安裝在 msg_svr_base 目錄中的 IMS_serverroot 上。HA Messaging Server 資源依賴於 HA 磁碟資源 disk-rs 以及 HA 邏輯主機名稱 budgie。
如果 Messaging Server 具有附加檔案系統相依性,則可以為這些檔案系統建立附加 HA 儲存資源。請務必在上述指令的 Resource_dependencies 選項中包含該附加 HA 儲存資源名稱。
從 /etc/vfstab 檔案中移除字詞 global。啟動時,必須將 /etc/vbstab 設定為「no」。如需更多資訊,請參照 Sun Cluster 3.1 文件。
使用 HAStoragePlus 啟用 vfstab 檔案之前,可能要先 umount 目前為全域檔案系統的檔案系統。然後可以使用 HAStoragePlus 來啟用 vfstab 檔案,並重新掛載檔案系統。
啟用 Messaging Server 資源。
現在應該啟動 HA Messaging Server 資源,從而使 Messaging Server 處於線上。若要如此,請使用指令
# scswitch -e -j mail-rs
上述指令啟用 MAIL-RG 資源群組的 mail-rs 資源。由於 MAIL-RG 資源先前已處於線上,因此上述指令還會讓 mail-rs 處於線上。
驗證上述作業是否有作用。
使用 scstat 指令查看 MAIL-RG 資源群組是否在線上。您可能需要查看導向主控台裝置的輸出內容,以瞭解所有診斷資訊。另外,還需查看 syslog 檔案 /var/adm/messages。
將該資源群組故障轉移至另一個叢集節點,以確定故障轉移功能工作正常。
將該資源群組手動故障轉移至另一個叢集節點。(請確定您在進行容錯轉移的節點上具有超級使用者特權。)
使用 scstat 指令查看資源群組目前正在哪個節點上執行 (處於「線上」)。例如,如果該資源群組在 mail-1 上處於線上,則使用以下指令將其故障轉移至 mail-2:
# scswitch -z -g MAIL-RG -h mail-2
如果要升級第一個節點,則可以透過 Java Enterprise System 安裝程式安裝 Messaging Server,然後對其進行配置。然後容錯移轉至第二個節點,將透過 Java Enterprise System 安裝程式在此節點上安裝 Messaging Server 套裝軟體,但無需再次執行初始執行階段配置程式 (configure)。您可以改用 useconfig 公用程式。