Apache Web Server を使用するには、ロードバランサプラグインをインストールする前に、特定の設定手順を実行する必要があります。また、ロードバランサプラグインのインストールによっても、Apache Web Server に追加の変更が加えられます。プラグインをインストールしてから、追加の設定手順を実行する必要があります。
Apache 1.3 で、複数の Apache の子プロセスが動作している場合、各プロセスは固有の負荷分散ラウンドロビンシーケンスを使用しています。たとえば、Apache の子プロセスが 2 つ動作していて、ロードバランサプラグインが 2 つのアプリケーションサーバーインスタンスに対して負荷分散する場合、最初の要求はインスタンス #1 に送信され、2 番目の要求もインスタンス #1 に送信されます。3 番目の要求はインスタンス #2 に送信され、4 番目の要求も同じくインスタンス #2 に送信されます。instance1、instance1、instance2、instance2 (以下も同じ) という、このパターンが繰り返されます。この動作は、通常予測される順序、つまり、instance1、instance2、instance1、instance2 (以下も同じ) とは異なります。Sun Java System Application Server では、Apache 用のロードバランサプラグインは Apache プロセスごとにロードバランサインスタンスをインスタンス化して、独立した負荷分散シーケンスを作成します。
--with-mpm=worker オプションを使用してコンパイルした場合、Apache 2.0 は動作をマルチスレッド化します。
Apache Web Server の場合は、Apache のバージョンに応じて、インストールが最小要件を満たす必要があります。
Apache 1.3 では、ロードバランサプラグインに次のものが必要です
openssl-0.9.7e (ソース)
mod_ssl-2.8.16-1.3.x (ソース)。この x は Apache のバージョンを表します。mod_ssl バージョンは、Apache のバージョンに一致している必要があります。
gcc-3.3-sol9-sparc-local パッケージ (Solaris SPARC の場合)
gcc-3.3-sol9-intel-local パッケージ (Solaris x86 の場合)
flex-2.5.4a-sol9-sparc-local パッケージ (Solaris SPARC の場合)
flex-2.5.4a-sol9-intel-local パッケージ (Solaris x86 の場合)
ソフトウェアソースは、http://www.sunfreeware.com で入手できます。
さらに、Apache をコンパイルする前に、次の操作をしてください。
Linux プラットフォームでは、同じマシンに Sun Java System Application Server をインストールします。
Solaris オペレーティングシステムでは、gcc バージョン 3.3 と make が PATH に含まれており、flex がインストールされていることを確認してください。
Solaris 10 オペレーティングシステムでは、OpenSSL 用の make を実行する前に、Solaris SPARC の場合は /usr/local/lib/gcc-lib/sparc-sun-solaris2.9/3.3/install-tools に、Solaris x86 の場合は /usr/local/lib/gcc-lib/i386-pc-solaris2.9/3.3/install-tools に格納されている mkheaders を実行します。
Red Hat Enterprise Linux Advanced Server 2.1 上で gcc を使用する場合、そのバージョンは gcc 3.0 以降である必要があります。
gcc 以外の C 言語のコンパイラを使用するには、その C 言語のコンパイラのパスを設定して、PATH 環境変数のユーティリティーを使用可能にします。たとえば、sh シェルでは次のようになります。export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:appserver_installdir/lib
Apache 2.0 では、ロードバランサプラグインに次のものが必要です
openssl-0.9.7e (ソース)
httpd-2.0.49 (ソース)
gcc-3.3-sol9-sparc-local パッケージ (Solaris SPARC の場合)。
gcc-3.3-sol9-intel-local パッケージ (Solaris x86 の場合)
flex-2.5.4a-sol9-sparc-local パッケージ (Solaris SPARC の場合)
flex-2.5.4a-sol9-intel-local パッケージ (Solaris x86 の場合)
ソフトウェアソースは、http://www.sunfreeware.com で入手できます。
さらに、Apache をコンパイルする前に、次の操作をしてください。
Linux プラットフォームでは、同じマシンに Sun Java System Application Server をインストールします。
Solaris オペレーティングシステムでは、gcc バージョン 3.3 と make が PATH に含まれており、flex がインストールされていることを確認してください。
Solaris 10 オペレーティングシステムでは、OpenSSL 用の make を実行する前に、Solaris SPARC の場合は /usr/local/lib/gcc-lib/sparc-sun-solaris2.9/3.3/install-tools に、Solaris x86 の場合は /usr/local/lib/gcc-lib/i386-pc-solaris2.9/3.3/install-tools に格納されている mkheaders を実行します。
Red Hat Enterprise Linux Advanced Server 2.1 上で gcc を使用する場合、そのバージョンは gcc 3.0 以降である必要があります。
gcc 以外の C 言語のコンパイラを使用するには、その C 言語のコンパイラのパスを設定して、PATH 環境変数のユーティリティーを使用可能にします。たとえば、sh シェルでは次のようになります。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 サイトを参照してください。
Apache ソフトウェアがすでにダウンロードされ、圧縮解除されている必要があります。
OpenSSL ソースをダウンロードし、展開します。
OpenSSL をコンパイルしてビルドします。
OpenSSL 0.9.7.e がインストールされている場合、Linux プラットフォームではこの手順は必要ありません。
次のコマンドを入力します。
cd openssl-0.9.7e make make install |
OpenSSL の詳細については、http://www.openssl.org/を参照してください。
Apache のバージョンに応じて、次のいずれかの手順に従います。
Apache 1.3 の場合は、次の手順に従い、mod_ssl を使用して Apache を設定します。
mod_ssl ソースを展開します。
cd mod_ssl-2.8.14–1.3.x
./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 の場合は、ソースツリーを設定します。
Linux 2.1 上の Apache の場合は、コンパイルの前に次の手順を実行します。
src/MakeFile を開き、自動的に生成されるセクションの最後を見つけます。
自動的に生成されるセクションのあとの最初の 4 行のあとに、次の行を追加します。
LIBS+= -licuuc -licui18n -lnspr4 -lpthread -lxerces-c -lsupport -lnsprwrap -lns-httpd40 LDFLAGS+= -L/appserver_installdir/lib -L/opt/sun/private/lib
-L/opt/sun/private/lib は、Application Server を Java Enterprise System インストールの一部としてインストールした場合にのみ必要であることに注意してください。
次に例を示します。
## (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
環境変数 LD_LIBRARY_PATH を設定します。
すべてのインストールで、次のように設定します。appserver_install_dir/lib
Java Enterprise System インストールでは、appserver_install_dir/lib:opt/sun/private/lib に設定します。
使用しているバージョンのインストール手順で説明されている方法で、Apache をコンパイルします。
詳細については、http://httpd.apache.org/を参照してください。
一般的な手順は次のとおりです。
環境に応じて Apache を設定します。
ロードバランサプラグインのインストールプログラムは、必要なファイルを、Web サーバーのルートディレクトリ内のディレクトリに展開します。
Apache 1.3 の場合、このディレクトリは libexec です。
Apache 2.0 の場合、このディレクトリは modules です。
インストールプログラムは、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
Apache Web Server は、ロードバランサプラグインとの適切な動作のために、正しいセキュリティーファイルを保持している必要があります。
apache_install_dir の下に sec_db_files という名前のディレクトリを作成します。
application_server_domain_dir/config/*.db を apache_install_dir/sec_db_files にコピーします。
プラットフォームに応じて、追加の設定を実行します。