Cosminexus 簡易構築・運用ガイド

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

7.7.1 運用管理サーバモデルでのシステムのスケールアウト

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

スケールアウトの準備
システムのスケールアウトの準備とは,複製元のディスクイメージを作成する作業です。システム構築が終わって,運用環境が整ったところで実施します。スケールアウトの準備では次の内容を実施します。
  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を使用したシナリオによるシステムの運用」を参照してください。

ここでは,「6.1.1 WebサーバとJ2EEサーバを同じサーバマシンに配置する構成のシステムの構築例」を基に構築したシステムで,JP1/SC/DPMを利用して,システムをスケールアウトする手順について説明します。JP1/SC/DPMを利用したスケールアウトの例を次の図に示します。

図7-1 JP1/SC/DPMを利用したスケールアウトの例(運用管理サーバモデルの場合)

[図データ]

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

表7-12 サービスユニットの設定例(運用管理サーバモデルの場合)

設定項目 複製元のサービスユニット 追加するサービスユニット
ホスト名 apsv1 apsv3
サービスユニット名 unit1 unit3
IPアドレス 192.168.1.11 192.168.1.13
管理IPアドレス 192.168.100.11 192.168.100.13

なお,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. サービスユニット,および運用管理エージェントを停止します。
    ここでは,次の内容を実施します。
    • cmx_stop_targetコマンドを使用して,サービスユニット「unit1」を停止します。
    • adminagentctlコマンドを使用して,運用管理エージェントを停止します。
    Windowsの場合
     
    <Cosminexusインストールディレクトリ>\manager\bin\cmx_stop_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem -unit unit1
     
    <Cosminexusインストールディレクトリ>\manager\bin\adminagentctl stop
     
    Linuxの場合
     
    # /opt/Cosminexus/manager/bin/cmx_stop_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem -unit unit1
     
    # /opt/Cosminexus/manager/bin/adminagentctl stop
     
  3. 運用管理エージェントのサービスを手動起動に設定します。
    ここでは,次の内容を実施します。
    Windowsの場合
     
    <Cosminexusインストールディレクトリ>\manager\bin\mngautorun -d
     
    Linuxの場合
     
    # rm /etc/rc.d/rc2.d/S80AdminAgent
     
  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を利用したスケールアウト時に削除するログファイル」を参照してください。
 
注意
JP1/SC/DPMを使用してスケールアウトする場合,複製先アプリケーションサーバマシンが複数のIPアドレスで構成されているときは,adminagent.properties(運用管理エージェントプロパティファイル)のadminagent.adapter.bind_hostキーに設定するIPアドレスを正規表現で指定する必要があります。これは,スケールアウトするマシンはIPアドレスが変わり,固定のIPアドレスが指定できないためです。なお,adminagent.properties(運用管理エージェントプロパティファイル)については,マニュアル「Cosminexus リファレンス 定義編」を参照してください。

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

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

  1. スケールアウト用ディスクイメージを作成します。
    複製元アプリケーションサーバから,スケールアウト用のディスクイメージを作成します。なお,詳細については,マニュアル「JP1/ServerConductor/Deployment Manager」のディスク複製OSインストール機能の説明を参照してください。
  2. 運用管理エージェントを開始します。
    adminagentctlコマンドを使用して,運用管理エージェントを開始します。
    Windowsの場合
     
    <Cosminexusインストールディレクトリ>\manager\bin\adminagentctl start
     
    Linuxの場合
     
    # /opt/Cosminexus/manager/bin/adminagentctl start
     
    なお,必要に応じて,運用管理エージェントの自動起動を再設定してください。設定方法については,「6.5.3(2) 運用管理エージェントの自動起動の設定」を参照してください。
  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 MyWebSystem -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 MyWebSystem -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 MyWebSystem -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 MyWebSystem -unit unit1
     

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

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

また,追加したアプリケーションサーバの運用管理エージェントを起動する場合は,ここで実施します。

Windowsの場合
 
<Cosminexusインストールディレクトリ>\manager\bin\adminagentctl start
 

Linuxの場合
 
# /opt/Cosminexus/manager/bin/adminagentctl start
 

なお,運用管理エージェントの自動起動の設定については,「6.5.3(2) 運用管理エージェントの自動起動の設定」を参照してください。

(4) 構成変更定義ファイルの作成

サービスユニット・ホスト追加用の構成変更定義ファイルを任意の場所にコピーして,ファイルの内容を編集します。

  1. 構成変更定義ファイルを作成します。
    サービスユニット・ホスト追加用の構成変更定義ファイル(cmxaddcombinedmodel.xmlファイル)は,次の場所に提供されています。
    • Windowsの場合
      <Cosminexusインストールディレクトリ>\manager\config\templates\
    • Linuxの場合
      /opt/Cosminexus/manager/config/templates/
    このファイルをコピーし,名称を変更して,任意の場所に格納します。なお,ここではファイル名を「MyWebSystemAdd.xml」に変更しています。
  2. コピーした構成変更定義ファイルを編集します。
    MyWebSystemAdd.xmlファイルを編集します。ここでは,追加するサービスユニットの内容と,ホストの定義をします。また,<addition-mode>タグを追加し,「DEPLOYED」を指定してください。
    設定後のMyWebSystemAdd.xmlファイルを次に示します。
     
    <?xml version="1.0" encoding="UTF-8"?>
    <unit-addition xmlns="http://www.cosminexus.com/mngsvr/schema/UnitAddition-2.5">
      <web-system>
        <name>MyWebSystem</name>
        <addition-mode>DEPLOYED</addition-mode>
        
        <!-- 追加するサービスユニットの定義 -->
        <unit>
          <name>unit3</name>
          <allocated-host>
            <host-ref>apsv3</host-ref>
            <hosts-for>combined-tier</hosts-for>
          </allocated-host>
        </unit>
        
      </web-system>
      <!-- 追加するホストの定義 -->
      <host>
        <host-name>apsv3</host-name>
        <agent-host>192.168.100.13</agent-host>
      </host>
        
    </unit-addition>
     
    注 太字の部分が編集部分です。

(5) システムの情報モデルの変更(サービスユニットの追加)

作成した構成変更定義ファイルの内容を,Management Serverのシステムの情報モデルに反映します。変更したシステムの情報モデルを実システムに適用して,サービスユニットを追加します。

  1. システムの情報モデルを変更します。
    cmx_change_modelコマンドに,(4)で作成した構成変更定義ファイルを指定して,Management Serverのシステムの情報モデルを変更します。
    Windowsの場合
     
    <Cosminexusインストールディレクトリ>\manager\bin\cmx_change_model -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -f <任意のディレクトリ>\MyWebSystemAdd.xml
     
    Linuxの場合
     
    # /opt/Cosminexus/manager/bin/cmx_change_model -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -f <任意のディレクトリ>/MyWebSystemAdd.xml
     
  2. 変更したシステムの情報モデルを実システムに展開します。
    cmx_build_systemコマンドを使用して,(5)で変更したシステムの情報モデルを実システムに適用します。
    Windowsの場合
     
    <Cosminexusインストールディレクトリ>\manager\bin\cmx_build_system -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -s MyWebSystem
     
    Linuxの場合
     
    # /opt/Cosminexus/manager/bin/cmx_build_system -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -s MyWebSystem
     
  3. 負荷分散機からのリクエストの振り分けを抑止した状態で,追加したサービスユニットを一括起動します。
    ここでは次の内容を実施しています。
    • cmx_start_targetコマンドを使用して,追加したサービスユニット「unit3」を準備状態で起動することで,負荷分散機からのリクエストの振り分けを抑止します。準備状態にするには,-modeオプションに「READY」を指定します。
    Windowsの場合
     
    <Cosminexusインストールディレクトリ>\manager\bin\cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode READY -s MyWebSystem -unit unit3
     
    Linuxの場合
     
    # /opt/Cosminexus/manager/bin/cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode READY -s MyWebSystem -unit unit3
     
  4. リソースアダプタおよびJ2EEアプリケーションを開始します(必要に応じて)。
    リソースアダプタおよびJ2EEアプリケーションが自動で開始しない場合は,最初に,リソースアダプタおよびJ2EEアプリケーションを一括開始します。JP1/SC/DPMを使用してディスクイメージを作成するときに,複製元アプリケーションサーバでリソースアダプタおよびJ2EEアプリケーションを一括停止しなかった場合,この操作は必要ありません。
    ここでは次の内容を実施しています。
    • サーバ管理コマンドを使用して,サービスユニット「unit3」のリソースアダプタを開始します。
    • サーバ管理コマンドを使用して,サービスユニット「unit3」のJ2EEアプリケーションを開始します。
    Windowsの場合
     
    <Cosminexusのインストールディレクトリ>\CC\admin\bin\cjstartrar cmx_MyWebSystem_unit3_J2EE_01 -nameserver corbaname::192.168.1.13:900 -resname DB_Connector_for_HiRDB_Type4
     
    <Cosminexusのインストールディレクトリ>\CC\admin\bin\cjstartapp cmx_MyWebSystem_unit3_J2EE_01 -nameserver corbaname::192.168.1.13:900 -name MyApp
     
    Linuxの場合
     
    # /opt/Cosminexus/CC/admin/bin/cjstartrar cmx_MyWebSystem_unit3_J2EE_01 -nameserver corbaname::192.168.1.13:900 -resname DB_Connector_for_HiRDB_Type4
     
    # /opt/Cosminexus/CC/admin/bin/cjstartapp cmx_MyWebSystem_unit3_J2EE_01 -nameserver corbaname::192.168.1.13:900 -name MyApp
     
  5. 追加したサービスユニットを一括起動します。
    cmx_start_targetコマンドを使用して,追加したサービスユニット「unit3」を一括起動します。このとき,コマンドの-modeオプションに「ALL」を指定して,稼働状態で起動します。
    Windowsの場合
     
    <Cosminexusインストールディレクトリ>\manager\bin\cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem -unit unit3
     
    Linuxの場合
     
    # /opt/Cosminexus/manager/bin/cmx_start_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode ALL -s MyWebSystem -unit unit3