Sun Java System Messaging Server 6.3 管理指南

3.4 Sun Cluster 安裝

本小節說明如何安裝 Messaging Server,並將其配置為 Sun Cluster 高可用性 (HA) 資料服務。本節包含以下主題:

另請參閱 Sun Cluster 文件。

請注意,Sun Cluster 3.1 支援 Veritas 檔案系統 (VxFS)。

3.4.1 Sun Cluster 的需求

本節假定以下情況:

3.4.2 關於 HAStoragePlus

極力建議您使用 HAStoragePlus 資源類型以使本機掛載的檔案系統在 Sun Cluster 環境中實現高可用性。本機檔案系統 (又稱為容錯移轉檔案系統 (FFS)) 提供比叢集檔案系統 (CFS,又稱為全域檔案系統) 更佳的輸入/輸出效能。HAStoragePlus 同時支援 FFS 和 CFS。相反地,HAStorage 僅支援 CFS。

HAStoragePlus 具有許多優勢:

若要確定在資料服務資源群組中建立 HAStorage 或 HAStoragePlus 資源,請考量下列條件:

如需有關 HAStoragePlus 的更多資訊,請參閱適當的 Sun Cluster 文件。例如,http://docs.sun.com/app/docs/coll/573.10

3.4.3 使用 Sun Cluster HAStorage 或 HAStoragePlus 配置 Messaging Server

本節說明如何為 Sun Cluster 的 Messaging Server 配置 HAStorage 和 HAStoragePlus。第一節說明一般步驟。後續小節說明對稱和非對稱部署的特定範例。

配置 HA 之後,請務必檢閱3.4.4 將 IP 位址連結至伺服器,以取得與 HA 支援相關的其他步驟。

下列說明假設已使用 HA 邏輯主機名稱和 IP 位址配置了 Messaging Server。實體主機名稱假設為 marsvenus,HA 邏輯主機名稱假設為 meadow圖 3–4 說明配置 Messaging Server HA 支援時所建立的其他 HA 資源之巢式相依性。


備註 –

除了說明如何配置 HAStorage 和 HAStoragePlus,也強烈建議您使用 HAStoragePlus 以達較佳的 I/O 效能。請參閱3.4.2 關於 HAStoragePlus


本節包含以下小節:

圖 3–4 簡易 Messaging ServerHA 配置

此影像說明了簡易 Messaging Server HA 配置。

Procedure使用 Sun Cluster HAStorage 或 HAStoragePlus 配置 Messaging Server—一般範例

本節提供配置 HA 的 Messaging Server 之一般步驟。檢閱這些步驟之後,請參閱以下小節的特定非對稱或對稱範例。在這些說明中,實體主機稱為 marsvenus。邏輯主機名稱為 meadow

圖 3–4 說明配置 Messaging Server HA 支援時所建立的其他 HA 資源之巢式相依性。

  1. 成為超級使用者並開啟主控台。

    以下所有 Sun Cluster 指令均要求您以超級使用者身份登入。您還需要有一個主控台或視窗來檢視輸出到 /dev/console 中的訊息。

  2. 在所有節點上,安裝所需的 Messaging Sun Cluster Data Service 代理程式套裝軟體 (SUNWscims)。

  3. 在每個叢集節點上,建立將執行 Messaging Server 的 Messaging Server 執行階段使用者與群組。

    使用者 ID 和群組 ID 號碼必須與叢集中所有節點上的 ID 號碼相同。執行階段使用者 ID是執行 Messaging Server 的使用者名稱。名稱不應是 root。預設值為 mailsrv執行階段群組 ID是執行 Messaging Server 的群組。預設值為 mail

    雖然 configure 公用程式能為您建立這些名稱,但是您也可以先建立名稱,再執行 configure 做為本章中所述之每個節點的準備部分。執行階段使用者和群組 ID 名稱必須位於下列檔案:

    • mailsrv 或您選取的名稱,必須位於叢集中所有節點上的 /etc/passwd

    • mail 或您選取的名稱,必須位於叢集中所有節點上的 /etc/group

    請參閱1.1 建立 UNIX 系統使用者和群組

  4. 將所需的資源類型加入 Sun Cluster。

    配置 Sun Cluster 以瞭解要使用的資源類型。若要註冊 Messaging Server 做為您的資源,請使用以下指令:


    # scrgadm -a -t SUNW.ims

    若要註冊 HAStoragePlus 做為資源類型,請使用此指令:


    # scrgadm -a -t SUNW.HAStoragePlus

    若要註冊 HAStorage 做為資源類型,請使用此指令:


    # scrgadm -a -t SUNW.HAStorage
  5. 為 Messaging Server 建立一個容錯移轉資源群組。

    如果尚未進行此作業,請建立一個資源群組,並使其顯示在將執行 Messaging Server 的叢集節點上。以下指令將建立名為 MAIL-RG 的資源群組,並使其顯示在 marsvenus 叢集節點上:

    # scrgadm -a -g MAIL-RG -h mars,venus

    當然,您可以依需要對資源群組使用任何名稱。

  6. 建立一個 HA 邏輯主機名稱資源並加以連線。

    如果尚未執行此作業,請為 HA 邏輯主機名稱建立並啟用資源,將其置於資源群組中。以下指令使用邏輯主機名稱 meadow 執行此作業。由於省略了 -j 參數,因此建立的資源名稱也將為 meadowmeadow 是用戶端用以與資源群組中的服務通訊之邏輯主機名稱。


    # scrgadm -a -L -g MAIL-RG -l meadow
    # scswitch -Z -g MAIL-RG
  7. 建立 HAStorage 或 HAStoragePlus 資源。

    然後,您需要為 Messaging Server 所相依的檔案系統建立 HA Storage 或 HAStoragePlus 資源類型。以下指令將建立名為 disk-rs 的 HAStoragePlus 資源,並會將檔案系統 disk_sys_mount_point 置於其控制之下:


    # scrgadm -a -j disk-rs -g MAIL-RG \
    -t SUNW.HAStoragePlus \
    -x FilesystemMountPoints=disk_sys_mount_point-1, disk_sys_mount_point-2 -x AffinityOn=True

    SUNW.HAStoragePlus 表示一或多個資料服務資源將使用的裝置群組、叢集與本機檔案系統。資料服務資源會將 SUNW.HAStoragePlus 類型的資源加入資源群組,並設定其他資源與 SUNW.HAStoragePlus 資源之間的相依性。這些相依性能確保資料服務資源在符合下列條件時能進行連線:

    • 所有指定的裝置服務皆可使用 (並視需要組合)

    • 所有指定的檔案系統在檢查後皆已掛載

    FilesystemMountPoints 延伸特性可使用全域或本機檔案系統規格。亦即,檔案系統可從叢集的所有節點或從單一叢集節點進行存取。SUNW.HAStoragePlus 資源所管理的本機檔案系統會掛載於單一叢集節點上,且基礎裝置必須是 Sun Cluster 全域裝置。指定本機檔案系統的 SUNW.HAStoragePlus 資源可以僅屬於已啟用相似性切換的容錯移轉資源群組。因此,這些本機檔案系統可稱為容錯移轉檔案系統。本機和全域檔案系統掛載點可同時進行指定。

    如果檔案系統的 /etc/vfstab 項目符合下列兩項條件,其掛載點顯示在 FilesystemMountPoints 延伸特性的檔案系統即會是本機檔案系統:

    • 非全域掛載選項

    • [Mount at boot (開機時掛載)] 旗標會設定為 no


    備註 –

    SUNW.HAStoragePlus 資源類型的實例會忽略全域檔案系統的 [mount at boot (開機時掛載)] 旗標。


    若是 HAStoragePlus 資源,以逗號分隔的 FilesystemMountPoints 清單會列出 Messaging Server 所相依的叢集檔案系統 (CFS) 或容錯移轉檔案系統 (FFS) 之掛載點。在以上範例中,僅指定了兩個掛載點 disk_sys_mount_point-1 disk_sys_mount_point-2。如果某台伺服器具有其所相依的附加檔案系統,則可以建立附加 HA 儲存資源,並在步驟 15 中指示此附加相依性。

    若是 HAStorage,請使用:


    # scrgadm -a -j disk-rs -g MAIL-RG \
    -t SUNW.HAStorage
    -x ServicePaths=disk_sys_mount_point-1, disk_sys_mount_point-2 -x AffinityOn=True

    若是 HAStorage 資源,以逗號分隔的 ServicePaths 清單會列出 Messaging Server 所相依的叢集檔案系統之掛載點。在以上範例中,僅指定了兩個掛載點 disk_sys_mount_point-1disk_sys_mount_point-2。如果某台伺服器具有其所相依的附加檔案系統,則可以建立附加 HA 儲存資源,並在步驟 15 中指示此附加相依性。

  8. 在主節點上安裝所需的 Messaging Server 套裝軟體。選擇 [Configure Later] 選項。

    使用 Communications Suite 安裝程式安裝 Messaging Server 套裝軟體。

    對稱部署:在 Sun Cluster 的共用磁碟掛載之檔案系統上安裝 Messaging Server 二進位檔案和配置資料。例如,Messaging Server 二進位檔案可能在 /disk_sys_mount_point-1/SUNWmsgsr 下,而配置資料可能在 /disk_sys_mount_point-2/config 下。

    非對稱部署:在 Sun Cluster 的每個節點之本機檔案系統上安裝 Messaging Server 二進位檔案。在共用磁碟上安裝配置資料。例如,配置資料可能在 /disk_sys_mount_point-2/config 下。

  9. 配置 Messaging Server。請參閱1.3 建立初始 Messaging Server 執行階段配置

    在初始執行階段配置中,會要求您提供完全合格的主機名稱。您必須使用 HA 邏輯主機名稱,而不是實體主機名稱。

    在初始執行階段配置期間,於1.3 建立初始 Messaging Server 執行階段配置中會要求您指定一個配置目錄。請務必使用 HAStorage 或 HAStoragePlus 資源的共用磁碟目錄路徑。

  10. 執行 ha_ip_config 程序檔以設定 service.listenaddrservice.http.smtphost,並配置 dispatcher.cnfjob_controller.cnf 檔案,從而實現高可用性。

    該程序檔可確保為這些參數和檔案設定邏輯 IP 位址而非實體 IP 位址。它還會啟用 watcher 程序 (將 local.watcher.enable 設定為 1) 和 auto restart 程序 (將 local.autorestart 設定為 1)。

    如需有關執行該程序檔的說明,請參閱3.4.4 將 IP 位址連結至伺服器

    只能在主節點上執行一次 ha_ip_config 程序檔。

  11. 修改 imta.cnf 檔案,並以叢集的邏輯主機名稱替代所有的實體主機名稱。

  12. 將資源群組從主叢集節點容錯移轉至輔助叢集節點,以確定容錯移轉功能運作正常。

    將該資源群組容錯移轉至另一個叢集節點。(請確定您在進行容錯移轉的節點上,具有超級使用者特權。)

    使用 scstat 指令,查看資源群組目前正執行於哪個節點上 (處於「線上」)。例如,如果該資源群組在 mars 上處於線上狀態,則使用以下指令將其容錯移轉至 venus:

    # scswitch -z -g MAIL-RG -h venus

    如果要升級第一個節點,則可以透過 Communications Suite 安裝程式 安裝 Messaging Server,然後對其進行配置。然後容錯移轉至第二個節點,透過 Communications Suite 安裝程式 在此節點上安裝 Messaging Server 套裝軟體,但無需再次執行初始執行階段配置程式 (configure)。您可以改用 useconfig 公用程式。

  13. 在輔助節點上安裝所需的 Messaging Server 套裝軟體。選擇 [Configure Later] 選項。

    在容錯移轉至第二個節點之後,使用 Communications Suite 安裝程式安裝 Messaging Server 套裝軟體。

    對稱部署:請勿安裝 Messaging Server。

    非對稱部署:在本機檔案系統的所有本機檔案系統上安裝 Messaging Server 二進位檔案。

  14. 在叢集的第二個節點上執行 useconfig

    useconfig 公用程式可讓您在 HA 環境中的多個節點之間共用單一配置。您無須執行初始執行階段配置程式 (configure)。而請改用 useconfig 公用程式 (請參閱3.3.3 使用 useconfig 公用程式)。

  15. 建立一個 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,meadow

    以上指令會為 Messaging Server 建立一個名為 mail-rs 的 HA Messaging Server 資源,該資源安裝在 msg-svr-base 目錄中的 IMS_serverroot 上。HA Messaging Server 資源依賴於 HA 磁碟資源 disk-rs 以及 HA 邏輯主機名稱 meadow

    如果 Messaging Server 具有附加檔案系統相依性,則可以為這些檔案系統建立附加 HA 儲存資源。請務必在上述指令的 Resource_dependencies 選項中包含該附加 HA 儲存資源名稱。

  16. 啟用 Messaging Server 資源。

    現在應該啟動 HA Messaging Server 資源,從而使 Messaging Server 處於線上。若要如此,請使用指令

    # scswitch -e -j mail-rs

    上述指令可啟用 MAIL-RG 資源群組的 mail-rs 資源。由於 MAIL-RG 資源先前已處於線上狀態,因此上述指令還會讓 mail-rs 處於線上狀態。

  17. 驗證上述作業是否有作用。

    使用 scstat -pvv 指令,查看 MAIL-RG 資源群組是否在線上。

    您也可能想要查看導向至主控台裝置的輸出內容,以瞭解所有診斷資訊。另外,還要查看 syslog 檔案 /var/adm/messages。如需更多除錯選項與資訊,請參閱3.4.3.1 如何在 Sun Cluster 上啟用除錯功能

Procedure取消配置 Sun Cluster 3.x 的 Messaging Server HA 支援—一般範例

本小節說明如何還原 Sun Cluster 的 HA 配置。本小節假設簡易範例配置 (3.4 Sun Cluster 安裝中有所說明,例如步驟 3) 可能有所不同,但仍將遵循同一邏輯順序。

  1. 成為超級使用者。

    以下所有 Sun Cluster 指令都要求您以超級使用者身份執行。

  2. 使資源群組離線。

    若要關閉資源群組中所有的資源,請發出以下指令

    # scswitch -F -g MAIL-RG

    這將關閉資源群組內的所有資源 (例如,Messaging Server 和 HA 邏輯主機名稱)。

  3. 停用各個資源。

    接著,使用以下指令從資源群組中逐一移除資源:


    # scswitch -n -j mail-rs
    # scswitch -n -j disk-rs
    # scswitch -n -j budgie
    
  4. 從資源群組中移除各個資源。

    停用資源後您可以使用以下指令從資源群組中逐一移除資源


    # scrgadm -r -j mail-rs
    # scrgadm -r -j disk-rs
    # scrgadm -r -j budgie
    
  5. 移除資源群組。

    從資源群組中移除所有資源後可以使用以下指令移除資源群組本身:

    # scrgadm -r -g MAIL-RG

  6. 移除資源類型 (可選擇)。

    如果需要從叢集中移除資源類型,請發出以下指令:


    # scrgadm -r -t SUNW.ims
    # scrgadm -r -t SUNW.HAStoragePlus
    

Procedure配置雙節點對稱 Messaging Server—範例

此範例假設有兩個叢集節點,其實體主機名稱分別為 mars.red.siroe.comvenus.red.siroe.com。其安裝與配置目錄位置必須是唯一的位置。如果在每個節點上的安裝與配置目錄有相同的目錄名稱 (例如 /opt/SUNWmsgsr 和 /var/opt/SUNWmsgsr),則會發生競爭的問題。競爭問題會在 venus 確實容錯移轉至 mars 時發生,且此二 Messaging Server 實例會爭用相同的安裝與配置目錄。

較好的用法是,針對安裝目錄使用 /opt/NodeMember /SUNWmsgsr 格式;針對配置目錄使用 /var/opt/NodeMember/SUNWmsgsr 格式,建立唯一的安裝與配置目錄名稱。只要目錄有唯一的名稱,便可以使用任何目錄安裝二進位檔案與配置資料。

此範例假設有兩個叢集節點,其實體主機名稱分別為 mars.red.siroe.comvenus.red.siroe.com

mars.red.siroe.com 的二進位檔案會安裝在 /opt/mars/SUNWmsgsr,配置資料會安裝在 /var/opt/mars/SUNWmsgsr

venus.red.siroe.com 的二進位檔案會安裝在 /opt/venus/SUNWmsgsr,配置資料會安裝在 /var/opt/venus/SUNWmsgsr

我們會有兩個邏輯主機名稱 meadowpasture,及其各自的邏輯 IP 位址。例如,在兩個節點上的 /etc/hosts 檔案會如下所示:


192.18.75.155 meadow.red.siroe.com meadow 
192.18.75.157 pasture.red.siroe.com pasture
  1. 在兩個節點上安裝 Messaging Server Sun Cluster 代理程式套裝軟體 (SUNWscims)。

  2. 建立四個檔案系統。

    這些檔案系統可以是叢集檔案系統或本機檔案系統 (容錯移轉檔案系統)。


    /var/opt/mars/SUNWmsgsr
    /var/opt/venus/SUNWmsgsr
    /opt/mars/SUNWmsgsr
    /opt/venus/SUNWmsgsr

    這些檔案系統應掛載於共用磁碟上。以下範例顯示四個叢集檔案系統。以下顯示的 /etc/vfstab 內容在叢集的所有節點上都應相當類似。


    # cat /etc/vfstab
    #device  device  mount  FS  fsck  mount  mount  to  mount  to  fsck  point  type 
    pass at_boot_options
    /dev/md/penguin/dsk/d500 /dev/md/penguin/rdsk/d500 /opt/mars/SUNWmsgsr ufs 2 yes 
    logging,global
    /dev/md/penguin/dsk/d400 /dev/md/penguin/rdsk/d400 /var/opt/mars/SUNWmsgsr ufs 2 
    yes logging,global
    /dev/md/polarbear/dsk/d200 /dev/md/polarbear/rdsk/d200 /opt/venus/SUNWmsgsr ufs 2 
    yes  logging,global
    /dev/md/polarbear/dsk/d300 /dev/md/polarbear/rdsk/d300 /var/opt/venus/SUNWmsgsr 
    ufs 2 yes logging,global

    若要將上述四個檔案系統用做本機檔案系統 (容錯移轉檔案系統),請將 [mount at boot (開機時掛載)] 選項設定為 [no],並移除掛載選項 global 關鍵字:


    
    
  3. 配置主節點

    1. 在主節點上增加所需的資源類型。

      如此會配置 Sun Cluster 以瞭解要使用的資源類型。若要註冊 Messaging Server 和 HAStoragePlus 資源,請使用下列指令:


      # scrgadm -a -t SUNW.HAStoragePlus
      # scrgadm -a -t SUNW.ims 
    2. 為 Messaging Server 建立名為 MS_RG_MARS 的容錯移轉資源群組。


      # scrgadm -a -g MS_RG_MARS -h mars,venus
    3. 建立名為 meadow 的邏輯主機名稱資源,並加入資源群組以進行連線。


      # scrgadm -a -L -g MS_RG_MARS -l meadow
      # scrgadm -c -j meadow -y R_description="LogicalHostname resource for meadow"
      # scswitch -Z -g MS_RG_MARS
    4. 利用先前建立的檔案系統,建立名為 ms-hasp-mars 的 HAStoragePlus 資源。


      # scrgadm -a -j ms-hasp-mars -g MS_RG_MARS -t SUNW.HAStoragePlus -x 
      FileSystemMountPoints ="/opt/mars/SUNWmsgsr, /var/opt/mars/SUNWmsgsr" -x 
      AffinityOn=TRUE
    5. 啟用 HAStoragePlus 資源:


      # scswitch -e -j ms-hasp-mars
  4. 在主節點上安裝 Messaging Server。

    使用 Communications Suite 安裝程式安裝 Messaging Server 套裝軟體。確認已在共用檔案系統上安裝有 Messaging Server 二進位檔案和配置資料 (請參閱步驟 2)。例如,此 Messaging Server 實例的郵件傳送二進位檔案會在 /opt/mars/SUNWmsgsr 下,而配置資料會在 /var/opt/mars/SUNWmsgsr 下。

  5. 在主節點上安裝與配置 Messaging Server (請參閱1.3 建立初始 Messaging Server 執行階段配置)。

    初始執行階段配置程式會要求您提供完全合格的主機名稱。請輸入邏輯主機名稱 meadow.red.siroe.com。此程式也會要求您指定配置目錄。請輸入 /var/opt/mars/SUNWmsgsr

  6. 在主節點上執行 ha_ip_config 程序檔,並提供邏輯 IP 位址。

    它僅會執行於主節點上,而不會執行於輔助節點上。ha_ip_config 程序檔位於 sbin 目錄的安裝目錄下。例如:


    # /opt/mars/SUNWmsgsr/sbin/ha_ip_config
    
    Please specify the IP address assigned to the HA logical host name. 
    Use dotted decimal form, a.b.c.d
    
    Logical IP address: 192.18.75.155 
    # This value is the logical IP address of the logical hostname. Refer 
    # to the /etc/hosts file.
    Please specify the path to the top level directory in which iMS is
    installed.
    
    iMS server root: /opt/mars/SUNWmsgsr
    
    . . . 
    
    Updating the file /opt/mars/SUNWmsgsr/config/dispatcher.cnf
    Updating the file /opt/mars/SUNWmsgsr/config/job_controller.cnf
    Setting the service.listenaddr configutil parameter
    Setting the local.snmp.listenaddr configutil parameter
    Setting the service.http.smtphost configutil parameter
    Setting the local.watcher.enable configutil parameter
    Setting the local.autorestart configutil parameter
    Setting the metermaid.config.bindaddr configutil parameters
    Setting the metermaid.config.serveraddr configutil parameters
    Setting the local.ens.port parameter
    Configuration successfully updated
  7. 修改 imta.cnf 檔案,並利用 HA 邏輯主機名稱 (meadow) 替代所有的實體主機名稱 (mars)。

  8. 將資源群組容錯移轉至輔助節點 (venus)。

    容錯移轉之後,接著要配置輔助節點 (venus)。


    # scswitch -z -g MS_RG_VENUS -h mars
  9. 在輔助節點 (venus) 上執行 useconfig 公用程式。請參閱3.3.3 使用 useconfig 公用程式

    您無須執行初始執行階段配置程式 (configure) 或安裝 Messaging Server 套裝軟體。

    在下例中,/var/opt/mars/SUNWmsgsr 是共用的配置目錄。


    # useconfig /var/opt/mars/SUNWmsgsr/setup/configure_20061201124116
    cp /var/opt/mars/SUNWmsgsr/setup/configure_20061201124116/Devsetup.properties
    /opt/mars/SUNWmsgsr/lib/config-templates/Devsetup.properties
    /usr/sbin/groupadd mail
    /usr/sbin/useradd -g mail -d / mailsrv
    /usr/sbin/usermod -G mail mailsrv
    sed -e "s/local.serveruid/mailsrv/" -e "s/local.serveruid/mail/" -e "s:<msg·RootPath>:/opt/mars/SUNWmsgsr:" 
    /opt/mars/SUNWmsgsr/lib/config-templates/devtypes.txt.template > 
    /opt/mars/SUNWmsgsr/lib/config-templates/devtypes.txt
    sed -e "s/local.serveruid/mailsrv/" -e "s/local.serveruid/mail/" -e 
    "s:<msg·RootPath>:/opt/mars/SUNWmsgsr:" 
    /opt/mars/SUNWmsgsr/lib/config-templates/config.ins.template > 
    /opt/mars/SUNWmsgsr/lib/config-templates/config.ins
    /opt/mars/SUNWmsgsr/lib/devinstall -l sepadmsvr:pkgcfg:config -v -m -i 
    /opt/mars/SUNWmsgsr/lib/config-templates/config.ins 
    /opt/mars/SUNWmsgsr/lib/config-templates 
    /opt/mars/SUNWmsgsr/lib/jars /opt/mars/SUNWmsgsr/lib
    devinstall returned 0
    crle -c /var/ld/ld.config -s
     /usr/lib/secure:/opt/SUNWmsgsr/lib:/opt/venus/SUNWmsgsr/lib:/opt/mars/SUNWmsgsr/lib 
    -s /opt/mars/SUNWmsgsr/lib
    See /opt/mars/SUNWmsgsr/install/useconfiglog_20061211155037 for more details
  10. 建立 HA Messaging Server 資源,並加以啟用。


    # scrgadm -a -j ms-rs-mars -t SUNW.ims -g MS_RG_MARS -x IMS_serverroot 
    =/opt/mars/SUNWmsgsr -y Resource_dependencies=meadow,ms-hasp-mars
    # scswitch -e -j mail-rs-mars

    上述指令會為 Messaging Server (安裝在 /opt/mars/SUNWmsgsr 中) 建立名為 ms-rs-mars 的 HA Messaging Server 資源。此 HA Messaging Server 資源依賴於 HA 磁碟資源 (亦即先前建立的檔案系統) 以及 HA 邏輯主機名稱 meadow

  11. 確認一切運作正常。

    將 Messaging Server 資源容錯移轉回主節點。


     # scswitch -z -g MAIL-RG -h mars
  12. 同樣地,以 venus 做為主節點,而將 mars 做為輔助節點 (或待命節點),為 Messaging Server 的第二項實例建立另一個容錯移轉資源群組。

    venus 做為此資源群組的主節點、MS_RG_VENUS 做為資源群組、pasture 做為邏輯主機名稱以及 ms-hasp-venus 做為 HAStoragePlus 資源,重複步驟 3 到步驟 10。因此,指令將應如下所示:

    若要建立資源群組 MS_RG_VENUS


    # scrgadm -a -g MS_RG_VENUS -h venus,mars

    若要建立名為 pasture 的邏輯主機名稱資源,請將其加入資源群組並進行連線:


    # scrgadm -a -L -g MS_RG_VENUS -l pasture
    # scrgadm -c -j pasture -y R_description="LogicalHostname resource for pasture"
    # scswitch -Z -g MS_RG_VENUS

    若要以先前建立的檔案系統建立名為 ms-hasp-venus 的 HAStoragePlus 資源:


    # scrgadm -a -j ms-hasp-venus -g MS_RG_VENUS -t SUNW.HAStoragePlus -x 
    FileSystemMountPoints ="/opt/venus/SUNWmsgsr, /var/opt/venus/SUNWmsgsr" -x 
    AffinityOn=TRUE

    若要啟用 HAStoragePlus 資源:


    # scswitch -e -j ms-hasp-venus

    若要在主節點上執行 ha_ip_config 程序檔並提供邏輯 IP 位址:


    # /opt/venus/SUNWmsgsr/sbin/ha_ip_config

    若要建立 HA Messaging Server 資源並加以啟用:


    # scrgadm -a -j ms-rs-venus -t SUNW.ims -g MS_RG_VENUS -x IMS_serverroot 
    =/opt/venus/SUNWmsgsr -y Resource_dependencies=pasture,ms-hasp-venus
    # scswitch -e -j mail-rs-venus

    若要將資源群組容錯移轉至輔助節點 (venus):


    # scswitch -z -g MS_RG_MARS -h venus

    若要在輔助節點 (mars) 上執行 useconfig (執行 useconfig 公用程式):


    # useconfig /var/opt/venus/SUNWmsgsr/setup/configure_20061201124116

    若要透過將 Messaging Server 資源容錯移轉回主節點以驗證一切運作正常:


     # scswitch -z -g MAIL-RG -h venus

Procedure取消配置 HA 對稱部署

當您需要升級 Messaging Server 或 Sun Cluster,或者當您需要解除安裝 Messaging Server 時,會執行取消配置。假設系統使用上例進行配置。

第一步是移除叢集中的每個資源群組。此範例有兩個資源群組 MS_RG_MARSMS_RG_VENUS。兩者皆須移除。

  1. 從叢集移除資源群組 MS_RG_MARS

    僅在一個節點上使用下列指令。您無須在每個節點上執行此作業。

    1. 中斷叢集之所有節點上資源群組的連線:


      # scswitch -F -g MS_RG_MARS
    2. 停用所有特定的 Messaging Server 資源:


      # scswitch -n -j ms-rs-mars
      # scswitch -n -j meadow
      # scswitch -n -j ms-hasp-mars
    3. 移除所有特定的 MS 資源:


      # scrgadm -r -j ms-rs-mars
      # scrgadm -r -j meadow
      # scrgadm -r -j ms-hasp-mars
    4. 移除資源群組:


      scrgadm -r -g MS_RG_MARS
  2. 從叢集移除資源群組 MS_RG_VENUS

    僅在一個節點上使用下列指令。您無須在每個節點上執行此作業。

    1. 中斷叢集之所有節點上資源群組的連線:


      # scswitch -F -g MS_RG_VENUS
    2. 停用所有特定的 Messaging Server 資源:


      # scswitch -n -j ms-rs-venus 
      # scswitch -n -j pasture
      # scswitch -n -j ms-hasp-venus
    3. 移除所有特定的 MS 資源:


      # scrgadm -r -j ms-rs-venus
      # scrgadm -r -j pasture
      # scrgadm -r -j ms-hasp-venus
    4. 移除資源群組:


      scrgadm -r -g MS_RG_VENUS
  3. 取消註冊未使用的資源類型。


    # scrgadm -r -t SUNW.HAStoragePlus
    # scrgadm -r -t SUNW.ims

Procedure配置雙節點 HA 非對稱 Messaging Server—範例

此範例假設有兩個叢集節點,分別有名為 daisy.red.siroe.comlavender.red.siroe.com 的實體主機名稱,並共用一個稱為 budgie 的邏輯主機名稱。

daisy.red.siroe.com 的二進位檔案會安裝在 /opt/SUNWmsgsr,配置資料會安裝在 /var/opt/SUNWmsgsr

邏輯主機名稱 budgie 是指定的邏輯 IP 位址。例如,/etc/hosts 檔案應會如下所示:


192.18.75.157 budgie.red.siroe.com budgie
  1. 在兩個節點上安裝 Messaging Sun Cluster 代理程式 (SUNWscims)。

  2. 建立檔案系統。

    在此範例中,檔案系統 /var/opt/SUNWmsgsr 掛載於共用磁碟上。檔案系統可以是叢集檔案系統或本機檔案系統 (容錯移轉檔案系統)。

  3. 配置主節點 (daisy)。

    1. 在主節點上增加所需的資源類型。

      如此會配置 Sun Cluster 以瞭解要使用的資源類型。若要註冊 Messaging Server 和 HAStoragePlus 資源,請使用下列指令:


      # scrgadm -a -t SUNW.HAStoragePlus
      # scrgadm -a -t SUNW.ims 
    2. 為 Messaging Server 實例建立名為 MS_RG_DAISY 的資源群組。


      # scrgadm -a -g MS_RG_daisy -h daisy,lavender
    3. 建立名為 meadow 的邏輯主機名稱資源,並加入資源群組以進行連線。


      # scrgadm -a -L -g MS_RG_DAISY -l meadow
      # scrgadm -c -j meadow -y R_description="LogicalHostname resource for meadow"
      # scswitch -Z -g MS_RG_DAISY
    4. 利用先前建立的檔案系統,建立名為 ms-hasp-daisy 的 HAStoragePlus 資源。


      # scrgadm -a -j ms-hasp-daisy -g MS_RG_DAISY -t SUNW.HAStoragePlus -x 
      FileSystemMountPoints ="/var/opt/SUNWmsgsr" -x 
      AffinityOn=TRUE
    5. 啟用 HAStoragePlus 資源:


      # scswitch -e -j ms-hasp-daisy
  4. 在主節點上安裝與配置 Messaging Server (請參閱1.3 建立初始 Messaging Server 執行階段配置)。

    初始執行階段配置程式會要求您提供完全合格的主機名稱。請輸入邏輯主機名稱 meadow.red.siroe.com。此程式也會要求您指定配置目錄。請輸入 /var/opt/SUNWmsgsr

  5. 在主節點上執行 ha_ip_config 程序檔,並提供邏輯 IP 位址。

    它僅會執行於主節點上,而不會執行於輔助節點上。ha_ip_config 程序檔位於 sbin 目錄的安裝目錄下。例如:


    # /opt/SUNWmsgsr/sbin/ha_ip_config
    
    Please specify the IP address assigned to the HA logical host name. 
    Use dotted decimal form, a.b.c.d
    
    Logical IP address: 192.18.75.155 
    # This value is the logical IP address of the logical hostname. Refer 
    # to the /etc/hosts file.
    Please specify the path to the top level directory in which iMS is
    installed.
    
    iMS server root: /opt/SUNWmsgsr
    
    . . . 
    
    Updating the file /opt/SUNWmsgsr/config/dispatcher.cnf
    Updating the file /opt/SUNWmsgsr/config/job_controller.cnf
    Setting the service.listenaddr configutil parameter
    Setting the local.snmp.listenaddr configutil parameter
    Setting the service.http.smtphost configutil parameter
    Setting the local.watcher.enable configutil parameter
    Setting the local.autorestart configutil parameter
    Setting the metermaid.config.bindaddr configutil parameters
    Setting the metermaid.config.serveraddr configutil parameters
    Setting the local.ens.port parameter
    Configuration successfully updated
  6. 修改 imta.cnf 檔案,並利用 HA 邏輯主機名稱 (meadow) 替代所有的實體主機名稱 (daisy)。

  7. 將資源群組容錯移轉至輔助節點 (lavender )。

    容錯移轉之後,接著要配置輔助節點 (lavender)。


    # scswitch -z -g MS_RG_LAVENDER -h daisy
  8. 在輔助節點 (lavender) 上安裝 Messaging Server,並執行 useconfig 公用程式。請參閱3.3.3 使用 useconfig 公用程式

    您無須執行初始執行階段配置程式 (configure)。

    在下例中,/var/opt/SUNWmsgsr 是共用的配置目錄。


    # useconfig /var/opt/SUNWmsgsr/setup/configure_20061201124116
    cp /var/opt/SUNWmsgsr/setup/configure_20061201124116/Devsetup.properties
    /opt/SUNWmsgsr/lib/config-templates/Devsetup.properties
    /usr/sbin/groupadd mail
    /usr/sbin/useradd -g mail -d / mailsrv
    /usr/sbin/usermod -G mail mailsrv
    sed -e "s/local.serveruid/mailsrv/" -e "s/local.serveruid/mail/" -e "s:<msg·RootPath>:/opt/SUNWmsgsr:" 
    /opt/SUNWmsgsr/lib/config-templates/devtypes.txt.template > 
    /opt/SUNWmsgsr/lib/config-templates/devtypes.txt
    sed -e "s/local.serveruid/mailsrv/" -e "s/local.serveruid/mail/" -e 
    "s:<msg·RootPath>:/opt/SUNWmsgsr:" 
    /opt//SUNWmsgsr/lib/config-templates/config.ins.template > 
    /opt/SUNWmsgsr/lib/config-templates/config.ins
    /opt/SUNWmsgsr/lib/devinstall -l sepadmsvr:pkgcfg:config -v -m -i 
    /opt/SUNWmsgsr/lib/config-templates/config.ins 
    /opt/SUNWmsgsr/lib/config-templates 
    /opt/SUNWmsgsr/lib/jars /opt/SUNWmsgsr/lib
    devinstall returned 0
    crle -c /var/ld/ld.config -s
     /usr/lib/secure:/opt/SUNWmsgsr/lib:/opt/SUNWmsgsr/lib:/opt/SUNWmsgsr/lib 
    -s /opt/SUNWmsgsr/lib
    See /opt/SUNWmsgsr/install/useconfiglog_20061211155037 for more details
  9. 建立 HA Messaging Server 資源,並加以啟用。


    # scrgadm -a -j ms-rs-daisy -t SUNW.ims -g MS_RG_DAISY -x IMS_serverroot 
    =/opt/SUNWmsgsr -y Resource_dependencies=meadow,ms-hasp-daisy
    # scswitch -e -j mail-rs-daisy

    上述指令會為 Messaging Server (安裝在 /opt/SUNWmsgsr 中) 建立名為 ms-rs-daisy 的 HAMessaging Server 資源。此 HAMessaging Server 資源依賴於 HA 磁碟資源 (亦即先前建立的檔案系統) 以及 HA 邏輯主機名稱 meadow

  10. 確認一切運作正常。

    將 Messaging Server 資源容錯移轉回主節點。


     # scswitch -z -g MAIL-RG -h daisy

3.4.3.1 如何在 Sun Cluster 上啟用除錯功能

Messaging Server Data Service Sun Cluster 代理程式使用兩個 API 記錄除錯訊息:

scds_syslog_debug() 會將層級 1 的除錯訊息寫入系統記錄檔。

scds_syslog() 會將 daemon.noticedaemon.infodaemon.error 層級的訊息寫入系統記錄檔。

syslog 訊息有下列字首:


SC[resourceTypeName, resourceGroupName, resourceName,methodName]

例如:


Dec 11 18:24:46 mars SC[SUNW.ims,MS-RG,mail-rs,ims_svc_start]: [ID 831728daemon.debug]
Groupname mail exists. 
Dec 11 18:24:46 mars SC[SUNW.ims,MS-RG,mail-rs,ims_svc_start]: [ID 383726daemon.debug] 
Username mailsrv exists.
Dec 11 18:24:46 mars SC[SUNW.ims,MS-RG,mail-rs,ims_svc_start]: [ID 244341daemon.debug] 
IMS_serverroot = /opt/mars/SUNWmsgsr
Dec 11 15:55:52 mars SC[SUNW.ims,MS_RG,MessagingResource,ims_svc_validate]: 
[ID 855581daemon.error] Failed to get the configuration info
Dec 11 18:24:46 mars SC[SUNW.ims,MS-RG,mail-rs,ims_svc_start]: [ID 833212daemon.info]
Attempting to start the data service under process monitor facility.

若要從 Messaging Server 資源類型 SUNW.ims 記錄訊息,請如下所示在 /var/cluster 下建立資源類型目錄:


mkdir -p /var/cluster/rgm/rt/SUNW.ims

若要檢視資源類型 SUNW.ims 的所有除錯訊息,請在叢集的所有節點上發出下列指令:


echo 9 > /var/cluster/rgm/rt/SUNW.ims/loglevel

若不要出現資源類型 SUNW.iws 的除錯訊息,請在叢集的所有節點上發出下列指令:


echo 0 > /var/cluster/rgm/rt/SUNW.ims/loglevel

若要從 Sun Cluster Data 服務記錄除錯訊息,並從 Messaging Server 代理程式記錄最常見的除錯資訊,請編輯 syslog.conf 檔案。例如,若要將所有 syslog 訊息記錄至 /var/adm/clusterlog 檔案,請將下一行加入 syslog.conf 檔案:


daemon.debug /var/adm/clusterlog

如此會記錄下列層級的所有訊息 (emergalertcriticalerrorwarningnoticeinformationdebug)。如需更多資訊,請參閱 syslog.conf 線上手冊。

請立即重新啟動 syslogd 常駐程式:


pkill -HUP syslogd

3.4.4 將 IP 位址連結至伺服器

如果要使用對稱或 N + 1 高可用性模式,需要瞭解配置過程中所要求的一些其他事項,以為 Messaging Server 準備 Sun Cluster Server。

在伺服器上執行的 Messaging Server 需要連結正確的 IP 位址。這是在 HA 環境中正確配置 Messaging 所必需的。

將 Messaging Server 配置為 HA 的部分工作包括配置 Messaging Server 連結和偵聽連線時所在的介面位址。依預設,伺服器會連結至所有可用的介面位址。但是,在 HA 環境下,您需要將伺服器專門連結至與 HA 邏輯主機名稱關聯的介面位址。

因此,提供一個程序檔來配置伺服器 (屬於指定的 Messaging Server 實例) 所使用的介面位址。請注意,該程序檔透過 IP 位址識別介面位址,此 IP 位址已經或將要與伺服器所使用的 HA 邏輯主機名稱建立關聯。

該程序檔透過修改或建立以下配置檔案來使配置變更生效。對於檔案

msg-svr-base/config/dispatcher.cnf

該程序檔為 SMTP 和 SMTP Submit 伺服器新增或變更 INTERFACE_ADDRESS 選項。對於檔案

msg-svr-base/config/job_controller.cnf

該程序檔為工作控制器新增或變更 INTERFACE_ADDRESS 選項。

最後,它將設定由 POP、IMAP 和 Messenger Express HTTP 等伺服器使用的 configutilservice.listenaddrservice.http.smtphost 參數。

請注意,原始配置檔案 (如果有) 將被重新命名為 *.pre-ha

遵循以下說明執行程序檔:

Procedure將 IP 位址連結至伺服器

  1. 成為超級使用者。

  2. 執行 msg-svr-base/sbin/ha_ip_config

  3. 該程序檔會顯示下述問題。鍵入 control-d 來回應問題可能會中斷該程序檔。這些問題的預設答案都顯示在方括號 [ ] 中。若要接受預設答案,只需按 Return 鍵即可。

    1. 邏輯 IP 位址:指定為 Messaging Server 將要使用的邏輯主機名稱所指定的 IP 位址。必須將 IP 位址指定為帶點的十進位數字形式,例如 123.456.78.90

      邏輯 IP 位址是在 configutil 參數 service.http.smtphost 中自動設定的,您可以使用此 IP 位址來查看叢集中哪台機器正在執行郵件傳送系統。例如,如果您使用的是 Messenger Express,則伺服器可以確定從哪台郵件主機傳送外寄的郵件。

    2. Messaging Server 基底目錄 ( msg-svr-base):指定安裝 Messaging Server 的頂層目錄的絕對路徑。

    3. 是否要變更以上任何選擇:回答「no」將接受您的答案並使配置變更生效。如果要改變答案,請回答「yes」。


      備註 –

      此外,ha_ip_config 程序檔將使用以下參數自動啟用兩個新的程序 watchermsprobelocal.autorestartlocal.watcher.enable。這兩個新的參數可協助監視郵件傳送伺服器的運作狀態。程序故障和服務未回應都會導致螢幕上顯示指示特定故障的記錄訊息。現在,叢集代理程式即可監視 watcher 程序,並在程序結束時進行容錯移轉。請注意,為了使 Sun Cluster 正常工作,必須啟用這兩個參數。

      如需有關 watchermsprobe 程序的更多資訊,請參閱4.5 自動重新啟動失敗或無回應的服務


3.4.5 管理郵件傳送 HA 的有用 Sun Cluster 指令

若要啟用 Messaging Server 資源:


# scswitch -e -j messaging-resource

若要停用 Messaging Server 資源:


# scswitch -n -j cal-resource

若要列出所有資源和資源群組:


# scstat -pvv

若要決定程序監視功能 (PMF) 標記,也就是說,此程序由 PMF 監視:


# pmfadm -L

若要列出資源和資源群組以及其狀態:


# scstat -g

若要管理 Sun Cluster:


scsetup