第3章 mod_cluster コネクター


3.1. 概要

mod_cluster コネクターは縮小された設定の、JBoss EAP および JBoss Web Server Tomcat のインテリジェントな負荷分散ソリューションで、JBoss mod_cluster コミュニティープロジェクトによって開発された技術に基づいています。

mod_cluster モジュールは、Apache HTTP Server をプロキシーサーバーとして使用して JBoss EAP および JBoss Web Server Tomcat ワーカーノードに HTTP 要求を負荷分散します。

3.1.1. 主な特長

他の mod_jk コネクターと比べて mod_cluster コネクターには複数の利点があります。

  • mod_cluster Management Protocol (MCMP) は、Tomcat サーバーと mod_cluster が有効な Apache HTTP Server との間の追加的な接続です。HTTP メソッドのカスタムセットを使用してサーバー側の負荷計算およびライフサイクルイベントを Apache HTTP Server サーバーに返信するために Tomcat サーバーによって使用されます。
  • mod_cluster がある Apache HTTP Server を動的に設定すると、手動設定を行わずに mod_cluster リスナーのある Tomcat サーバーが負荷分散に参加できます。
  • Tomcat サーバーは、Apache HTTP Server に依存せず、負荷計算を実行します。これにより、負荷分散メトリックが他のコネクターよりも正確になります。
  • mod_cluster コネクターにより、アプリケーションライフサイクルを細かく制御できるようになります。各 Tomcat サーバーは Web アプリケーションコンテキストライフサイクルイベントを Apache HTTP Server サーバーに転送し、指定コンテキストのルーティングリクエストを開始または停止するよう通知します。これにより、リソースを使用できないことが原因の HTTP エラーがエンドユーザーに表示されないようになります。
  • AJP、HTTP、または HTTPS トランスポートを使用できます。

3.1.2. コンポーネント

プロキシーサーバーでは、mod_cluster は 4 つの Apache モジュールで構成されます。

Expand
表3.1 コンポーネント
コンポーネント説明

mod_cluster_slotmem.so

Shared Memory Manager モジュールは、リアルタイムのワーカーノード情報を複数の Apache HTTP Server プロセスと共有します。

mod_manager.so

Cluster Manager モジュールは、ノードの登録、ノードの負荷データ、ノードアプリケーションのライフサイクルイベントなど、ワーカーノードからメッセージを受信および確認します。

mod_proxy_cluster.so

Proxy Balancer モジュールは、クラスターノードへの要求ルーティングを処理します。Proxy Balancer は、クラスターのアプリケーションの場所、各クラスターノードの現在の状態、およびセッション ID (リクエストが確立されたセッションの一部である場合) に基づいて適切な宛先ノードを選択します。

mod_advertise.so

Proxy Advertisement Module は、UDP マルチキャストメッセージを介してプロキシーサーバーの存在をブロードキャストします。サーバーのアドバタイズメッセージには、負荷分散クラスターに参加するワーカーノードからの応答をプロキシーサーバーがリッスンしている IP アドレスとポート番号が含まれます。

利用可能なモジュール (user-configurable パラメーターなど) の詳細は、Apache HTTP Server Modules appendix を参照してください。

3.1.3. 文字の制限

mod_cluster は共有メモリーを使用してノードの記述を維持します。共有メモリーは Apache HTTP Server の起動時に作成され、各項目の構造は固定されます。プロキシーサーバーおよびワーカーノードのプロパティーを定義する際に、以下の文字制限に従うようにしてください。

  • エイリアスの最大長: 100 文字 (エイリアスはそれぞれの仮想ホストのネットワーク名に対応します。名前は Host 要素で定義されます)。
  • コンテキストの最大長: 40 文字 (例: myapp.war/myappにデプロイされている場合 /myapp はコンテキストに含まれます)。
  • バランサー名の最大長: 40 文字 (mbean のバランサープロパティー)
  • JVMRoute 文字列の最大長: 80 文字 (<Engine> 要素の JVMRoute)。
  • ドメイン名の最大長 - 20 文字 (mbean のドメインプロパティー)。
  • ノードのホスト名の最大長: 64 文字 (<Connector> 要素内のホスト名アドレス)。
  • ノードのポートの最大長: 7 文字 (<Connector> 要素の port プロパティー、8009 は 4 文字)。
  • ノードのスキームの最大長: 6 文字 (コネクターのプロトコル、可能な値は httphttpsajp)。
  • クッキー名の最大長: 30 文字 (セッション ID のヘッダークッキー名。デフォルト値: org.apache.catalina.Globals.SESSION_COOKIE_NAME からの JSESSIONID)。
  • パス名の最大長: 30 文字 (セッション ID のパラメーター名。デフォルト値: org.apache.catalina.Globals.SESSION_PARAMETER_NAME からの JSESSIONID)。
  • セッション ID の最大長: 120 文字 (セッション ID は以下のようになります BE81FAA969BF64C8EC2B6600457EAAAA.node01)。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat