Enterprise Server のインストールプログラムは、ロードバランサプラグインのインストール中に、Apache 設定に対して次の変更を行います。ロードバランサプラグインを手動でインストールするように選択した場合は、これらの手順を手動で実行する必要があります。インストールプログラムは、Web サーバーのルートディレクトリにある modules ディレクトリに、必要なファイルを展開します。
ロードバランサプラグインをインストールする前に、必ず DAS 証明書をエクスポートしてください。
Apache 2.0.x の場合、インストーラは Web サーバーインスタンスの httpd.conf ファイルに次のエントリを追加します。
##BEGIN EE LB Plugin Parameters LoadModule apachelbplugin_module modules/mod_loadbalancer.so #AddModule mod_apache2lbplugin.cpp <IfModule mod_apache2lbplugin.cpp> config-file webserver-instance/httpd/conf/loadbalancer.xml locale en </IfModule> <VirtualHost machine-ip-address> DocumentRoot "webserver-instance/httpd/htdocs" ServerName server-name </VirtualHost> ##END EE LB Plugin Parameters
Apache 2.2.x の場合、インストーラは Web サーバーインスタンスの httpd.conf ファイルに次のエントリを追加します。
##BEGIN EE LB Plugin Parameters LoadFile /usr/lib/libCstd.so.1 (For Solaris SPARC only) LoadModule apachelbplugin_module modules/mod_loadbalancer.so #AddModule apachelbplugin_module <IfModule apachelbplugin_module> config-file Apache-install-location/conf/loadbalancer.xml locale en </IfModule> ##END EE LB Plugin Parameters
Apache 2.2.x の場合、インストーラは Web サーバーインスタンスの httpd-vhosts.conf ファイルに次のエントリを追加します。
##BEGIN EE LB Plugin Parameters <VirtualHost machine-ip-address> ServerName host-name DocumentRoot Apache-install-location/htdocs </VirutalHost> ##END EE LB Plugin Parameters
インストーラによって行われるその他の変更により、使用中の環境で Apache の config-file および ssl-config が正しい値に設定されます。ssl-config ファイルは、Apache 2.0.x の Apache-install-location/conf/ssl.conf または Apache-install-location/conf/extras/httpd-ssl.conf に格納されます。config ファイルは、Apache 2.0.x および Apache 2.2.x の Apache-install-location /conf/httpd.conf に格納されます。変更内容の概要は次のとおりです。
ssl-config では、VirtualHost default:port のデフォルトのホスト名とポートが、Apache がインストールされているローカルシステムのホスト名とサーバーのポート番号に置き換えられます。この変更を行わないと、ロードバランサは機能しません。Solaris Apache が起動しない可能性があり、Linux では HTTPS 要求が機能しない可能性があります。
ssl-config では、ServerName www.example.com:443 の www.example.com が、Apache がインストールされているローカルシステムのホスト名で置き換えられます。
この変更を行わないと、セキュリティー証明書がインストールされている場合に Apache を起動すると次の警告が表示されます。
[warn] RSA server certificate CommonName (CN) hostname does NOT match server name! |
Apache に対する証明書のインストールについては、「Apache のセキュリティー証明書を作成する 」を参照してください。
config では、ServerName www.example.com:80 の www.example.com の部分を、Apache がインストールされているローカルシステムのホスト名で置き換えます。
この変更を行わないと、Apache を起動したときに、システムがサーバーの完全修飾ドメイン名を特定できなかったことと、重複する VirtualHost エントリが存在することを示す警告が表示されます。
apache-install-location/conf/extra/ httpd-vhosts.conf では、ServerName www.example.com:80 の www.example.com が、Apache がインストールされているローカルシステムのホスト名で置き換えられます。
この変更を行わないと、Apache を起動したときに、システムがサーバーの完全修飾ドメイン名を特定できなかったことと、重複する VirtualHost エントリが存在することを示す警告が表示されます。
Enterprise Server のインストールプログラムは、次のタスクをユーザーに代わって実行します。
sjsas.crt を apache-install-dir/conf/ssl.crt ディレクトリにコピーすることにより、DAS 証明書をインポートします。
Apache 2.2.x の apache-install-dir /conf/extra/httpd-ssl.conf または Apache 2.0.x の apache-instal -dir /conf/httpd.conf に、次の行を付加します。
<Location /lbconfigupdate> SSLVerifyClient require SSLVerifyDepth 1 SSLRequireSSL SSLCACertificateFile apache-install-dir//conf/ssl.crt/sjsas.crt SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)-/ \ and %{SSL_CLIENT_S_DN_O} eq "Sun Microsystems" \ and %{SSL_CLIENT_S_DN_OU} eq "Sun GlassFish Enterprise Server" \ and %{SSL_CLIENT_M_SERIAL} eq "<serial_number>" ) </Location> <Location /getmonitordata> SSLVerifyClient require SSLVerifyDepth 1 SSLRequireSSL SSLCACertificateFile apache-install-dir/conf/ssl.crt/sjsas.crt SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)-/ \ and %{SSL_CLIENT_S_DN_O} eq "Sun Microsystems" \ and %{SSL_CLIENT_S_DN_OU} eq "Sun GlassFish Enterprise Server" \ and %{SSL_CLIENT_M_SERIAL} eq <serial_number> ) </Location>
Apache 2.2.x では、apache-install-dir /conf/httpd.conf ファイルの Include conf/extra/httpd-ssl.conf の行が、コメント解除されていることを確認します。
serial-number の値は、DAS 証明書ファイルから生成する必要があります。serial-number を生成するには、コマンド keytool -printcert -file sjsas.crt を使用します。このコマンドの出力の小文字をすべて大文字に変更して、serial-number として使用します。このコマンドは、使用しているアプリケーションサーバーの名前も表示します。