16.6.4. Apache Mod_jk ワーカーの設定リファレンス
workers.properties
ファイルは mod_jk がクライアント要求を渡すワーカーノードの動作を定義します。Red Hat Enterprise Linux では、このファイルは /etc/httpd/conf/workers.properties
にあります。workers.properties
ファイルは、異なるサーブレットコンテナーが存在する場所と、負荷をコンテナー全体で分散する方法を定義します。
この設定は 3 つのセクションに分かれます。最初のセクションは、すべてのワーカーノードに適用されるグローバルプロパティーを扱います。2 番目のセクションには、特定のワーカーに適用される設定が含まれます。3 番目のセクションには、ワーカーで調整される特定のノードに設定が含まれます。
プロパティーの一般的な構造は
worker.WORKER_NAME.DIRECTIVE
です。WORKER_NAME はワーカーの一意な名前で、DIRECTIVE はワーカーに適用される設定になります。
Apache mod_jk ワーカーの設定リファレンス
ノードテンプレートは、デフォルトのノードごとの設定を指定します。ノード設定内のテンプレートを上書きできます。ノードテンプレートの例は、例16.2「workers.properties
サンプルファイル」 を参照してください。
表16.11 グローバルプロパティー
プロパティー | 説明 |
---|---|
worker.list | mod_jk で使用されるワーカー名のリスト。これらのワーカーは要求を受信できます。 |
表16.12 各ワーカーのプロパティー
プロパティー | 説明 |
---|---|
type |
ワーカーのタイプ。デフォルトのタイプは
ajp13 です。他の可能な値は ajp14 、lb 、 status です。
これらディレクティブの詳細は、http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html の Apache Tomcat Connector AJP Protocol Reference を参照してください。
|
balance_workers |
ロードバランサーが管理する必要があるワーカーノードを指定します。同じロードバランサーに対してディレクティブを複数回使用できます。ディレクティブは、カンマで区切られたワーカー名のリストから構成されます。これはワーカーごとに設定され、ノードごとには設定されません。このワーカータイプにより調整されるすべてのノードが影響を受けます。
|
sticky_session |
同じセッションからの要求を常に同じワーカーにルーティングするかどうかを指定します。デフォルト値は
0 であり、スティッキーセションが無効になります。スティッキーセッションを有効にするには、1 に設定します。すべての要求が実際にステートレスでない限り、スティッキーセッションは通常有効にする必要があります。これは、ワーカーごとに設定され、ノードごとに設定されません。そのワーカータイプにより調整されるすべてのノードが影響を受けます。
|
表16.13 各ノードのプロパティー
プロパティー | 説明 |
---|---|
host |
ワーカーのホスト名または IP アドレス。ワーカーノードは
ajp プロトコルスタックをサポートする必要があります。デフォルト値は localhost です。
|
port |
定義されたプロトコル要求をリッスンしているリモートサーバーインスタンスのポート番号。デフォルト値は、AJP13 ワーカーのデフォルトリッスンポートである
8009 です。AJP14 ワーカーのデフォルト値は 8011 です。
|
ping_mode |
ネットワークステータスがプローブされる接続の状態。プローブは CPing に空の AJP13 パケットを使用し、応答で CPong を期待します。ディレクティブフラグの組み合わせを使用して状態を指定します。フラグはカンマまたはスペースで区切られません。ping_mode は、
C 、P 、I 、および A の任意の組み合わせです。
|
ping_timeout、connect_timeout、prepost_timeout、connection_ping_interval |
上記の接続プローブ設定のタイムアウト値。値はミリ秒単位で指定され、
ping_timeout のデフォルト値は 10000 です。
|
lbfactor |
各ワーカーの負荷分散係数を指定し、ロードバランサーのメンバーワーカーにのみ適用します。これは、より強力なサーバーにより多くの負荷を割り当てる場合に役に立ちます。ワーカーにデフォルトの 3 倍の負荷を割り当てるには、これを
3 に設定します (worker.my_worker.lbfactor=3 )。
|
例16.2 workers.properties
サンプルファイル
worker.list=node1, node2, node3 worker.balancer1.sticky_sessions=1 worker.balancer1.balance_workers=node1 worker.balancer2.sticky_session=1 worker.balancer2.balance_workers=node2,node3 worker.nodetemplate.type=ajp13 worker.nodetemplate.port=8009 worker.node1.template=nodetemplate worker.node1.host=localhost worker.node1.ping_mode=CI worker.node1.connection_ping_interval=9000 worker.node1.lbfactor=1 worker.node2.template=nodetemplate worker.node2.host=192.168.1.1 worker.node2.ping_mode=A worker.node3.template=nodetemplate worker.node3.host=192.168.1.2
Apache mod_jk の設定の詳細は、本書の範囲外です。詳細については、Apache ドキュメンテーション (http://tomcat.apache.org/connectors-doc/) を参照してください。