13.5.2. Apache HTTPD への Mod_proxy HTTP コネクターのインストール
mod_proxy
は、Apache により提供される負荷分散モジュールです。このタスクは、基本的な設定を提供します。高度な設定または詳細については、Apache の mod_proxy
ドキュメンテーション (http://httpd.apache.org/docs/2.2/mod/mod_proxy.html) を参照してください。Enterprise Application Platform の観点からの mod_proxy
の詳細については、「Apache Mod_proxy HTTP コネクター」と「HTTP コネクターの概要 」を参照してください。
前提条件
- Enterprise Web Server HTTPD または Apache HTTPD をインストールする必要があります。
mod_proxy
モジュールをインストールする必要があります。Apache HTTPD は、通常、すでに同梱されたmod_proxy
モジュールで提供されます。これは、Red Hat Enterprise Linux のケースです (JBoss Enterprise Web Server で提供される HTTPD と Microsoft Windows で提供される Apache HTTPD)。- HTTPD 設定を変更するには、
root
または管理者権限が必要です。 - HTTPD 設定ディレクトリーを決定します。これは、Apache HTTPD 用の
conf/
およびmodules/
ディレクトリーを含むディレクトリーです。このタスクの残りでは、これはHTTPD_CONF
と示されます。通常の値は以下のとおりです。/etc/httpd/
EWS_HOME/httpd/
(Enterprise Web Server がインストールされた場所から起動されます)
HTTPD での
mod_proxy
モジュールの有効化HTTPD_CONF/conf/httpd.conf
ファイルで次の行を探します。これらの行が存在しない場合は、行を最下部に追加します。これらの行が存在し、行がコメント (#) 文字始まる場合は、この文字を削除します。後でファイルを保存します。通常は、モジュールはすでに存在し、有効になります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 非負荷分散プロキシーを追加します。
以下の設定を、他の<VirtualHost>
ディレクトリーの直下にあるHTTPD_CONF/conf/httpd.conf
ファイルに追加します。値をセットアップに適切な値に置き換えます。この例では、仮想ホストを使用します。デフォルトの HTTPD 設定を使用するには、次の手順を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更後に、ファイルを保存します。負荷分散プロキシーを追加します。
mod_proxy
をロードバランサーとして使用し、複数の Enterprise Application Platform サーバーに負荷を送信するには、以下の設定をHTTPD_CONF/conf/httpd.conf
ファイルに追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上記の例では、すべて HTTP プロトコルを使用して通信します。 適切なmod_proxy
モジュールをロードする場合は、AJP または HTTPS プロトコルを代わりに使用できます。詳細については、Apache mod_cluster ドキュメンテーションを参照してください。スティッキーセッションを有効にします。
スティッキーセッションを使用すると、クライアント要求が特定の JBoss Enterprise Application Platform ノードに送信された場合に、ノードが利用不可にならない限り、すべての将来の要求が同じノードに送信されます。これは、ほとんど常に正しい動作です。mod_proxy
のスティッキーセッションを有効にするには、stickysession
パラメーターをProxyPass
ステートメントに追加します。この例では、使用できる他のいくつかのパラメーターも示されます。詳細については、Apache のmod_proxy
ドキュメンテーション (http://httpd.apache.org/docs/2.2/mod/mod_proxy.html) を参照してください。ProxyPass /MyApp balancer://mycluster stickysession=JSESSIONID lbmethod=bytraffic nofailover=Off
ProxyPass /MyApp balancer://mycluster stickysession=JSESSIONID lbmethod=bytraffic nofailover=Off
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HTTPD を再起動します。
HTTPD サーバーを再起動して変更を反映します。
HTTPD が、標準または負荷分散設定で mod_proxy
を使用してクライアント要求を Enterprise Application Platform サーバーまたはクラスターに送信するよう設定されます。Enterprise Application Platform がこれらの要求に応答するよう設定するには、「Enterprise Application Platformが外部 HTTPD から要求を受け入れるように設定」を参照してください。