Apache HTTP Server を使用して Rational DOORS Web Access のロード・バランシングを構成

ロード・バランシングを使用すれば、システムのパフォーマンスを向上させ、システムの可用性を高めることができます。 ロード・バランシングを使用することにより、タスクが、使用可能なすべてのプロセッサーに分散され、処理能力およびスケーラビリティーが向上します。 Apache HTTP Server を 使用すれば、IBM® Rational® DOORS® Web Access 用に ロード・バランシングを構成できます。

始める前に

ロード・バランシングを構成する前に、以下の手順を実行します。 詳しくは、下にある関連トピック・リンクを参照してください。
  1. Rational DOORS Web Access をインストールします。 ただし、Rational DOORS Web Access のコンポーネントもサーバーも始動しないでください。 詳しくは、『Rational DOORS Web Access のインストール』を参照してください。
  2. 通信を行うように Rational DOORS Web Access コンポーネントを構成します。 詳しくは、『Rational DOORS Web Access コンポーネントの通信のための構成』を 参照してください。
  3. Apache HTTP Server をインストールします。 詳しくは、「Apache HTTP Server Project」を参照してください。

このタスクについて

この手順では、以下のステップを実行します。
  1. SSL 鍵ストアを準備します。
  2. Rational DOORS Web Access サーバー 1 をロード・バランシング・サーバーとして構成します。
  3. Rational DOORS Web Access サーバー 2 から n までをロード・バランシング・サーバーとして構成します。
  4. httpd.conf ファイルおよび httpd-ssl.conf ファイルを変更します。
  5. Apache HTTP Server を始動します。
  6. Rational DOORS Web Access コンポーネントを開始します。
  7. Rational DOORS Web Access サーバー 1 を始動します。
  8. Rational DOORS Web Access サーバー 2 から n までを始動します。

この手順のために、パブリック・アクセス用にポート 8443 を公開するように Apache HTTP Server が構成されているものとします。 要求はすべて内部サーバー (ポート 7443 上の private_host_1 や、ポート 6443 上の private_host_2 など) に リダイレクトされます。 ご使用の環境によっては、Apache Tomcat の構成において使用することになっているポートが、ポートの競合を避けるために別の値に設定されることもあります。

手順

  1. 有効な SSL 証明書鍵ファイルを、ご使用のシステム上のアクセス可能な場所に配置します。
  2. Rational DOORS Web Access サーバー 1 から n までをロード・バランシング・サーバーとして構成します。
    1. festival.xml ファイル (/server/festival/config/ ディレクトリーにある) を開きます。 instanceId パラメーターを次の形式の固有値に設定します。
      48819f14-cecd-49d2-a91a-20e646b83f71
    2. その値をクラスター内の各サーバー上でコピーして大きい値にします。 例えば、次のようにします。

      サーバー 2 では、48819f14-cecd-49d2-a91a-20e646b83f72 を使用します。

      サーバー 3 では、48819f14-cecd-49d2-a91a-20e646b83f73 を使用します。
    3. server.xml ファイル (server/conf ディレクトリーにある) を開きます。 固有の値セットがクラスター内の各サーバーに設定されるように、ファイル内のすべてのポート設定を固有値に変更します。 以下の値を変更してください。
      Server port="8005"
      Connector port="8080"
      redirectPort="8443" 
      port="8443"
      Connector port="8009" 
    4. server.xml ファイルにおいて jvmRoute をエンジン・エレメントに追加します。 次の項目を変更してください。
      <Engine name="Catalina" defaultHost="localhost">
      変更後の値は次のようになります。
      <Engine name="Catalina" defaultHost="localhost" jvmRoute="DWAbalance1">

      jvmRoute 値は、Rational DOORS Web Access サーバー・インスタンスごとに固有です。

      その値は、3.c に示されているように、Apache Web サーバーでの ルーティング割り当てに対応しています。 ロード・バランシング・サーバーでは、スティッキー・セッションをサポートするためにルーティング割り当てが使用されます。 スティッキー・セッションにより、単一セッションで複数のユーザー要求が同じサーバーに送信されます。

    5. Rational DOORS Web Access サーバーごとに、上のステップを繰り返します。 サーバーごとに jvmRoute 値を 増やしてください (例: DWAbalance3DWAbalance4DWAbalance5)。
  3. httpd.conf ファイルを編集して、SSL 要求を処理するように Apache HTTP Server を構成します。 このファイルは、Apache インストール済み環境内の conf ディレクトリーにあります。
    1. 以下のモジュールのコメントを外します。
      • LoadModule proxy_module modules/mod_proxy.so
      • LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
      • LoadModule proxy_http_module modules/mod_proxy_http.so
      • LoadModule status_module modules/mod_status.so
      • LoadModule ssl_module modules/mod_ssl.so
    2. SSL 構成セクション (#Secure (SSL/TLS) connections で始まるセクション) に移動します。
    3. 以下の項目を追加します。 必ず、クラスター内のサーバーごとに固有の ProxyPassReverse 項目および BalancerMember 項目を追加してください。
      #
      # reverse proxy
      #
      SSLProxyEngine On
      ProxyPreserveHost On
      
      ProxyPass /balancer-manager !
      ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
      
      ProxyPassReverse / https://private_host_1:7443/
      ProxyPassReverse / https://private_host_n:6443/
      <Proxy balancer://mycluster>
         BalancerMember https://private_host_1:7443 route=DWAbalance1 loadfactor=50   
         BalancerMember https://private_host_n:6443 route=DWAbalance2 loadfactor=50
         # Add an entry for each BalancerMember in your cluster.
      </Proxy>
      private_host_1 から private_host_n までを、 各サーバーの完全修飾ホスト名 (例: server1.example.com) に変更します。 ロード・バランシング・クラスター内のホストごとに BalancerMember 項目を追加します。 必ず、各サーバー上の Apache Tomcat 用に構成されているポート番号を使用してください。
    4. 次の行のコメントを外します。
      Include conf/extra/httpd-ssl.conf
      ロード・バランシング用に Apache HTTP Server を構成する方法について 詳しくは、The Apache Software Foundation 資料の「Apache モジュール mod_proxy_balancer」を 参照してください。
    5. オプション: ロード・バランサー状況を表示するには、以下の項目を httpd.conf ファイルに追加します。
      ProxyPass /balancer-manager !
      <Location /balancer-manager>
        SetHandler balancer-manager
        Order Deny,Allow
        Allow from your host.domain or another host
        Deny from all
      </Location>

      アクセス制御について 詳しくは、The Apache Software Foundation 資料の「Access Control」を 参照してください。

  4. httpd-ssl.conf ファイル (Apache インストール済み環境内の /conf/extra ディレクトリーにある) を編集します。
    1. SSL が構成されているホスト名とポートを更新します。
    2. 以下の設定などを必要に応じて更新します。
      • SSLCertificateFile
      • SSLCertificateKeyFile
      注: SSLCertificateKeyFile 鍵ファイルがパスワードで保護されている場合は、 サーバーを始動するたびにパスワードを入力する必要があります。 パスワードは削除できますが、パスワードを削除する前に、 パスワードを削除することによりご使用の環境で発生するセキュリティー関連事項について考慮してください。
      HTTP SSL ファイルの編集について 詳しくは、The Apache Software Foundation 資料の「Apache コア機能」および「Apache Module mod_ssl」を 参照してください。
  5. Apache HTTP Server を始動します。 エラーはすべて error.log ファイル(Apache インストール済み環境の /logs フォルダーにある) に書き込まれます。
  6. 両方のサーバー上で Rational DOORS Web Access コンポーネントを開始します。
  7. Rational DOORS Web Access サーバー 1 から n までを始動します。

フィードバック