14.7.9 登録解除や保存世代数管理による世代削除処理方式の変更

ルートジョブネットおよびルートリモートジョブネットの保存世代数の設定には,1~99(保存世代数の拡張機能を使用した場合は1~999)を指定できます。この保存世代数に関して,次に示す条件のジョブネットに対して登録解除の操作をすると,登録が解除されるのに長い時間が掛かってしまいます。

そのため,ほかのジョブネットの起動条件監視が,「監視打ち切り終了」状態になったり,ジョブネットが正しく実行されなくなったりする場合があります。

この現象は,スケジューラーサービスの登録解除処理の設定が,「同期型」に設定されているのが原因です。登録解除処理の設定が「同期型」だと,登録解除対象の世代数が大量であればあるほど登録解除に多大な時間を必要とします。その登録解除に掛かる多大な時間が,ほかのジョブネットの実行動作に影響を与えてしまいます。

この現象を回避するには,登録解除処理の設定を「非同期型」にすることで対処してください。非同期型に変更する場合,設定変更前に実行していたジョブネットの登録情報を必要とする場合と必要としない場合とで手順が異なります。

JP1/AJS2 08-00以降で新規インストールした場合は,環境設定パラメーターBACKGROUNDLEAVEに「非同期型(yes)」が設定されるため,変更は不要です。ただし,バージョンアップインストールした場合は,「同期型(no)」が設定されることがあります。

環境設定パラメーターBACKGROUNDLEAVEに「同期型(no)」が設定されている,またはBACKGROUNDLEAVEが設定されていない場合は,登録解除に掛かる時間を考慮し,登録解除処理の設定を「非同期型(yes)」に変更することをお勧めします。設定を「同期型(no)」に変更する場合,設定変更前に実行していたジョブネットの登録情報は削除されるため注意してください。

登録解除処理の設定を変更する場合,設定変更が必要なスケジューラーサービスがあるJP1/AJS2のサービスを停止する必要があります。

スケジューラーサービス(AJSROOT1)の登録解除処理を変更する例を挙げて,設定方法を次に示します。

<この項の構成>
(1) 登録解除処理の設定を「同期型」から「非同期型」にする手順
(2) 登録解除処理の設定を「非同期型」から「同期型」にする手順

(1) 登録解除処理の設定を「同期型」から「非同期型」にする手順

環境設定パラメーターBACKGROUNDLEAVEの設定値がすでに「非同期型(yes)」に設定されている場合は,ここに示す操作の必要はありません。

(a) 実行していたジョブネットの登録情報を必要としない場合

実行していたジョブネットの登録情報を必要としない場合の手順を次に示します。

  1. JP1/AJS2サービスおよびJP1/AJS2 Monitorサービスを停止する。
    スーパーユーザー権限を持つユーザーで次のコマンドを実行し,プロセスがすべて停止していることを確認します。

    # /etc/opt/jp1ajs2/jajs_stop
    # /opt/jp1ajs2/bin/jajs_spmd_status
    # /etc/opt/jp1ajs2/ajsinetd_startstop stop

  2. viなどのエディターで,次の内容を記述したテキストファイルを作成する。

    [{JP1_DEFAULT|論理ホスト名}¥JP1AJSMANAGER¥スケジューラーサービス名]
    "BACKGROUNDLEAVE"="yes"

    (例)スケジューラーサービス名が「AJSROOT1」の場合

    [{JP1_DEFAULT|論理ホスト名}¥JP1AJSMANAGER¥AJSROOT1]
    "BACKGROUNDLEAVE"="yes"

    {JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
  3. ファイルを保存し,次のコマンドを実行する。

    jbssetcnf テキストファイル名

    jbssetcnfコマンドのパスは,「/opt/jp1base/bin/jbssetcnf」です。
    jbssetcnfコマンドの詳細については,マニュアル「JP1/Base 運用ガイド」を参照してください。
  4. JP1/AJS2 Monitorサービスを起動する。
    スーパーユーザー権限を持つユーザーで,次に示すコマンドを実行します。

    # /etc/opt/jp1ajs2/ajsinetd_startstop start

  5. JP1/AJS2サービスをコールドスタートする。
    スーパーユーザー権限を持つユーザーで,次に示すコマンドを実行します。

    # /opt/jp1ajs2/bin/jajs_spmd -cold

(b) 実行していたジョブネットの登録情報を必要とする場合

実行登録情報が必要な場合は,次に示す手順に従って移行作業を実施してください。

  1. JP1/AJS2サービスおよびJP1/AJS2 Monitorサービスを停止する。
    スーパーユーザー権限を持つユーザーで次のコマンドを実行し,プロセスがすべて停止していることを確認します。

    # /etc/opt/jp1ajs2/jajs_stop
    # /opt/jp1ajs2/bin/jajs_spmd_status
    # /etc/opt/jp1ajs2/ajsinetd_startstop stop

  2. viなどのエディターで,次の内容を記述したテキストファイルを作成する。

    [{JP1_DEFAULT|論理ホスト名}¥JP1AJSMANAGER¥スケジューラーサービス名]
    "BACKGROUNDLEAVE"="yes"

    (例)スケジューラーサービス名が「AJSROOT1」の場合

    [{JP1_DEFAULT|論理ホスト名}¥JP1AJSMANAGER¥AJSROOT1]
    "BACKGROUNDLEAVE"="yes"

    {JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
  3. ファイルを保存し,次のコマンドを実行する。

    jbssetcnf テキストファイル名

    jbssetcnfコマンドのパスは,「/opt/jp1base/bin/jbssetcnf」です。
    jbssetcnfコマンドの詳細については,マニュアル「JP1/Base 運用ガイド」を参照してください。
  4. JP1/AJS2 Monitorサービスを起動する。
    スーパーユーザー権限を持つユーザーで,次に示すコマンドを実行します。

    # /etc/opt/jp1ajs2/ajsinetd_startstop start

  5. 実行登録情報を非同期型に変換する。
    次に示すコマンドを実行します。

    /opt/jp1ajs2/tools/ajsregcnv -F スケジューラーサービス名

    (例)スケジューラーサービス名が「AJSROOT1」の場合

    /opt/jp1ajs2/tools/ajsregcnv -F AJSROOT1

  6. JP1/AJS2サービスを起動する。
    スーパーユーザー権限を持つユーザーで,次に示すコマンドを実行します。

    # /opt/jp1ajs2/bin/jajs_spmd

(2) 登録解除処理の設定を「非同期型」から「同期型」にする手順

登録解除処理の設定を「非同期型」から「同期型」に変更する場合の手順を次に示します。

  1. JP1/AJS2サービスおよびJP1/AJS2 Monitorサービスを停止する。
    スーパーユーザー権限を持つユーザーで次のコマンドを実行し,プロセスがすべて停止していることを確認します。

    # /etc/opt/jp1ajs2/jajs_stop
    # /opt/jp1ajs2/bin/jajs_spmd_status
    # /etc/opt/jp1ajs2/ajsinetd_startstop stop

  2. viなどのエディターで,次の内容を記述したテキストファイルを作成する。

    [{JP1_DEFAULT|論理ホスト名}¥JP1AJSMANAGER¥スケジューラーサービス名]
    "BACKGROUNDLEAVE"="no"

    (例)スケジューラーサービス名が「AJSROOT1」の場合

    [{JP1_DEFAULT|論理ホスト名}¥JP1AJSMANAGER¥AJSROOT1]
    "BACKGROUNDLEAVE"="no"

    {JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
  3. ファイルを保存し,次のコマンドを実行する。

    jbssetcnf テキストファイル名

    jbssetcnfコマンドのパスは,「/opt/jp1base/bin/jbssetcnf」です。
    jbssetcnfコマンドの詳細については,マニュアル「JP1/Base 運用ガイド」を参照してください。
  4. JP1/AJS2 Monitorサービスを起動する。
    スーパーユーザー権限を持つユーザーで,次に示すコマンドを実行します。

    # /etc/opt/jp1ajs2/ajsinetd_startstop start

  5. JP1/AJS2サービスをコールドスタートする。
    スーパーユーザー権限を持つユーザーで,次に示すコマンドを実行します。

    # /opt/jp1ajs2/bin/jajs_spmd -cold