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

使用 Apache Web Server

要使用 Apache Web Server,您必须在安装负载平衡器插件之前先执行某些配置步骤。负载平衡器插件安装也将对 Apache Web Server 进行其他修改。安装插件后,您必须执行其他配置步骤。


注 –

在 Apache 1.3 上,当多个 Apache 子进程运行时,每个进程都有自己的负载平衡 Round Robin 序列。例如,如果有两个 Apache 子进程正在运行,并且负载平衡器插件在两个应用程序服务器实例上进行负载平衡,则第一个请求和第二个请求将发送给实例 1,而第三个和第四个请求则将发送给实例 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 Web 站点。

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,请使用以下步骤将 Apache 配置为与 mod_ssl 一起使用:

      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

      请注意,仅在 Application Server 作为 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。

Application Server 安装程序所作的修改

负载平衡器插件安装程序将必要文件解压缩至 Web Server 根目录下的以下目录中:

它将以下条目添加到 Web Server 实例的 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. 重新启动计算机。