A.36. Apache HTTP Server の mod_cluster ディレクティブ

mod_cluster コネクターは Apache HTTP Server ベースのロードバランサーです。通信チャネルを使用して、リクエストを Apache HTTP Server からアプリケーションサーバーノードのセットの 1 つに転送します。mod_cluster の設定には以下のディレクティブを指定できます。

注記

mod_cluser は Apache HTTP Server に転送しなければならない URL を自動的に設定するため、ProxyPass ディレクティブを使用する必要はありません。

表A.134 mod_cluster ディレクティブ

ディレクティブ説明

CreateBalancers

バランサーが Apache HTTP Server の VirtualHosts でどのように作成されるかを定義します。ProxyPass /balancer://mycluster1/ のようなディレクティブを許可します。

  • 0: Apache HTTP Server に定義されるすべての VirtualHosts を作成します。
  • 1: バランサーを作成しません (バランサー名を定義するため最低でも 1 つの ProxyPass または ProxyMatch が必要です)。
  • 2: メインサーバーのみ作成します (デフォルト)

UseAlias

エイリアスがサーバー名に対応することを確認します。

  • 0: エイリアスを無視します (デフォルト)
  • 1: エイリアスをチェックします。

LBstatusRecalTime

負荷分散ロジックがノードの状態を再計算する間隔 (秒単位)。

デフォルト: 5 秒

WaitBeforeRemove

削除されたノードを httpd が記憶しなくなるまでの時間 (分単位)。

デフォルト: 10 秒

ProxyPassMatch/ProxyPass

ProxyPassMatch および ProxyPass は、バックエンド URL の代わりに!を使用するとパスのリバースプロキシーを防ぐ mod_proxy ディレクティブです。これは、Apache HTTP Server が静的なコンテンツに対応できるようにするために使用されます。例: ProxyPassMatch ^(/.*\.gif)$ !この例では、Apache HTTP Server は直接 .gif ファイルに対応できます。

 
注記

JBoss EAP 7 のセッションのパフォーマンス最適化により、ホットスタンバイノードの設定はサポートされません。

mod_manager

mod_manager ディレクティブのコンテキストは、指定がある場合を除きすべて VirtualHost になります。サーバー設定 コンテキストは、ディレクティブが VirtualHost 設定外になければならないことを示します。そうでない場合、エラーメッセージが表示され、Apache HTTP Server が開始しません。

表A.135 mod_manager ディレクティブ

ディレクティブ説明

EnableMCPMReceive

VirtualHost がノードから MCPM を受信できるようにします。mod_cluster が動作するようにするため、Apache HTTP Server 設定に EnableMCPMReceive が含まれます。VirtualHost のアドバタイズを設定する場所に保存します。

 

MemManagerFile

設定の保存、共有メモリーまたはロックされたファイルのキー生成に mod_manager が使用する名前のベース名。絶対パス名である必要があります。ディレクトリーは必要な場合に作成されます。これらのファイルは NFS 共有ではなくローカルドライブに格納することが推奨されます。 コンテキスト: server config

$server_root/logs/

Maxcontext

mod_cluster によってサポートされるコンテキストの最大数。コンテキスト: server config

デフォルト: 100

Maxnode

mod_cluster によってサポートされるノードの最大数。コンテキスト: server config

デフォルト: 20

Maxhost

mod_cluster によってサポートされるホスト (エイリアス) の最大数。バランサーの最大数も含まれます。コンテキスト: server config

デフォルト: 20

Maxsessionid

mod_cluster-manager ハンドラーにアクティブなセッションの数を提供するために保存されるアクティブ sessionid の数。5 分以内に mod_cluster がセッションから情報を受信しないとセッションは非アクティブになります。コンテキスト: server config。このフィールドはデモおよびデバッグの目的のみで使用されます。

0: ロジックはアクティベートされません。

MaxMCMPMaxMessSize

他の Max ディレクティブからの MCMP メッセージの最大サイズ。

他の Max ディレクティブより計算されます。最小: 1024

ManagerBalancerName

JBoss EAP インスタンスがバランサー名を提供しない場合に使用されるバランサーの名前。

mycluster

PersistSlots

ファイルのノード、エイリアス、およびコンテキストを保持するよう mod_slotmem に伝えます。コンテキスト: server config

オフ

CheckNonce

mod_cluster-manager ハンドラーを使用する際に nonce のチェックを切り替えます。

on/off、デフォルト: on - Nonce をチェック

AllowDisplay

mod_cluster-manager メインページの追加表示を切り替えます。

on/off、デフォルト: off - バージョンのみを表示

AllowCmd

mod_cluster-manager URL を使用するコマンドを許可します。

on/off、デフォルト: on - コマンドを許可

ReduceDisplay

メインの mod_cluster-manager ページに表示される情報を減らし、ページ上により多くのノードを表示できるようにします。

on/off、デフォルト: off - 情報をすべて表示

SetHandler mod_cluster-manager

mod_cluster がクラスターから可視できるノードの情報を表示します。情報には一般的な情報が含まれ、追加でアクティブなセッションの数を調べます。

<Location /mod_cluster-manager>
  SetHandler mod_cluster-manager
  Require ip 127.0.0.1
</Location>

on/off、デフォルト: off

注記

httpd.conf に定義された場所にアクセスする場合:

  • Transferred: バックエンドサーバーに送信された POST データに対応。
  • Connected: mod_cluster の状態ページが要求されたときに処理された要求の数に対応。
  • Num_sessions: mod_cluster がアクティブと報告するセッションの数に対応 (過去 5 分以内に要求があった場合)。Maxsessionid がゼロの場合、このフィールドは存在しません。 このフィールドはデモおよびデバッグの目的でのみ使用されます。