Cosminexus アプリケーションサーバ V8 システム構築・運用ガイド

[目次][用語][索引][前へ][次へ]

8.11.6 各構成定義パターンで使用できる設定と簡易構築定義ファイルの作成

Smart Composer機能を使用して構築するシステムでは,負荷分散機の冗長化や,複数サービスユニットの配置などの設定ができます。Smart Composer機能で構築するシステムで使用できる設定と構成定義パターンとの対応を次の表に示します。ここでは,表8-12に示す設定を定義した簡易構築定義ファイルの作成方法について説明します。

表8-12 Smart Composer機能で構築するシステムで使用できる設定と構成定義パターンとの対応

設定項目 説明 構成定義パターンごとの対応
A B C D E
負荷分散機の冗長化 一つのWebシステム内に負荷分散機をアクティブ・スタンバイ構成で2台配置できます。1台の負荷分散機で障害が発生した場合も業務を続行できます。
サーバマシン内での複数サービスユニットの配置 1台のサーバマシンに複数のサービスユニットを配置できます。サーバマシン中のサーバをサービスユニット単位で増やしてシステムを拡張したり,複数の業務を1台のサーバマシンで運用したりできます。 ※1
異なるWebシステム間での負荷分散機の共有 異なるWebシステム間で,同じ(1台の)負荷分散機を共有できます。
論理ユーザサーバの配置 ユーザが定義したプロセスを論理ユーザサーバとして定義すると,Management Serverで運用管理できるようになります。
JP1/SC/DPMの利用 JP1/SC/DPMでは,構築したシステムのディスクイメージ(OSとアプリケーション)を複製できます。Smart Composer機能を使用したシステムの初期構築や,スケールアウト時に利用できます。 ×※2

(凡例)
○:対応しています。
×:対応していません。
−:該当しません。
A:WebサーバとJ2EEサーバを同じサーバマシンに配置するパターンを示します。
B:WebサーバとJ2EEサーバを別のサーバマシンに配置するパターンを示します。
C:インプロセスHTTPサーバを使用するパターンを示します。
D:SFOサーバを使用するパターンを示します。
E:CTMを使用するパターンを示します。

注※1 同じCTMドメインのサービスユニットは,1サーバマシン内に複数配置できません。

注※2 セッションフェイルオーバサーバマシンでは,JP1/SC/DPMと連携したスケールアウトを利用できません。


<この項の構成>
(1) 負荷分散機を冗長化する場合の簡易構築定義ファイルの作成
(2) サーバマシン内に複数のサービスユニットを配置する場合の簡易構築定義ファイルの作成
(3) 異なるWebシステム間で負荷分散機を共有する場合の簡易構築定義ファイルの作成
(4) 論理ユーザサーバを配置する場合の簡易構築定義ファイルの作成
(5) JP1/SC/DPMを利用する場合の簡易構築定義ファイルの作成

(1) 負荷分散機を冗長化する場合の簡易構築定義ファイルの作成

負荷分散機を冗長化するシステムを構築する場合は,簡易構築定義ファイルの負荷分散機の定義に,負荷分散機2台分(実行系および待機系)の管理IPアドレスを設定する必要があります。

負荷分散機を冗長化した場合の構成情報の例を次の図に示します。なお,ここでは,実行系の負荷分散機を負荷分散機1,待機系の負荷分散機を負荷分散機2として配置している場合を例として説明しています。

図8-15 負荷分散機を冗長化した場合の構成情報の例

[図データ]

図8-15の構成情報に従って,簡易構築定義ファイルを作成します。なお,この例では,「8.4.4 簡易構築定義ファイルの作成」で示す簡易構築定義ファイル(MyWebSystemDef.xml)を基に,負荷分散機を冗長化した場合に差異のある定義について説明します。

MyWebSystemDef.xmlファイルの作成例を,次に示します(一部抜粋)。

MyWebSystemDef.xmlファイル
 
<?xml version="1.0" encoding="UTF-8"?>
<model-definition xmlns="http://www.cosminexus.com/mngsvr/schema/ModelDefinition-2.5">
  <!-- Webシステムの属性定義 -->
  <web-system>
    <name>MyWebSystem</name>
    <!-- 負荷分散機の定義 -->
    <load-balancer>
      <name>MyBIGIPv9</name>
      <load-balancer-type>BIG-IPv9</load-balancer-type>
      <!-- cookieスイッチングの定義 -->
      <cookie-switching>
        <cookie-switching-enabled>true</cookie-switching-enabled>
        <cookie-name>CMX_SERVER_ID</cookie-name>
      </cookie-switching>
      <management-host>192.168.100.10</management-host>
      <redundant-management-host>192.168.100.20</redundant-management-host>
      <!-- 仮想サーバの定義 -->
      <virtual-server>
        <virtual-server-name>www.sample.com</virtual-server-name>
        <ip-address>192.168.1.10</ip-address>
        <http-port>80</http-port>
      </virtual-server>
    </load-balancer>
       :
</model-definition>
 

注 太字の部分が設定の異なる部分です。作成例で使用しているタグおよびパラメタについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6 簡易構築定義ファイル」を参照してください。
参考
冗長化した負荷分散機を複数のWebシステムで共有する場合は,各Webシステムの負荷分散機の定義で,<management-host>タグおよび<redundant-management-host>タグに同じIPアドレスを設定してください。

(2) サーバマシン内に複数のサービスユニットを配置する場合の簡易構築定義ファイルの作成

1台のサーバマシンに複数のサービスユニットを配置すると,1台のサーバマシン内に,同じ種類の論理サーバが複数存在することになります。このため,簡易構築定義ファイルを作成する際には,各論理サーバのコンフィグレーションで,次に示す項目の指定値を重複しないようにしてください。

表8-13 論理サーバごとに重複しないように設定する項目

論理サーバの種類 項目 param-nameの指定値
Webサーバ httpポート番号 Listen
J2EEサーバ 管理用サーバのポート番号 ejbserver.http.port
ajp13のポート番号 webserver.connector.ajp13.port
httpsのポート番号 webserver.connector.redirect_https.port
インプロセスのネーミングサービス用のポート番号 ejbserver.naming.port
インプロセスのHTTPサーバのポート番号 webserver.connector.inprocess_http.port
JTAリカバリの固定ポート番号 ejbserver.distributedtx.recovery.port
RMIレジストリのポート番号 ejbserver.rmi.naming.port
パフォーマンストレーサ PRF識別子 PRFID
SFOサーバ 管理用サーバのポート番号 ejbserver.http.port
ajp13のポート番号 webserver.connector.ajp13.port
インプロセスのネーミングサービス用のポート番号 ejbserver.naming.port
RMIレジストリのポート番号 ejbserver.rmi.naming.port
スマートエージェント スマートエージェントが監視するポート番号 smartagent.port
CTMドメインマネジャ CTMドメインマネジャが属するCTMドメイン名 ctmdomname
CTM実行環境ディレクトリ ctmspool
CTMドメインマネジャがCTMドメイン構成情報を交換するために使用するポート番号 cdm.port
CTM CTMの識別子 ctmid
CTMが使用するポート番号 ctm.port
CTMと対となるネーミングサービスのポート番号 ctm.ns.port

注※ ctmidの設定は省略できます。省略時は,ホスト間で一意になるようにManagement Serverで自動的に設定されます。ctmidの省略値については,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.18 論理CTMで指定できるパラメタ」を参照してください。


参考
1台のサーバマシン内にある複数のサービスユニットを同時に起動しない運用をする場合は,各サービスユニットの同じ種類の論理サーバに同じ値を設定できます。

サーバマシンに配置するサービスユニットが属するWebシステムによって,これらの設定項目をどの定義のコンフィグレーションで指定するかが異なります。

同じWebシステムで,サーバマシン内に複数のサービスユニットを配置する場合の構成情報の例を,次の図に示します。

図8-16 サーバマシン内に複数のサービスユニットを配置する場合の構成情報の例(同一のWebシステムの場合)

[図データ]

図8-16の構成情報に従って,簡易構築定義ファイルを作成します。なお,この例では,「8.4.4 簡易構築定義ファイルの作成」で示す簡易構築定義ファイル(MyWebSystemDef.xml)を基に,同じWebシステムで,サーバマシン内に複数のサービスユニットを配置する場合に差異のある定義について説明します。

MyWebSystemDef.xmlファイルの作成例を,次に示します(一部抜粋)。

MyWebSystemDef.xmlファイル
 
<?xml version="1.0" encoding="UTF-8"?>
<model-definition xmlns="http://www.cosminexus.com/mngsvr/schema/ModelDefinition-2.5">
  <!-- Webシステムの属性定義 -->
  <web-system>
    <name>MyWebSystem</name>
    <!-- 負荷分散機の定義 -->
    <load-balancer>
      :
    <!-- 物理ティアの定義 -->
    <tier>
      <tier-type>combined-tier</tier-type>
      <configuration>
        :
    </tier>
    <!-- サービスユニットの定義 -->
    <unit>
      <name>unit1</name>
      <allocated-host>
        <host-ref>apsv1</host-ref>
        <hosts-for>combined-tier</hosts-for>
      </allocated-host>
    </unit>
    <unit>
      <name>unit2</name>
      <allocated-host>
        <host-ref>apsv2</host-ref>
        <hosts-for>combined-tier</hosts-for>
      </allocated-host>
    </unit>
    <unit>
      <name>unit3</name>
      <allocated-host>
        <host-ref>apsv2</host-ref>
        <hosts-for>combined-tier</hosts-for>
        <!-- Webサーバのコンフィグレーション -->
        <define-server>
          <logical-server-type>web-server</logical-server-type>
          <configuration>
            <!-- httpポート番号 -->
            <param>
              <param-name>Listen</param-name>
              <param-value>81</param-value>
            </param>
          </configuration>
        </define-server>
        <!-- J2EEサーバのコンフィグレーション -->
        <define-server>
          <logical-server-type>j2ee-server</logical-server-type>
          <configuration>
            <!-- 管理用サーバのポート番号 -->
            <param>
              <param-name>ejbserver.http.port</param-name>
              <param-value>8081</param-value>
            </param>
            <!-- ajp13のポート番号 -->
            <param>
              <param-name>webserver.connector.ajp13.port</param-name>
              <param-value>8008</param-value>
            </param>
            <!-- インプロセスネーミングサービス用のポート番号 -->
            <param>
              <param-name>ejbserver.naming.port</param-name>
              <param-value>901</param-value>
            </param>
            <!-- JTAリカバリの固定ポート番号 -->
            <param>
              <param-name>ejbserver.distributedtx.recovery.port</param-name>
              <param-value>20303</param-value>
            </param>
            <!-- RMIレジストリのポート番号 -->
            <param>
              <param-name>ejbserver.rmi.naming.port</param-name>
              <param-value>23153</param-value>
            </param>
          </configuration>
        </define-server>
        <!-- パフォーマンストレーサのコンフィグレーション -->
        <define-server>
          <logical-server-type>performance-tracer</logical-server-type>
          <configuration>
            <!-- PRF識別子 -->
            <param>
              <param-name>PRFID</param-name>
              <param-value>PRF_ID2</param-value>
            </param>
          </configuration>
        </define-server>
      </allocated-host>
    </unit>
  </web-system>
  <!-- ホストの定義 -->
  <host>
    <host-name>apsv1</host-name>
    <agent-host>192.168.100.11</agent-host>
  </host>
  <host>
    <host-name>apsv2</host-name>
    <agent-host>192.168.100.12</agent-host>
  </host>
</model-definition>
 

注 太字の部分が設定の異なる部分です。作成例で使用しているタグおよびパラメタについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6 簡易構築定義ファイル」を参照してください。

(3) 異なるWebシステム間で負荷分散機を共有する場合の簡易構築定義ファイルの作成

異なるWebシステムのサービスユニットを1台のサーバマシンに配置する場合に,簡易構築定義ファイルで重複しないように設定する項目については,「(2) サーバマシン内に複数のサービスユニットを配置する場合の簡易構築定義ファイルの作成」を参照してください。

異なるWebシステム間で1台の負荷分散機を共有する場合は,それぞれのWebシステムで使用する負荷分散機の仮想サーバを分ける必要があります。

また,簡易構築定義ファイルでは,次の定義で注意が必要です。

異なるWebシステム間で負荷分散機を共有する場合の構成情報の例を,次の図に示します。

図8-17 異なるWebシステム間で負荷分散機を共有する場合の構成情報の例

[図データ]

図8-17の構成情報に従って,簡易構築定義ファイルを作成します。なお,この例では,「8.4.4 簡易構築定義ファイルの作成」で示す簡易構築定義ファイル(MyWebSystemDef.xml)を基に,次の設定をする場合に差異のある定義について説明します。

さらに,ACOSの場合は,次の1.または2.の条件を満たす構成のとき,自動的にポート変換する設定(オートトランスレーション機能の使用)が必要です。

  1. 仮想サーバまたは実サーバに設定したポート番号が1023より大きいとき(well-knownでないとき)
  2. 実サーバのポート番号とそれに対応する仮想サーバのポート番号が異なるとき
    例:仮想サーバのポート番号は80だが,振り分け先のポート番号は8081にしたいとき

オートトランスレーション機能の設定は,あらかじめ負荷分散機に対して実施しておいてください。設定の詳細については,ACOSのドキュメントを参照してください。

 

MyWebSystemDef.xmlファイルの作成例を,次に示します(一部抜粋)。

MyWebSystemDef.xmlファイル
 
<?xml version="1.0" encoding="UTF-8"?>
<model-definition xmlns="http://www.cosminexus.com/mngsvr/schema/ModelDefinition-2.5">
  <!-- Webシステム1の属性定義 -->
  <web-system>
    <name>MyWebSystem1</name>
    <!-- 負荷分散機の定義 -->
    <load-balancer>
      <name>MyBIGIPv9</name>
      <load-balancer-type>BIG-IPv9</load-balancer-type>
      <!-- cookieスイッチングの定義 -->
      <cookie-switching>
        <cookie-switching-enabled>true</cookie-switching-enabled>
        <cookie-name>CMX_SERVER_ID</cookie-name>
      </cookie-switching>
      <management-host>192.168.100.10</management-host>
      <!-- 仮想サーバ1の定義 -->
      <virtual-server>
        <virtual-server-name>www.sample1.com</virtual-server-name>
        <ip-address>192.168.1.10</ip-address>
        <http-port>80</http-port>
      </virtual-server>
    </load-balancer>
    <!-- 物理ティアの定義 -->
    <tier>
      <tier-type>combined-tier</tier-type>
      <configuration>
        <logical-server-type>j2ee-server</logical-server-type>
        <param>
           <param-name>webserver.container.server_id.enabled</param-name>
           <param-value>true</param-value>
        </param>
      </configuration>
    </tier>
    <!-- サービスユニットの定義 -->
    <unit>
      <name>unit1</name>
      <allocated-host>
        <host-ref>apsv1</host-ref>
        <hosts-for>combined-tier</hosts-for>
      </allocated-host>
    </unit>
    <unit>
      <name>unit2</name>
      <allocated-host>
        <host-ref>apsv2</host-ref>
        <hosts-for>combined-tier</hosts-for>
      </allocated-host>
    </unit>
  </web-system>
  <!-- Webシステム2の属性定義 -->
  <web-system>
    <name>MyWebSystem2</name>
    <!-- 負荷分散機の定義 -->
    <load-balancer>
      <name>MyBIGIPv9</name>
      <load-balancer-type>BIG-IPv9</load-balancer-type>
      <!-- cookieスイッチングの定義 -->
      <cookie-switching>
        <cookie-switching-enabled>true</cookie-switching-enabled>
        <cookie-name>CMX_SERVER_ID</cookie-name>
      </cookie-switching>
      <management-host>192.168.100.10</management-host>
      <!-- 仮想サーバ2の定義 -->
      <virtual-server>
        <virtual-server-name>www.sample2.com</virtual-server-name>
        <ip-address>192.168.1.20</ip-address>
        <http-port>81</http-port>
      </virtual-server>
    </load-balancer>
    <!-- 物理ティアの定義 -->
    <tier>
      <tier-type>combined-tier</tier-type>
      <configuration>
        <logical-server-type>j2ee-server</logical-server-type>
        <param>
           <param-name>webserver.container.server_id.enabled</param-name>
           <param-value>true</param-value>
        </param>
        <!-- 管理用サーバのポート番号 -->
        <param>
          <param-name>ejbserver.http.port</param-name>
          <param-value>8081</param-value>
        </param>
        <!-- ajp13のポート番号 -->
        <param>
          <param-name>webserver.connector.ajp13.port</param-name>
          <param-value>8008</param-value>
        </param>
        <!-- インプロセスネーミングサービス用のポート番号 -->
        <param>
          <param-name>ejbserver.naming.port</param-name>
          <param-value>901</param-value>
        </param>
        <!-- JTAリカバリの固定ポート番号 -->
        <param>
          <param-name>ejbserver.distributedtx.recovery.port</param-name>
          <param-value>20303</param-value>
        </param>
        <!-- RMIレジストリのポート番号 -->
        <param>
          <param-name>ejbserver.rmi.naming.port</param-name>
          <param-value>23153</param-value>
        </param>
      </configuration>
      <configuration>
        <logical-server-type>web-server</logical-server-type>
        <!-- httpポート番号 -->
        <param>
          <param-name>Listen</param-name>
          <param-value>81</param-value>
       </param>
      </configuration>
      <configuration>
        <logical-server-type>performance-tracer</logical-server-type>
        <!-- PRF識別子 -->
        <param>
          <param-name>PRFID</param-name>
          <param-value>PRF_ID2</param-value>
        </param>
      </configuration>
    </tier>
    <!-- サービスユニットの定義 -->
    <unit>
      <name>unit3</name>
      <allocated-host>
        <host-ref>apsv2</host-ref>
        <hosts-for>combined-tier</hosts-for>
      </allocated-host>
    </unit>
      :
  </web-system>
  <!-- ホストの定義 -->
  <host>
    <host-name>apsv1</host-name>
    <agent-host>192.168.100.11</agent-host>
  </host>
  <host>
    <host-name>apsv2</host-name>
    <agent-host>192.168.100.12</agent-host>
  </host>
</model-definition>
 

注 太字の部分が設定の異なる部分です。作成例で使用しているタグおよびパラメタについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6 簡易構築定義ファイル」を参照してください。

(4) 論理ユーザサーバを配置する場合の簡易構築定義ファイルの作成

Smart Composer機能で構築するシステムの場合,簡易構築定義ファイルで論理ユーザサーバを設定できます。

論理ユーザサーバは,サービスユニットに対応づけて配置します。このため,簡易構築定義ファイルで論理ユーザサーバの環境設定を定義する場合は,サービスユニットの定義でパラメタを設定してください。

論理ユーザサーバを配置する場合の構成情報の例を,次の図に示します。

図8-18 論理ユーザサーバを配置する場合の構成情報

[図データ]

図8-18の構成情報に従って,簡易構築定義ファイルを作成します。なお,この例では,「8.4.4 簡易構築定義ファイルの作成」で示す簡易構築定義ファイル(MyWebSystemDef.xml)を基に,論理ユーザサーバを配置する場合に差異のある定義について説明します。

MyWebSystemDef.xmlファイルの作成例を,次に示します(一部抜粋)。

MyWebSystemDef.xmlファイル
 
<?xml version="1.0" encoding="UTF-8"?>
<model-definition xmlns="http://www.cosminexus.com/mngsvr/schema/ModelDefinition-2.5">
  <!-- Webシステムの属性定義 -->
  <web-system>
    <name>MyWebSystem</name>
    <!-- 負荷分散機の定義 -->
    <load-balancer>
        :
    </load-balancer>
    <!-- 物理ティアの定義 -->
    <tier>
      <tier-type>combined-tier</tier-type>
    </tier>
    <!-- サービスユニットの定義 -->
    <unit>
      <name>unit1</name>
      <allocated-host>
        <host-ref>host1</host-ref>
        <hosts-for>combined-tier</hosts-for>
        <define-server>
        <logical-server-name>UserServer1</logical-server-name>
        <logical-server-type>user-server</logical-server-type>
          <configuration>
          <param>
          <!-- サーバ起動用コマンド -->
            <param-name>start.arg</param-name>
            <param-value>c:/test/start.exe</param-value>
          </param>
          </configuration>
        </define-server>
        <define-server>
        <logical-server-name>UserServer2</logical-server-name>
        <logical-server-type>user-server</logical-server-type>
          <configuration>
          <param>
          <!-- サーバ起動用コマンド -->
            <param-name>start.arg</param-name>
            <param-value>c:/test/start.exe</param-value>
          </param>
          </configuration>
        </define-server>
      </allocated-host>
    </unit>
    <unit>
      <name>unit2</name>
      <allocated-host>
        <host-ref>host1</host-ref>
        <hosts-for>combined-tier</hosts-for>
        <define-server>
      <logical-server-name>UserServer3</logical-server-name>
      <logical-server-type>user-server</logical-server-type>
          <configuration>
          <param>
          <!-- サーバ起動用コマンド -->
            <param-name>start.arg</param-name>
            <param-value>c:/test/start.exe</param-value>
          </param>
          </configuration>
        </define-server>
      </allocated-host>
    </unit>
  </web-system>
  <!-- ホストの定義 -->
  <host>
    :
  </host>
</model-definition>
 

注 論理ユーザサーバのパラメタは,物理ティアの定義には設定できません。論理ユーザサーバのパラメタを設定する場合は,サービスユニットの定義に設定してください。作成例で使用しているタグおよびパラメタについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.6 簡易構築定義ファイル」を参照してください。
参考
論理ユーザサーバを配置するシステムをスケールアウトする場合は,構成変更定義ファイルのサービスユニットの定義で,追加する論理ユーザサーバを定義してください。構成変更定義ファイルのサービスユニットの定義例は,「9.6.1 WebサーバとJ2EEサーバを同じサーバマシンに配置するパターン(combined-tier)のシステムのスケールアウト」を参照してください。

(5) JP1/SC/DPMを利用する場合の簡易構築定義ファイルの作成

JP1/SC/DPMを利用してシステムを構築する場合は,簡易構築定義ファイルの物理ティアの定義で,WebサーバおよびJ2EEサーバのコンフィグレーション(<configuration>タグ)の設定が必要になります。

JP1/SC/DPMを利用してシステムを構築する場合に,物理ティアの定義で設定が必要なパラメタを次の表に示します。なお,この表に示すパラメタは,選定した構成定義パターンで定義する論理サーバで設定してください。

表8-14 JP1/SC/DPMを利用してシステムを構築する場合に,物理ティアの定義で設定が必要なパラメタ

論理サーバの種類(<tier>タグ配下の<logical-server-type>タグの指定値) <param-name>タグの指定値 <param-value>タグの指定値
web-server realservername 実サーバ名
Listen.host.value true
j2ee-server realservername 実サーバ名
webserver.connector.http.bind_host.value true
webserver.connector.ajp13.bind_host.value true
manager.mevent.sender.bind.host.value true
vbroker.se.iiop_tp.host.value true
mngagent.connector.host.value true
CTM ctm.NsBindHost true

注 CTMを使用するパターン(ctm-tier)を構築する場合に,ホスト単位管理モデルを使用するときは,ctmid(CTM識別子)の設定を省略することをお勧めします。ctmidの省略値については,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.18 論理CTMで指定できるパラメタ」を参照してください。

注※ Management Serverが稼働するホスト(サーバマシン)が,複数個のIPアドレスを持っている構成の場合に設定が必要です。