9.4.2 J2EEアプリケーションの入れ替え

J2EEアプリケーションを入れ替える手順には,リデプロイによる入れ替えと通常の入れ替えの2種類があります。ここでは,それぞれの手順について,次のJ2EEアプリケーションを使用する場合を例にして説明します。J2EEアプリケーションは,cosminexus.xmlを含むアプリケーションであることを前提としています。なお,説明では,WebサーバとJ2EEサーバを同じサーバマシンに配置するパターン(combined-tier)の簡易構築定義ファイルを使用して,「8.6 システムの一括構築」で構築したシステムを使用します。

表9-9 例で使用するJ2EEアプリケーションのファイル名と表示名

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

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

論理サーバの種類<種別>
論理WebサーバHTTP
論理J2EEサーバJ2EE
論理パフォーマンストレーサPRF
論理SFOサーバSFO
論理CTMドメインマネジャCTMDM
論理CTMCTM
論理スマートエージェントSA
論理ユーザサーバUSER
なお,<通番>は,基本的に「01」が設定されます。ただし,CTMを使用するシステムのように論理サーバを複数配置する場合は,重複しない番号が割り振られます。
サーバ管理コマンドを使用する操作
ここで説明する操作のうち,サーバ管理コマンドを使用する操作は,サービスユニットごとに実行します。
なお,ここで示すサーバ管理コマンドの実行例は,すべてサービスユニット1を対象としています。サービスユニット2に対しても,コマンド実行例中の値を次のように読み替えて同じ操作をしてください。
J2EEサーバ名:cmx_MyWebSystem_unit2_J2EE_01
-nameserver指定値:corbaname::192.168.1.12:900
リロードによる入れ替え
入れ替えの対象となるJ2EEアプリケーションが展開ディレクトリ形式の場合,リロードによる入れ替えができます。
リロードによる入れ替えの方法については,マニュアル「Cosminexus アプリケーションサーバ 機能解説 運用/監視/連携編」の「5.6.3 J2EEアプリケーションの入れ替えと保守」を参照してください。また,リロードによる入れ替えを実行するには,事前に設定が必要です。設定方法の詳細は,マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「12.8.12 J2EEアプリケーションの更新検知とリロードの設定」を参照してください。
<この項の構成>
(1) リデプロイによる入れ替え
(2) 通常の入れ替え

(1) リデプロイによる入れ替え

アーカイブ形式のJ2EEアプリケーションを入れ替える場合には,リデプロイによる入れ替えが実行できます。リデプロイによる入れ替えを実行すると,少ない手順でJ2EEアプリケーションを入れ替えられます。

リデプロイによるJ2EEアプリケーションの入れ替えには,実施する際の注意事項や条件があります。条件および注意事項については,マニュアル「Cosminexus アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の次の個所を参照してください。

J2EEアプリケーションのリデプロイによる入れ替えの手順を次に示します。

  1. システムの状態に応じて,システムを起動または閉塞します。
    システムが停止している場合は,システム全体を起動します。システムが稼働している場合はシステム全体を閉塞します。
    • システムが停止している場合
      cmx_start_targetコマンドを使用して一括起動します。このとき,コマンドの-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

      UNIXの場合

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

    • システムが稼働している場合
      cmx_stop_targetコマンドを使用して一括停止します。このとき,コマンドの-modeオプションに「HOLD」を指定して,サービスユニットを閉塞状態にします。
      Windowsの場合

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

      UNIXの場合

      # /opt/Cosminexus/manager/bin/cmx_stop_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode HOLD -s MyWebSystem

    注※ どちらも負荷分散機からのリクエストの振り分けが抑止されている状態になります。準備状態と閉塞状態の差異は,論理Webサーバが停止しているかどうかだけとなります。閉塞状態のときは論理Webサーバが停止しています。
  2. 入れ替えるEARファイルのパスを指定して,リデプロイします。
    Windowsの場合

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

    UNIXの場合

    # /opt/Cosminexus/CC/admin/bin/cjreplaceapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -name MyApp -f MyApp-1_1.ear

  3. 手順2.をサービスユニット1およびサービスユニット2で実施したあとで,システム全体を一括起動します。
    cmx_start_targetコマンドを使用して,システムを一括起動します。
    Windowsの場合

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

    UNIXの場合

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

    参考
    CTMを使用する構成のシステムでは,システムを閉塞しないでバックシステムのアプリケーションを入れ替えることができます。そのため,CTMを使用する構成のシステムでは,手順1.と手順3.が不要です。

(2) 通常の入れ替え

J2EEアプリケーションの通常の入れ替えとは,変更前のJ2EEアプリケーションを削除し,変更後のJ2EEアプリケーションをインポートすることです。J2EEアプリケーションの通常の入れ替えの手順を次に示します。

  1. システムの状態に応じて,システムを起動または閉塞します。
    システムが停止している場合は,システム全体を起動します。システムが稼働している場合はシステム全体を閉塞します。
    • システムが停止している場合
      cmx_start_targetコマンドを使用して一括起動します。このとき,コマンドの-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

      UNIXの場合

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

    • システムが稼働している場合
      cmx_stop_targetコマンドを使用して一括停止します。このとき,コマンドの-modeオプションに「HOLD」を指定して,サービスユニットを閉塞状態にします。
      Windowsの場合

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

      UNIXの場合

      # /opt/Cosminexus/manager/bin/cmx_stop_target -m 192.168.100.100 -u cosmi_admin -p cosmi_admin_passwd -mode HOLD -s MyWebSystem

    注※ どちらも負荷分散機からのリクエストの振り分けが抑止されている状態になります。準備状態と閉塞状態の差異は,論理Webサーバが停止しているかどうかだけとなります。閉塞状態のときは論理Webサーバが停止しています。
  2. J2EEアプリケーションを停止します。
    サーバ管理コマンドを使用して,J2EEアプリケーションを停止します。-nameオプションには,J2EEアプリケーション名を指定します。
    Windowsの場合

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

    UNIXの場合

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

  3. 入れ替え前のJ2EEアプリケーションを削除します。
    サーバ管理コマンドを使用して,J2EEアプリケーションを削除します。-nameオプションには,削除するJ2EEアプリケーション名を指定します。
    Windowsの場合

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

    UNIXの場合

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

  4. 入れ替え後のJ2EEアプリケーションをインポートします。
    サーバ管理コマンドを使用して,入れ替え後のJ2EEアプリケーションをインポートします。-fオプションには,入れ替え後のJ2EEアプリケーションのパスを指定します。
    Windowsの場合

    <Cosminexusのインストールディレクトリ>¥CC¥admin¥bin¥cjimportapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -f MyApp-1_1.ear

    UNIXの場合

    # /opt/Cosminexus/CC/admin/bin/cjimportapp cmx_MyWebSystem_unit1_J2EE_01 -nameserver corbaname::192.168.1.11:900 -f MyApp-1_1.ear

    参考
    次に示す場合,J2EEアプリケーションのプロパティは,属性ファイル(アプリケーション統合属性ファイル)で設定できます。
    • インポート済みのJ2EEアプリケーションのプロパティを編集する場合
    • cosminexus.xmlを含まないアプリケーションの場合
    設定方法については,マニュアル「Cosminexus アプリケーションサーバ アプリケーション設定操作ガイド」の「9.2 アプリケーション統合属性ファイルによるプロパティ設定」を参照してください。
  5. J2EEアプリケーションを開始します。
    サーバ管理コマンドを使用して,J2EEアプリケーションを開始します。-nameオプションには,J2EEアプリケーション名を指定します。
    Windowsの場合

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

    UNIXの場合

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

  6. 手順2.から5.までをサービスユニット1およびサービスユニット2で実施したあとで,システム全体を一括起動します。
    cmx_start_targetコマンドを使用して,システムを一括起動します。
    Windowsの場合

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

    UNIXの場合

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

    参考
    CTMを使用する構成のシステムでは,システムを閉塞しないでバックシステムのアプリケーションを入れ替えることができます。そのため,CTMを使用する場合の構成のシステムでは,手順1.と手順6.は不要です。