Sun Java System Application Server Enterprise Edition 8.1 2005Q2 高可用性管理指南

使用 Apache Web Server

若要使用 Apache Web Server,您必須在安裝負載平衡外掛程式之前執行特定的配置步驟。負載平衡外掛程式安裝也會對 Apache Web Server 做出其他修改。安裝外掛程式後,必須執行其他配置步驟。


備註 –

在 Apache 1.3 上,當多個 Apache 子程序執行時,每個程序都有自己的負載平衡循環序列。例如,如果有兩個 Apache 子程序正在執行,並且負載平衡器外掛程式在兩個應用程式伺服器實例上進行負載平衡,則第一個請求將傳送至實例 #1,第二個請求也將傳送至實例 #1。而第三個請求將傳送至實例 #2,第四個請求也將傳送至實例 #2。此模式會不斷重複 (實例 1、實例 1、實例 2、實例 2 等)。此運作方式可能與您預期的運作方式 (即,實例 1、實例 2、實例 1、實例 2 等) 不同。在 Sun Java System Application Server 中,用於 Apache 的負載平衡器外掛程式將為每個 Apache 程序創設一個負載平衡器實例,從而建立獨立的負載平衡順序。

如果使用 --with-mpm=worker 選項進行編譯,則 Apache 2.0 將具有多重執行緒運作方式。


使用 Apache Web Server 的需求

對於 Apache Web Server,您的安裝必須滿足最小需求 (視 Apache 版本而定)。

適用於 Apache 1.3 的需求

對於 Apache 1.3,負載平衡外掛程式需要︰


備註 –

若要使用 gcc 以外的 C 編譯器,請設定 C 編譯器的路徑並使公用程式位於 PATH 環境變數中。例如,對於 sh shell︰export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:appserver_installdir/lib


適用於 Apache 2 的最低需求

對於 Apache 2.0,負載平衡外掛程式需要︰

軟體原始碼可從 http://www.sunfreeware.com 取得。

此外,在編譯 Apache 之前,請執行以下步驟:


備註 –

若要使用 gcc 以外的 C 編譯器,請設定 C 編譯器的路徑並使公用程式位於 PATH 環境變數中。例如,對於 sh shell︰export LD_LIBRARY_PATH=app_server_install_dir/lib:$LD_LIBRARY_PATH


安裝負載平衡外掛程式之前的配置

為 Apache 安裝負載平衡外掛程式之前,請先安裝 Apache Web Server。必須編譯和建置 Apache 原始碼以使用 SSL 執行。本小節說明如欲順利編譯 Apache Web Server 以執行負載平衡器外掛程式,所需的最低需求和概略步驟。這些需求和步驟僅適用於此軟體的 Solaris 和 Linux 版本。如需有關 Apache 的 Windows 版本的資訊,請參閱 Apache 網站。

Procedure安裝 SSL 可識別的 Apache

開始之前

您必須已下載並解壓縮了 Apache 軟體。

  1. 下載和解壓縮 OpenSSL 原始碼。

  2. 編譯和建置 OpenSSL。

    如果已安裝了 OpenSSL 0.9.7.e,則在 Linux 平台上無需執行此步驟。

    輸入以下指令:


    cd openssl-0.9.7e
    make
    make install

    如需有關 OpenSSL 的更多資訊,請參閱 http://www.openssl.org/

  3. 依據 Apache 的版本,請執行以下程序之一︰

    • 對於 Apache 1.3,請依循以下步驟使用 mod_ssl 配置 Apache︰

      1. 解壓縮 mod_ssl 原始碼。

      2. cd mod_ssl-2.8.14–1.3.x

      3. ./configure –with-apache=../apache_1.3. x --with-ssl=../openssl-0.9.7e --prefix=install_path --enable-module=ssl --enable-shared=ssl --enable-rule=SHARED_CORE --enable-module=so

      在上述指令中,x 為 Apache 的版本編號,install_path 為要在其中安裝 Apache 的目錄。

      如需有關 mod_ssl 的更多資訊,請參閱 http://www.modssl.org

    • 對於 Apache 2.0,配置原始碼樹狀結構:

      1. cd http-2.0_ x

      2. 執行 ./configure --with-ssl= open_ssl_install_path --prefix= install_path --enable-ssl --enable-so

        在上述指令中,x 為 Apache 的版本編號,open_ssl_install_path 為安裝 OpenSSL 的目錄,install_path 為要在其中安裝 Apache 的目錄。

  4. 對於在 Linux 2.1 上執行的 Apache,編譯之前請:

    1. 開啟 src/MakeFile 並尋找自動產生的區段的結束位置。

    2. 在自動產生的區段之後的前四行的後面增加以下行:

      LIBS+= -licuuc -licui18n -lnspr4 -lpthread -lxerces-c 
      -lsupport -lnsprwrap -lns-httpd40
      LDFLAGS+= -L/appserver_installdir/lib -L/opt/sun/private/lib

      請注意,只有將應用程式伺服器安裝至 Java Enterprise System 底下時,才需要 -L/opt/sun/private/lib

      例如︰

      ## (End of automatically generated section)
      ## 
      CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_CFLAGS)
      LIBS=$(EXTRA_LIBS) $(LIBS1)
      INCLUDES=$(INCLUDES1) $(INCLUDES0) $(EXTRA_INCLUDES)
      LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS)
      "LIBS+= -licuuc -licui18n -lnspr4 -lpthread 
      -lxerces-c -lsupport -lnsprwrap -lns-httpd40
      LDFLAGS+= -L/appserver_installdir /lib -L/opt/sun/private/lib
    3. 設定環境變數 LD_LIBRARY_PATH。

      對於所有安裝,請將其設定為︰appserver_install_dir/lib

      針對 Java Enterprise System 安裝,請將其設定為 appserver_install_dir/lib:opt/sun/private/lib

  5. 按照適用於您所使用之版本的安裝說明編譯 Apache。

    如需更多資訊,請參閱 http://httpd.apache.org/

    一般來說,這些步驟包括:

    1. make

    2. make certificate (僅適用於 Apache 1.3)

    3. make install

      指令 make certificate 需要安全密碼。請記住此密碼,因為啟動安全 Apache 需要它。

  6. 為您的環境配置 Apache。

應用程式伺服器安裝程式所做的修改

負載平衡外掛程式安裝程式將必要檔案擷取至 Web 伺服器根目錄中的目錄︰

安裝程式會將以下項目增加至 Web 伺服器實例的 httpd.conf 檔案︰

<VirtualHost machine_name:443>
##Addition for EE lb-plugin
LoadFile /usr/lib/libCstd.so.1
LoadModule apachelbplugin_module libexec/mod_loadbalancer.so
#AddModule mod_apachelbplugin.cpp
<IfModule mod_apachelbplugin.cpp> 
  config-file webserver_instance/conf/loadbalancer.xml
  locale en
</IfModule>
<VirtualHost machine_ip_address>
  DocumentRoot "webserver_instance/htdocs"
  ServerName server_name
</VirtualHost>
##END EE LB Plugin ParametersVersion 7

Procedure配置 Apache 安全性檔案以與負載平衡器一起工作

Apache Web Server 必須具有正確的安全性檔案才能與負載平衡外掛程式一起正常工作。

  1. apache_install_dir 下建立一個名為 sec_db_files 的目錄。

  2. application_server_domain_dir/config/*.db 複製到 apache_install_dir/sec_db_files

  3. 視平台而定,執行其他配置。

    • 在 Solaris 平台上︰

      將路徑 /usr/lib/mps/secv1 增加至 apache_install_dir/bin/apachectl 程序檔中的 LD_LIBRARY_PATH 中。此路徑必須增加在 /usr/lib/mps 的前面。

    • 在 Linux 系統中:

      將路徑 /opt/sun/private/lib 增加至 apache_install_dir/bin/apachectl 程序檔中的 LD_LIBRARY_PATH 中。此路徑必須增加在 /usr/lib 的前面。

    • 在 Microsoft Windows 上︰

      1. 將新路徑增加至 Path 環境變數。

        按一下 [開啟] -> [設定] -> [控制台] -> [系統] -> [進階] -> [環境變數] -> [系統變數]。

        application_server_install_dir/bin 增加至 Path 環境變數。

      2. 將環境變數 NSPR_NATIVE_THREADS_ONLY 設定為 1。

        在 [環境變數] 視窗中的 [系統變數] 下,按一下 [新增]。輸入變數名稱 NSPR_NATIVE_THREADS_ONLY 以及變數值 1。

      3. 重新啟動機器。