9.8.2 ホスト単位管理モデルでのシステムのスケールアウト

ここでは,ホスト単位管理モデルでの,システムのスケールアウトの準備およびスケールアウトで実施する内容について説明します。

スケールアウトの準備
システムのスケールアウトの準備とは,複製元のディスクイメージを作成する作業です。システム構築が終わって,運用環境が整ったところで実施します。スケールアウトの準備では次の内容を実施します。
  1. 複製元アプリケーションサーバでの準備
  2. スケールアウト用ディスクイメージの作成
スケールアウト
複製したディスクイメージを使用して,スケールアウトをします。スケールアウトでは,次の内容を実施します。
  1. ディスクイメージのリストア
  2. スケールアウト用ホスト定義ファイルの作成
  3. システムの情報モデルの変更(複製先アプリケーションサーバのホスト情報変更)

注意
JP1/AJS2 - SOを使用してシステムのスケールアウトを自動化する場合
JP1/SC/DPMを使用したシステムのスケールアウトを,JP1/AJS2 - SOを使用して自動化する場合,ディスク複製インストール(リストア)が完了してから運用管理エージェントを自動起動するように設定する必要があります。設定方法については,マニュアル「JP1/ServerConductor/Deployment Manager」を参照してください。また,JP1/AJS2 - SOとの連携については,マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用/監視/連携編」の「16. シナリオによるシステムの自動運転(JP1/AJS2 - SOとの連携)」を参照してください。

ここで使用するJP1/SC/DPMを利用したスケールアウトの例を次の図に示します。

図9-2 JP1/SC/DPMを利用したスケールアウトの例(ホスト単位管理モデルの場合)

[図データ]

この図では,JP1/SC/DPMを使用して,アプリケーションサーバ1のディスクイメージを複製し,そのディスクイメージに従って,新たなアプリケーションサーバにOSやアプリケーションをインストールします。次に,Smart Composer機能のコマンドを使用して,複製先アプリケーションサーバの情報をシステムにスケールアウトします。この例で使用するアプリケーションサーバの設定例を次の表に示します。

表9-25 各アプリケーションサーバの設定例(ホスト単位管理モデルの場合)

設定項目複製元アプリケーションサーバ複製先アプリケーションサーバ
WebシステムWebシステム名MyWebSystem1MyWebSystem1
サービスユニットサービスユニット名unit1unit1※1
ホスト名apsv1apsv1※1
ホストホスト名apsv1apsv1※1
IPアドレス192.168.1.11192.168.1.13
管理IPアドレス192.168.100.11192.168.100.13
注※
アプリケーションサーバ(運用管理ドメイン)ごと複製するため,複製先アプリケーションサーバのWebシステム,サービスユニット,ホストの名称は,複製元と同じになります。

なお,Webシステムの構成を変更するとWebシステムが動作するために必要なリソースも変更する必要があります。Webシステムが動作するために必要なリソースの見積もりについては,マニュアル「Cosminexus アプリケーションサーバ システム設計ガイド」の「5. 使用するリソースの見積もり(J2EEアプリケーション実行基盤)」を参照してください。

参考
サーバ管理コマンドの指定値について
サーバ管理コマンドの引数に指定するサーバ名
サーバ管理コマンドの引数に指定するサーバ名は実サーバ名です。簡易構築定義ファイル作成時に実サーバ名を設定していない場合,実サーバ名は論理サーバ名と同じです。なお,論理サーバ名の設定を省略している場合,論理サーバ名は「cmx_<Webシステム名>_<サービスユニット名>_<種別>_<通番>」の形式で定義されます。論理サーバの種類と<種別>との対応を次の表に示します。

表9-26 論理サーバの種類と<種別>との対応

論理サーバの種類<種別>
論理WebサーバHTTP
論理J2EEサーバJ2EE
論理パフォーマンストレーサPRF
論理SFOサーバSFO
論理CTMドメインマネジャCTMDM
論理CTMCTM
論理スマートエージェントSA
論理ユーザサーバUSER
なお,<通番>は,基本的に「01」が設定されます。ただし,CTMを使用するシステムのように論理サーバを複数配置する場合は,重複しない番号が割り振られます。
<この項の構成>
(1) 複製元アプリケーションサーバでの準備
(2) JP1/SC/DPMを使用したスケールアウト用ディスクイメージの作成
(3) JP1/SC/DPMを使用したディスクイメージのリストア
(4) スケールアウト用ホスト定義ファイルの作成
(5) システムの情報モデルの変更(複製先アプリケーションサーバのホスト情報変更)

(1) 複製元アプリケーションサーバでの準備

複製元アプリケーションサーバで,JP1/SC/DPMによるディスクイメージ作成のための準備をします。

  1. リソースアダプタおよびJ2EEアプリケーションを停止します(必要に応じて)。
    複製先アプリケーションサーバで,リソースアダプタおよびJ2EEアプリケーションを自動で開始する場合には,この操作は不要です。
    ここでは,次の内容を実施します。
    • サーバ管理コマンドを使用して,サービスユニット「unit1」のJ2EEアプリケーションを停止します。
    • サーバ管理コマンドを使用して,サービスユニット「unit1」のリソースアダプタを停止します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjstopapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -name MyApp

    <Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjstoprar cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -resname DB_Connector_for_HiRDB_Type4

    Linuxの場合

    # /opt/Cosminexus/CC/admin/bin/cjstopapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -name MyApp

    # /opt/Cosminexus/CC/admin/bin/cjstoprar cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -resname DB_Connector_for_HiRDB_Type4

  2. サービスユニット,運用管理エージェント,およびManagement Serverを停止します。
    ここでは,次の内容を実施します。
    • cmx_stop_targetコマンドを使用して,サービスユニット「unit1」を停止します。
    • adminagentctlコマンドを使用して,運用管理エージェントを停止します。
    • mngsvrctlコマンドを使用して,Management Serverを停止します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥cmx_stop_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem1 -unit unit1

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥adminagentctl stop

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥mngsvrctl stop

    Linuxの場合

    # /opt/Cosminexus/manager/bin/cmx_stop_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem1 -unit unit1

    # /opt/Cosminexus/manager/bin/adminagentctl stop

    # /opt/Cosminexus/manager/bin/mngsvrctl stop

  3. 運用管理エージェント,およびManagement Serverのサービスを手動起動に設定します。
    ここでは,次の内容を実施します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥mngautorun -d

    Linuxの場合

    # rm /etc/rc.d/rc2.d/S80AdminAgent
    # rm /etc/rc.d/rc2.d/S90MngSvr

  4. デフォルトのJ2EEサーバをアンセットアップします。
    インストール時にホスト名で作成されているデフォルトのJ2EEサーバをアンセットアップします。
    ここでは,次の内容を実施します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥CC¥server¥bin¥cjsetup -d apsv1

    Linuxの場合

    # /opt/Cosminexus/CC/server/bin/cjsetup -d apsv1

  5. ログを削除します。
    ログファイルを削除します。削除対象ログファイルが格納されているディレクトリについては,「付録B JP1/SC/DPMを利用したスケールアウト時に削除するログファイル」を参照してください。
  6. 次のファイルを編集します。
    編集対象のファイルおよびキーと,指定値を次の表に示します。

    表9-27 編集対象のファイルおよびキーと,指定値

    ファイル名称キー名称指定値
    .cmxrc(クライアント設定プロパティファイル)cmx.lbkeepvs
    cmxclient.properties(クライアント共通設定プロパティファイル)cmx.lbkeepvs
    adminagent.properties(運用管理エージェントプロパティファイル)adminagent.adapter.allowedHostsmserver.properties(Management Server環境設定ファイル)のmngsvr.myhost.nameキーを指定しているかどうかで指定値が異なります。
    mngsvr.myhost.nameキーを指定している場合
    mserver.properties(Management Server環境設定ファイル)のmngsvr.myhost.nameキーと同じ値を指定します。
    mngsvr.myhost.nameキーを指定していない場合
    複製元アプリケーションサーバマシンおよび複製先アプリケーションサーバマシンの管理IPアドレスの,両方にマッチする正規表現を指定します。

    注※ adminagentcheckコマンドは,このキーで指定したIPアドレスのアプリケーションサーバマシン以外では実行できません。adminagentcheckコマンドについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「adminagentcheck(運用管理エージェントの稼働確認)」を参照してください。


    また,次の表に示すキーに,ループバックアドレス以外を指定している場合は,複製元アプリケーションサーバマシンおよび複製先アプリケーションサーバマシンで,共通して使用できる管理IPアドレスとマッチする正規表現に変更してください。ループバックアドレス以外を指定している場合に,IPアドレスを正規表現に変更するキーを次の表に示します。

    表9-28 ループバックアドレス以外を指定している場合に,IPアドレスを正規表現に変更するキー

    ファイル名称キー名称
    .mngsvrutilrc(mngsvrutilコマンドのクライアント側定義ファイル)mngsvrutil.connect.host
    mngsvrutil.target_name
    mngsvrutilcl.properties(mngsvrutilコマンドのクライアント側共通定義ファイル)mngsvrutil.connect.host
    mngsvrutil.target_name
    .cmxrc(クライアント設定プロパティファイル)cmx.connect.host
    cmxclient.properties(クライアント共通設定プロパティファイル)cmx.connect.host

    各ファイルについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の次の個所を参照してください。
    • 4.3 .cmxrc(クライアント設定プロパティファイル)
    • 4.4 cmxclient.properties(クライアント共通設定プロパティファイル)
    • 10.2 adminagent.properties(運用管理エージェントプロパティファイル)
    • 10.15 .mngsvrutilrc(mngsvrutilコマンドのクライアント側定義ファイル)
    • 10.17 mngsvrutilcl.properties(mngsvrutilコマンドのクライアント側共通定義ファイル)

注意
JP1/SC/DPMを使用してスケールアウトする場合,複製先アプリケーションサーバマシンが複数のIPアドレスで構成されているときは,次の表に示すキーに設定するIPアドレスを正規表現で指定する必要があります。これは,スケールアウトするマシンはIPアドレスが変わり,固定のIPアドレスが指定できないためです。
複数のIPアドレス構成時に,IPアドレスを正規表現で指定するキーを次の表に示します。

表9-29 複数のIPアドレス構成時に,IPアドレスを正規表現で指定するキー

ファイル名称キー名称
mserver.properties(Management Server環境設定ファイル)mngsvr.myhost.name
webserver.connector.http.bind_host
adminagent.properties(運用管理エージェントプロパティファイル)adminagent.adapter.bind_host
なお,mserver.properties(Management Server環境設定ファイル)については,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.7 mserver.properties(Management Server環境設定ファイル)」を参照してください。adminagent.properties(運用管理エージェントプロパティファイル)については,マニュアル「Cosminexus アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「10.2 adminagent.properties(運用管理エージェントプロパティファイル)」を参照してください。

(2) JP1/SC/DPMを使用したスケールアウト用ディスクイメージの作成

JP1/SC/DPMを使用して複製元アプリケーションサーバからディスクイメージを作成します。なお,複製元アプリケーションサーバは,ディスクイメージの作成後,業務を再開します。

  1. スケールアウト用ディスクイメージを作成します。
    複製元アプリケーションサーバから,スケールアウト用のディスクイメージを作成します。なお,詳細については,マニュアル「JP1/ServerConductor/Deployment Manager」のディスク複製OSインストール機能の説明を参照してください。
  2. 複製元アプリケーションサーバの運用管理エージェント,およびManagement Serverを開始します。
    ここでは,次の内容を実施します。
    • adminagentctlコマンドを使用して,複製元アプリケーションサーバの運用管理エージェントを開始します。
    • mngsvrctlコマンドを使用して,複製元アプリケーションサーバのManagement Serverを開始します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥adminagentctl start

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥mngsvrctl start

    Linuxの場合

    # /opt/Cosminexus/manager/bin/adminagentctl start

    # /opt/Cosminexus/manager/bin/mngsvrctl start

    なお,必要に応じて,運用管理エージェントおよびManagement Serverの自動起動を再設定してください。運用管理エージェントの設定方法については,「7.7.1(2) 運用管理エージェントの自動起動の設定」を,Management Serverの設定方法については,「7.7.2(2) Management Serverの自動起動の設定」を参照してください。
  3. 複製元アプリケーションサーバのリソースアダプタおよびJ2EEアプリケーションを開始します(必要に応じて)。
    リソースアダプタおよびJ2EEアプリケーションを自動で開始する場合,この操作は不要です。
    ここでは,次の内容を実施します。
    • cmx_start_targetコマンドを使用して,複製元アプリケーションサーバのサービスユニット「unit1」を準備状態で起動します。準備状態にするには,-modeオプションに「READY」を指定します。
    • サーバ管理コマンドを使用して,複製元アプリケーションサーバのサービスユニット「unit1」のリソースアダプタを開始します。
    • サーバ管理コマンドを使用して,複製元アプリケーションサーバのサービスユニット「unit1」のJ2EEアプリケーションを開始します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode READY -s MyWebSystem1 -unit unit1

    <Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjstartrar cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -resname DB_Connector_for_HiRDB_Type4

    <Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjstartapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -name MyApp

    Linuxの場合

    # /opt/Cosminexus/manager/bin/cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode READY -s MyWebSystem1 -unit unit1

    # /opt/Cosminexus/CC/admin/bin/cjstartrar cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -resname DB_Connector_for_HiRDB_Type4

    # /opt/Cosminexus/CC/admin/bin/cjstartapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -name MyApp

  4. 複製元アプリケーションサーバのサービスユニットを開始します。
    cmx_start_targetコマンドを使用して,複製元アプリケーションサーバのサービスユニット「unit1」を稼働状態で起動します。稼働状態にするには,-modeオプションに「ALL」を指定します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem1 -unit unit1

    Linuxの場合

    # /opt/Cosminexus/manager/bin/cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem1 -unit unit1

(3) JP1/SC/DPMを使用したディスクイメージのリストア

作成したディスクイメージを,複製先アプリケーションサーバにリストアします。なお,リストアの操作手順については,マニュアル「JP1/ServerConductor/Deployment Manager」を参照してください。

また,複製先アプリケーションサーバの運用管理エージェント,およびManagement Serverを起動する場合は,ここで実施します。

Windowsの場合

<Cosminexusのインストールディレクトリ>¥manager¥bin¥adminagentctl start

<Cosminexusのインストールディレクトリ>¥manager¥bin¥mngsvrctl start

Linuxの場合

# /opt/Cosminexus/manager/bin/adminagentctl start

# /opt/Cosminexus/manager/bin/mngsvrctl start

なお,必要に応じて,運用管理エージェントおよびManagement Serverの自動起動を再設定してください。運用管理エージェントの自動起動の設定については,「7.7.1(2) 運用管理エージェントの自動起動の設定」を,Management Serverの自動起動の設定については,「7.7.2(2) Management Serverの自動起動の設定」を参照してください。

(4) スケールアウト用ホスト定義ファイルの作成

スケールアウト用ホスト定義ファイルを任意の場所にコピーして,ファイルの内容を編集します。

  1. スケールアウト用ホスト定義ファイルを作成します。
    スケールアウト用ホスト定義ファイル(cmxscaleouthostdef.xmlファイル)は,次の場所に提供されています。
    • Windowsの場合
      <Cosminexusのインストールディレクトリ>¥manager¥config¥templates¥
    • Linuxの場合
      /opt/Cosminexus/manager/config/templates/
    このファイルをコピーし,名称を変更して,任意の場所に格納します。なお,ここではファイル名を「MyWebSystemHostScaleout.xml」に変更しています。
  2. コピーしたスケールアウト用ホスト定義ファイルを編集します。
    MyWebSystemHostScaleout.xmlファイルを編集します。ここでは,複製先アプリケーションサーバのWebシステムの内容と,ホストの定義をします。
    設定後のMyWebSystemHostScaleout.xmlファイルを次に示します。

    <?xml version="1.0" encoding="UTF-8"?>
    <host-scaleout xmlns="http://www.cosminexus.com/mngsvr/schema/HostScaleOut-2.5">
     <!-- 複製先のWebシステムの定義 -->
     <web-system>
       <name>MyWebSystem1</name>
     </web-system>
     <!-- 複製先のホストの定義 -->
     <host>
       <host-name>192.168.1.13</host-name>
       <agent-host>192.168.100.13</agent-host>
     </host>
    </host-scaleout>

    注 太字の部分が編集部分です。

(5) システムの情報モデルの変更(複製先アプリケーションサーバのホスト情報変更)

作成したスケールアウト用ホスト定義ファイルの内容を,複製先アプリケーションサーバのManagement Serverの,システムの情報モデルに反映します。また,変更したシステムの情報モデルを実システムに適用して,複製先アプリケーションサーバのホスト情報を変更します。

  1. システムの情報モデルを変更します。
    cmx_scaleout_hostコマンドに,(4)で作成したスケールアウト用ホスト定義ファイルを指定して,複製先アプリケーションサーバのManagement Serverの,システムの情報モデルを変更します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥cmx_scaleout_host -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -f <任意のディレクトリ>¥MyWebSystemHostScaleout.xml

    Linuxの場合

    # /opt/Cosminexus/manager/bin/cmx_scaleout_host -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -f <任意のディレクトリ>/MyWebSystemHostScaleout.xml

  2. 変更したシステムの情報モデルを実システムに展開します。
    cmx_build_systemコマンドを使用して,手順1.で変更したシステムの情報モデルを実システムに適用します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥cmx_build_system -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -s MyWebSystem1

    Linuxの場合

    # /opt/Cosminexus/manager/bin/cmx_build_system -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -s MyWebSystem1

  3. 負荷分散機からのリクエストの振り分けを抑止した状態で,複製先アプリケーションサーバのサービスユニットを一括起動します。
    ここでは次の内容を実施しています。
    • cmx_start_targetコマンドを使用して,複製先アプリケーションサーバのサービスユニット「unit1」を準備状態で起動することで,負荷分散機からのリクエストの振り分けを抑止します。準備状態にするには,-modeオプションに「READY」を指定します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode READY -s MyWebSystem1 -unit unit1

    Linuxの場合

    # /opt/Cosminexus/manager/bin/cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode READY -s MyWebSystem1 -unit unit1

  4. 複製先アプリケーションサーバのリソースアダプタおよびJ2EEアプリケーションを開始します(必要に応じて)。
    リソースアダプタおよびJ2EEアプリケーションが自動で開始しない場合は,最初に,リソースアダプタおよびJ2EEアプリケーションを開始します。JP1/SC/DPMを使用してディスクイメージを作成するときに,複製元アプリケーションサーバでリソースアダプタおよびJ2EEアプリケーションを一括停止しなかった場合,この操作は必要ありません。
    ここでは次の内容を実施しています。
    • サーバ管理コマンドを使用して,複製先アプリケーションサーバのサービスユニット「unit1」のリソースアダプタを開始します。
    • サーバ管理コマンドを使用して,複製先アプリケーションサーバのサービスユニット「unit1」のJ2EEアプリケーションを開始します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjstartrar cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.13:900 -resname DB_Connector_for_HiRDB_Type4

    <Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjstartapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.13:900 -name MyApp

    Linuxの場合

    # /opt/Cosminexus/CC/admin/bin/cjstartrar cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.13:900 -resname DB_Connector_for_HiRDB_Type4

    # /opt/Cosminexus/CC/admin/bin/cjstartapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.13:900 -name MyApp

  5. 複製先アプリケーションサーバのサービスユニットを一括起動します。
    cmx_start_targetコマンドを使用して,複製先アプリケーションサーバのサービスユニット「unit1」を一括起動します。このとき,コマンドの-modeオプションに「ALL」を指定して,稼働状態で起動します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥manager¥bin¥cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem1 -unit unit1

    Linuxの場合

    # /opt/Cosminexus/manager/bin/cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem1 -unit unit1