Cosminexus 簡易構築・運用ガイド

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

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

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

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

スケールアウト
複製したディスクイメージを使用して,スケールアウトをします。スケールアウトでは,次の内容を実施します。
  1. ディスクイメージのリストア
  2. スケールアウト用ホスト定義ファイルの作成
  3. システムの情報モデルの変更(複製先アプリケーションサーバのホスト情報変更)
 
注意
JP1/AJS2 - SOを使用してシステムのスケールアウトを自動化する場合
JP1/SC/DPMを使用したシステムのスケールアウトを,JP1/AJS2 - SOを使用して自動化する場合,ディスク複製インストール(リストア)が完了してから運用管理エージェントを自動起動するように設定する必要があります。設定方法については,マニュアル「JP1/ServerConductor/Deployment Manager」を参照してください。また,JP1/AJS2 - SOとの連携については,「15.1.2 JP1/AJS2 - SOを使用したシナリオによるシステムの運用」を参照してください。

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

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

[図データ]

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

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

設定項目 複製元アプリケーションサーバ 複製先アプリケーションサーバ
Webシステム Webシステム名 MyWebSystem1 MyWebSystem1※1
負荷分散機 リクエストの振り分け先を識別するサーバID※2 1024-2048 2049-3073
サービスユニット サービスユニット名 unit1 unit1※1
ホスト名 apsv1 apsv1※1
ホスト ホスト名 apsv1 apsv1※1
IPアドレス 192.168.1.11 192.168.1.13
管理IPアドレス 192.168.100.11 192.168.100.13

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

注※2
同じWebシステム間では,負荷分散機の仮想サーバを共有します。このため,リクエストの振り分け先を識別するサーバID(<server-id-rule>タグ)は,負荷分散機の仮想サーバ内で一意になるように設定してください。

なお,Webシステムの構成を変更するとWebシステムが動作するために必要なリソースも変更する必要があります。Webシステムが動作するために必要なリソースの見積もりについては,「5.1 使用リソースの見積もり」を参照してください。

参考
サーバ管理コマンドの指定値について

サーバ管理コマンドの引数に指定するサーバ名
サーバ管理コマンドの引数に指定するサーバ名は実サーバ名です。「6.8 システムの構成定義」で,実サーバ名を設定していない場合,実サーバ名は論理サーバ名と同じです。なお,論理サーバ名の設定を省略している場合,論理サーバ名は「cmx_<Webシステム名>_<サービスユニット名>_<種別>_<通番>」となります。論理サーバ名の定義ルールについては,「12.3 コマンドの詳細」の「cmx_build_system」を参照してください。
<この項の構成>
(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. ログを削除します。
    ログファイルを削除します。削除対象ログファイルが格納されているディレクトリについては,「付録C JP1/SC/DPMを利用したスケールアウト時に削除するログファイル」を参照してください。
  6. 次のファイルを編集します。
    編集対象のファイルおよびキーと,指定値を次の表に示します。

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

    ファイル名称 キー名称 指定値
    .cmxrc(クライアント設定プロパティファイル) cmx.lb keepvs
    cmxclient.properties(クライアント共通設定プロパティファイル) cmx.lb keepvs
    adminagent.properties(運用管理エージェントプロパティファイル) adminagent.adapter.allowedHosts mserver.properties(Management Server環境設定ファイル)のmngsvr.myhost.nameキーを指定しているかどうかで指定値が異なります。

    mngsvr.myhost.nameキーを指定している場合
    mserver.properties(Management Server環境設定ファイル)のmngsvr.myhost.nameキーと同じ値を指定します。

    mngsvr.myhost.nameキーを指定していない場合
    複製元アプリケーションサーバマシンおよび複製先アプリケーションサーバマシンの管理IPアドレスの,両方にマッチする正規表現を指定します。

    .cmxrc(クライアント設定プロパティファイル)については,「13.4 .cmxrc(クライアント設定プロパティファイル)」を,cmxclient.properties(クライアント共通設定プロパティファイル)については,「13.5 cmxclient.properties(クライアント共通設定プロパティファイル)」を参照してください。
    また,adminagent.properties(運用管理エージェントプロパティファイル)およびmserver.properties(Management Server環境設定ファイル)については,マニュアル「Cosminexus リファレンス 定義編」を参照してください。

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

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

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

    ファイル名称 キー名称
    .mngsvrutilrc(mngsvrutilコマンドのクライアント側定義ファイル) mngsvrutil.connect.host
    mngsvrutil.target_name
    mngsvrutilrc.properties(mngsvrutilコマンドのクライアント側共通定義ファイル) mngsvrutil.connect.host
    mngsvrutil.target_name
    .cmxrc(クライアント設定プロパティファイル) cmx.connect.host
    cmxclient.properties(クライアント共通設定プロパティファイル) cmx.connect.host
    なお,各ファイルについては,マニュアル「Cosminexus リファレンス 定義編」を参照してください。
 
注意
JP1/SC/DPMを使用してスケールアウトする場合,複製先アプリケーションサーバマシンが複数のIPアドレスで構成されているときは,次の表に示すキーに設定するIPアドレスを正規表現で指定する必要があります。これは,スケールアウトするマシンはIPアドレスが変わり,固定のIPアドレスが指定できないためです。
複数のIPアドレス構成時に,IPアドレスを正規表現で指定するキーを次の表に示します。

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

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

(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の自動起動を再設定してください。運用管理エージェントの設定方法については,「6.5.3(2) 運用管理エージェントの自動起動の設定」を,Management Serverの設定方法については,「6.6.2(3) 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の自動起動を再設定してください。運用管理エージェントの自動起動の設定については,「6.5.3(2) 運用管理エージェントの自動起動の設定」を,Management Serverの自動起動の設定については,「6.6.2(3) 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システムで使用する負荷分散機の定義 -->
        <load-balancer>
          <!-- cookieスイッチングの定義 -->
          <cookie-switching>
            <server-id-rule>2049-3073</server-id-rule>
          </cookie-switching>
        </load-balancer>
      </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