- Apacheがインストール済みである
- Tomcatがインストール済みである
- Apacheはproxy-ajpやproxy-proxy-balancerを有効にしてインストールしてある
冗長構成の内容はApacheは一台でバックエンドの2台のTomcatに対してバランシングを行います。
Apacheの設定
バランシングの設定値は以下です。
キー | 値 | 説明 |
---|---|---|
stickysession | /home/hoge/apache | 同一情報に継続的に接続する為のセッション値を指定します。Tomcatの場合はstickysession=JSESSIONIDを指定します。注意点として大文字小文字が区別される。 |
nofailover | off | アプリケーションがフェールオーバーに対応していればoffを、対応してない場合はonを指定する。 |
timeout | 1 | ワーカーを取得するまでの最大待機時間。デフォルトでは待機しないのでエラーを返してしまう場合があるので1秒を指定。 |
loadfactor | 10 | ロードバランスする割合を指定する。 |
route | AP1には「sv1」、AP2には「sv2」 | どのサーバに割り振るか動作している指定する。TomcatのJvmRoute値と合わせる必要がある。 |
retry | 5 | ApacheとTomcatとの再接続思考の間隔。デフォルトは60秒なので短くしておく。 |
ttl | 20 | 非活動状態のコネクションと、関連するコネクションプール内のエントリの 生存時間を秒で指定します。 |
Balancerの設定
${APACHE_HOME}/conf/extra/httpd-proxy.confに以下の設定を記述します。
<location hoge=""> ProxyPass balancer://hoge/ stickysession=JSESSIONID|jsessionid nofailover=Off ttl=20 </Location> <Proxy balancer://hoge/> BalancerMember ajp://xxx.xxx.xxx.xxx:8009/ec loadfactor=10 route=sv1 retry=5 BalancerMember ajp://yyy.yyy.yyy.yyy:8009/ec loadfactor=10 route=sv2 retry=5 </Proxy>
Tomcatの設定
${TOMCAT_HOME}/conf/server.xmlのEngine要素に対してjvmRouteを設定します。
AP1の場合 <Engine name="Catalina" defaultHost="localhost" jvmRoute="sv1">
AP2の場合 <Engine name="Catalina" defaultHost="localhost" jvmRoute="sv2">
Tomcat、Apacheを再起動すれば設定は完了です。
0 件のコメント:
コメントを投稿