Sun Java System Application Server 9.1 高可用性管理指南

故障後回復

使用 Sun Cluster

Sun Cluster 可為網域管理伺服器、節點代理程式、Application Server 實例、訊息佇列及 HADB 提供自動化的容錯移轉。如需更多資訊,請參閱「Sun Cluster Data Service for Sun Java System Application Server Guide for Solaris OS」

使用標準乙太網路互連及部分的 Sun Cluster 產品。Java ES 包含這項功能。

手動回復

您可以使用各種技術手動回復個別子元件:

回復網域管理伺服器

失去網域管理伺服器 (DAS) 只會影響到管理作業。即使無法連線至 DAS,Application Server 叢集和應用程式仍會如常地繼續運作。

可用下列任意方法回復 DAS:

回復節點代理程式和伺服器實例

節點代理程式和伺服器實例有兩種回復方式。

保存備份壓縮檔案。目前沒有針對節點代理程式和伺服器實例提供專屬的備份指令。只要建立一個壓縮檔,其中包含節點代理程式目錄的內容即可。發生故障之後,可將儲存的備份解壓縮至擁有相同主機名稱和 IP 位址的新機器上,並且使用相同的安裝目錄位置、作業系統等等。該機器上必須擁有檔案型安裝、套裝軟體型安裝或復原的備份影像。

手動回復。使用的新主機必須擁有相同的 IP 位址。

  1. 在該機器上安裝 Application Server 節點代理程式位元。

  2. 請參閱 AS8.1 UR2 修補程式 4 安裝指示。

  3. 重新建立節點代理程式。您不需要建立任何伺服器實例。

  4. 同步化處理會從 DAS 複製配置及資料,並做更新。

回復負載平衡器及 Web 伺服器

目前沒有單獨針對 Web 伺服器配置提供專屬備份指令。只要壓縮 Web 伺服器安裝目錄即可。發生故障之後,將儲存的備份解壓縮至擁有相同網路識別的新機器上。若新機器擁有不同的 IP 位址,則更新 DNS 伺服器或路由器。


備註 –

這裡假設您已經事先重新安裝 Web 伺服器或從影像復原 Web 伺服器。


負載平衡器外掛程式 (plugins 目錄) 及配置位於 Web 伺服器安裝目錄中,此目錄通常是 /opt/SUNWwbsvrweb-install/web-instance/config 目錄包含 loadbalancer.xml 檔案。

回復訊息佇列

訊息佇列 (MQ) 配置和資源儲存於 DAS,並且可和實例同步化。任何其他資料和配置資訊則位於 MQ 目錄中,這些目錄通常位於 /var/imq 下,因此請視需求備份及復原這些目錄。新機器上必須已經有 MQ 安裝。復原機器時,務必依常態啟動 MQ 代理程式。

回復 HADB


備註 –

Sun Java System Application Server 的 Application Server 獨立發行版本 隨附了 HADB 軟體。如需有關 Sun Java System Application Server 的可用發行軟體資訊,請參閱「Sun Java System Application Server 9.1 Installation Guide」中的「Distribution Types and Their Components」。只有 企業 設定檔才提供 HADB 功能。如需有關設定檔的更多資訊,請參閱 「Sun Java System Application Server 9.1 管理指南」中的「用法設定檔」


如果您有兩個使用中 HADB 節點,則可以 (在別的機器上) 配置兩個備用節點,以便在發生故障時能夠接手。這種方式比較簡潔,因為備份及復原 HADB 可能會復原到舊的階段作業。

如需有關建立含有備用節點資料庫的資訊,請參閱建立資料庫。如需有關對資料庫增加備援節點的資訊,請參閱增加節點。如果回復及自我修復都失敗,備用節點即會自動接手。

使用 Netbackup


備註 –

Sun QA 尚未測試過此程序。


使用 Veritas Netbackup 儲存每部機器的影像。若是 BPIP,則備份含有 Web 伺服器和應用程式伺服器的四部機器。

每部復原的機器都和原來機器使用相同配置,例如相同的主機名稱、IP 位址等等。

若是如應用程式伺服器之類的檔案型產品,只需備份及復原相關目錄。但是如 Web 伺服器影像之類的套裝軟體型安裝,則必須備份及復原整部機器。套裝軟體會安裝至 Solaris 套裝軟體資料庫。因此,若只備份目錄並於稍後復原至新系統,將會造成套裝軟體資料庫中沒有「已部署」Web 伺服器的資料。這會導致未來無法安裝修補程式或進行升級。

請勿手動複製及復原 Solaris 套裝軟體資料庫。別的可行做法是在安裝如 Web 伺服器之類的元件後,備份機器的影像。此影像稱為基準線 tar 檔案。當您變更 Web 伺服器時,只需備份如 /opt/SUNWwbsvr 下的這些目錄。復原時,先復原基準線 tar 檔案,再覆蓋做過修改的 Web 伺服器目錄。您也同樣可以對 MQ (BPIP 的套裝軟體型安裝) 使用這個程序。如果您在原始機器上進行升級或安裝修補程式,務必要建立新的基準線 tar 檔案。

若包含 DAS 的機器發生故障,在機器復原之前將無法使用 DAS。

DAS 是中央儲存庫。當您復原伺服器實例並重新啟動伺服器實例時,伺服器實例只會和 DAS 中的資訊同步化。因此,所有變更都必須透過 asadmin 或管理主控台執行。

HADB 的每日備份影像不一定可以用,因為這類影像可能包含舊的應用程式階段作業狀態。

重新建立網域管理伺服器

若主控網域管理伺服器 (DAS) 的機器發生故障,且先前已備份 DAS,則可重建 DAS。若要重新建立 DAS 的有效副本,您必須擁有:


備註 –

必須保留一份第一台機器上的 DAS 的備份。使用 asadmin backup-domain 來備份目前網域。


Procedure遷移 DAS

以下步驟用於將 Domain Administration Server 從第一台機器 (machine1) 遷移到第三台機器 (machine3):

  1. 將 Application Server 安裝在第三台機器上,方法與在第一台機器上安裝時相同。

    為了可以在第三台機器上正確地復原 DAS 並且不會發生路徑衝突,您必須執行此操作。

    1. 使用指令行 (互動) 模式來安裝 Application Server 管理套裝軟體。

      若要啟動指令行互動模式,請使用 console 選項呼叫安裝程式:


      ./bundle-filename -console
      

      若要使用指令行介面進行安裝,您必須具有 root 許可權。

    2. 若要安裝預設網域,請取消選取該選項。

      兩台機器的架構與安裝路徑完全相同時 (即兩台機器使用相同的 as-installdomain-root-dir),才支援復原備份的網域。

  2. 將第一台機器上的備份 ZIP 檔案複製到第三台機器上的 domain-root-dir 目錄中。

    也可以透過 FTP 方式複製檔案。

  3. 將 ZIP 檔案復原到第三台機器。


    asadmin restore-domain --filename domain-root-dir/sjsas_backup_v00001.zip 
    --clienthostname machine3 domain1
    

    備註 –

    只要指定 --clienthostname 選項,就不需要修改 jmx-connector 元素在 domain.xml 檔案中的 client-hostname 特性。


    可以備份任何網域。但是,在重新建立網域時,網域名稱應與原始網域名稱相同。

  4. 變更第三台機器上的 domain-root-dir/domain1/generated/tmp 目錄的權限,以與第一台機器上相同目錄的權限相符。

    該目錄的預設許可權為:drwx------ (or 700).

    例如︰


    chmod 700 domain-root-dir/domain1/generated/tmp
    

    以上範例假定您備份的是 domain1。如果備份的是其他名稱的網域,則應使用要備份網域的名稱取代上述的 domain1

  5. 在第三台機器的 domain-root-dir/domain1/config/domain.xml 檔案中,更新 jms-service 元素的 host 屬性值。

    以下是此屬性的原始設定:

    <jms-service... host=machine1.../>

    依下列方式修改此屬性的設定:

    <jms-service... host=machine3.../>
  6. 在 machine3 上啟動復原的網域:


    asadmin start-domain --user admin-user --password admin-password domain1
    

    DAS 會連絡所有執行中的節點代理程式,並為節點代理程式提供 DAS 的連絡資訊。節點代理程式會使用此資訊連絡 DAS。

  7. 對於重新啟動 DAS 時未執行的任何節點代理程式,請在 machine2 上變更 as-install /nodeagents/nodeagent/agent/config/das.properties 中的 agent.das.host 特性值。

    重新啟動 DAS 時,正在執行的節點代理程式不需要執行此步驟。

  8. 在 machine2 上重新啟動節點代理程式。


    備註 –

    使用 asadmin start-instance 指令啟動叢集實例,以使這些實例與復原網域同步。