16.5.3. Apache HTTPD または JBoss Enterprise Web Server HTTPD への mod_cluster モジュールのインストール (ZIP)

要件

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

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

  1. HTTPD 設定の場所を決定します。

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

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

    JBoss Enterprise Web Server を使用する場合は、 mod_proxy_balancer モジュールがデフォルトで有効になります。これには mod_cluster との互換性がありません。これを無効にするには、HTTPD_HOME/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 ファイル (modules/system/layers/base/native/etc/httpd/conf) が含まれます。このファイルをコピーおよび編集し、HTTPD_HOME/httpd/conf.d/JBoss_HTTP.conf ファイルを作成できます。

    注記

    JBoss_HTTP.conf という名前を使用することは、本書では任意の慣例です。 conf.d/ ディレクトリーに保存され、.conf 拡張子を持つ設定ファイルは、名前に関係なくロードされます。
    以下を設定ファイルに追加します。
    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 HTTPD は、mod_cluster が機能するために必要なモジュールを自動的にロードします。
  5. プロキシサーバーリスナーを作成します。

    HTTPD_HOME/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 On
    	  
    	  ManagerBalancerName mycluster
    	  ServerAdvertise On
    	  
    </VirtualHost>
    これらのディレクティブにより、IP_ADDRESS:PORT でリッスンする新しい仮想サーバーが作成され、MYDOMAIN.COM からの接続が許可され、仮想サーバー自体が mycluster という名前のバランサーとしてアドバタイズされます。これらのディレクティブの詳細は、Apache Web Server 向けドキュメントに記載されています。ServerAdvertise および EnableMCPMReceive ディレクティブの詳細と、サーバーアドバタイジングの影響については、「mod_cluster が有効な HTTPD に対してサーバーアドバタイズメントプロパティーを設定」を参照してください。
    ファイルを保存し、終了します。
  6. HTTPD を再起動します。

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

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

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

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

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

Apache HTTPD が ロードバランサーとして設定され、JBoss EAP 6 が実行されている mod_cluster サブシステムと連携できます。JBoss EAP 6 が mod_cluster を認識するよう設定する場合は「mod_cluster ワーカーノードの設定」を参照してください。