Red Hat Training

A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform

17.6.3. Apache HTTP Server または JBoss Enterprise Web Server への mod_cluster モジュールのインストール (Zip)

前提条件

  • このタスクを実行するには、Red Hat Enterprise Linux 6 または JBoss Enterprise Web Server にインストールされた Apache HTTP Server を使用するか、JBoss EAP 6 のダウンロード可能な個別コンポーネントとして含まれるスタンドアロン Apache HTTP Server を使用する必要があります。
  • Red Hat Enterprise Linux 6 に Apache HTTP Server をインストールする必要がある場合は、『 『Red Hat Enterprise Linux 6 デプロイメントガイド』』 に記載された手順を実行します。
  • JBoss EAP 6 の個別のダウンロード可能なコンポーネントとして含まれるスタンドアロンの Apache HTTP Server をインストールする必要がある場合は、「Red Hat Enterprise Linux 5、6、7 への Apache HTTP Server のインストール(Zip)」 を参照してください。
  • JBoss Enterprise Web Server をインストールする必要がある場合は、『JBoss Enterprise Web Server インストールガイド』 に記載された手順を実行します。
  • Red Hat カスタマーポータル( https://access.redhat.com )から、お使いのオペレーティングシステムおよびアーキテクチャー用の Webserver Connecter Natives パッケージをダウンロードします。このパッケージには、お使いのオペレーティングシステム用に事前にコンパイルされた mod_cluster バイナリー Web サーバーモジュールが含まれます。アーカイブを抽出した後に、モジュールは EAP_HOME/modules/system/layers/base/native/lib/httpd/modules ディレクトリーにあります。
    etc/ ディレクトリーには設定ファイルのサンプルが含まれ、share/ ディレクトリーには補足ドキュメントがいくつか含まれています。
  • 管理 (root) 権限を使用してログインする必要があります。
備考
64 ビットシステムを使用する場合、mod_cluster バイナリー web サーバーモジュールは EAP_HOME/modules/system/layers/base/native/lib64/httpd/modules に配置されます。モジュールへのアクセスが必要な場合は、このパスを使用する必要があります。

手順17.12 mod_cluster モジュールのインストール

  1. Apache HTTP Server の設定場所を判断します。

    Apache HTTP Server の設定場所は、Red Hat Enterprise Linux の Apache HTTP Server を使用しているか、JBoss EAP 6 でダウンロード可能な個別コンポーネントとして含まれるスタンドアロン Apache HTTP Server を使用しているか、JBoss Enterprise Web Server で利用可能な Apache HTTP Server を使用しているかによって異なります。これは、以下の 3 つのオプションの 1 つであり、このタスクの残りの部分では HTTPD_HOME と呼ばれます。
    • Apache HTTP Server - /etc/httpd/
    • JBoss EAP 6 Apache HTTP Server - この場所はインフラストラクチャーの要件に基づいてユーザーによって選択されます。
    • JBoss Enterprise Web Server Apache HTTP Server - EWS_HOME/httpd/
  2. モジュールを Apache HTTP Server モジュールディレクトリーにコピーします。

    4 つのモジュール( .soで終わるファイル)を、展開された Webserver Natives アーカイブの EAP_HOME/modules/system/layers/base/native/lib/httpd/modules ディレクトリーから HTTPD_MODULES/ ディレクトリーにコピーします。
  3. JBoss Enterprise Web Server の場合は、mod_proxy_balancer モジュールを無効にします。

    JBoss Enterprise Web Server を使用する場合、mod_proxy_balancer モジュールはデフォルトで有効になります。これは mod_cluster と互換性がありません。これを無効にするには、HTTPD_CONF/httpd.conf を編集し、モジュールを読み込む行の前に # (ハッシュ)記号を追加して以下の行をコメントアウトします。この行はコメントなしで表示され、以下のように表示されます。
    LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    # LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    ファイルを保存してから閉じます。
  4. mod_cluster モジュールを設定します。

    Webserver Natives アーカイブには、サンプルの mod_cluster.conf ファイル(EAP_HOME/modules/system/layers/base/native/etc/httpd/conf)が含まれます。このファイルはガイドとして使用するか、または編集して HTTPD_CONF.D/JBoss_HTTP.conf ファイルを作成します。
    注記
    JBoss_HTTP.conf という名前を使用することは、本書の任意の規則です。設定ファイルは、.conf 拡張子が conf.d/ ディレクトリーに保存されている場合、その名前に関係なく読み込まれます。
    以下を設定ファイルに追加します。
    LoadModule slotmem_module modules/mod_slotmem.so
    LoadModule manager_module modules/mod_manager.so
    LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
    LoadModule advertise_module modules/mod_advertise.so
    
    これにより、Apache HTTP Server は mod_cluster が機能するために必要なモジュールを自動的に読み込みます。
  5. プロキシサーバーリスナーを作成します。

    HTTPD_CONF.D/JBoss_HTTP.conf の編集を継続し、大文字の値を環境に適した値に置き換えて、以下の最低限の設定を追加します。
    Listen IP_ADDRESS:PORT
    <VirtualHost IP_ADDRESS:PORT>  
    	  <Location />
              Order deny,allow
              Deny from all
              Allow from *.MYDOMAIN.COM
    	  </Location>
    	  
    	  KeepAliveTimeout 60
    	  MaxKeepAliveRequests 0
    	  EnableMCPMReceive
    	  
    	  ManagerBalancerName mycluster
    	  ServerAdvertise On
    	  
    </VirtualHost>
    これらのディレクティブは、IP_ADDRESS:PORT でリッスンする新しい仮想サーバーを作成し、MYDOMAIN.COM からの接続を許可し、mycluster という名前のバランサーとしてアドバタイズします。これらのディレクティブは、Apache Web Server のドキュメントに記載されています。ServerAdvertise ディレクティブおよび EnableMCPMReceive ディレクティブの詳細とサーバーアドバタイズの影響については、「mod_cluster が有効な Web サーバーに対するサーバーアドバタイズメントプロパティーの設定」 を参照してください。
    ファイルを保存して終了します。
  6. Apache HTTP サーバーを再起動します。

    Apache HTTP Server の再起動方法は、Red Hat Enterprise Linux の Apache HTTP Server を使用しているか、JBoss Enterprise Web Server に含まれる Apache HTTP Server を使用しているかによって異なります。以下の 2 つの方法のいずれかを選択します。
    • Red Hat Enterprise Linux 6 の Apache HTTP Server

      以下のコマンドを実行します。
      [root@host]# service httpd restart
    • JBoss Enterprise Web Server の Apache HTTP Server

      JBoss Enterprise Web Server は、Red Hat Enterprise Linux と Microsoft Windows Server の両方で実行されます。Apache HTTP Server の再起動方法はそれぞれ異なります。
      • Red Hat Enterprise Linux

        Red Hat Enterprise Linux では、JBoss Enterprise Web Server は Apache HTTP Server をサービスとしてインストールします。Apache HTTP Server を再起動するには、以下の 2 つのコマンドを実行します。
        [root@host ~]# service httpd stop
        [root@host ~]# service httpd start
      • Microsoft Windows Server

        コマンドプロンプトで以下のコマンドを管理権限で実行します。
        C:\> net stop httpd
        C:\> net start httpd

結果

Apache HTTP Server がロードバランサーとして設定され、JBoss EAP 6 を実行している mod_cluster サブシステムを使用できるようになりました。JBoss EAP 6 が mod_cluster を認識するよう設定するには、「mod_cluster ワーカーノードの設定」 を参照してください。