14.7.2 JP1/AJS2サービスの自動起動および自動終了の設定

システムの起動・終了時に,JP1/AJS2サービス(デーモン)も自動的に起動・終了できます。

<この項の構成>
(1) JP1/AJS2サービス(JP1/AJS2 - Manager)の自動起動および自動終了を設定する
(2) JP1/AJS2サービス(JP1/AJS2 - Agent)の自動起動および自動終了を設定する
(3) JP1/AJS2 Consoleサービスの自動起動および自動終了を設定する
(4) キューレスエージェントサービス,キューレスファイル転送サービスの自動起動および自動終了を設定する
(5) JP1/AJS2 Check Managerサービス,JP1/AJS2 Check Agentサービスの自動起動および自動終了を設定する
(6) JP1/AJS2の自動起動時にJP1/AJS2のプロセスの状態を出力する
(7) メモリー不足時のプロセス動作設定(AIX限定)
(8) 環境変数JP1_HOSTNAMEに依存しないJP1/AJS2サービスの自動起動および自動終了を設定する
(9) 組み込みDBの自動起動および自動終了を設定する

(1) JP1/AJS2サービス(JP1/AJS2 - Manager)の自動起動および自動終了を設定する

ここでは,JP1/AJS2サービス(JP1/AJS2 - Manager)の自動起動および自動終了を設定する方法を説明します。

(a) JP1/AJS2サービス(JP1/AJS2 - Manager)の自動起動を設定する

システムの起動時に,JP1/AJS2サービス(デーモン)も自動的に起動させる手順を次に示します。

  1. 次のファイルをviなどのエディターで開く。

    /etc/opt/jp1ajs2/jajs_start

  2. ファイル(自動起動用シェルスクリプト)に記述されている,次の網掛け部分を削除する。

    [図データ]

    削除する際は,削除する前に,内容を確認してください。
    なお,「: # WAIT_READY=YES」のコメントを削除すると,JP1/AJS2 - Managerサービスの起動を待てるようになります。ただし,この設定をするとOSの起動時間が遅くなります。OSの起動を優先させたい場合は,このコメントを削除しないでください。
    「WAIT_READY=YES」のコメントを削除した場合には,サービスの起動順序の制御が行えます。JP1/AJS2サービスの起動を待って,JP1/AJS2 Monitorサービスを起動することで,JP1/AJS2サービス起動時の自動再編成が排他エラーで失敗するのを防ぐことができます。
    次に示す,JP1/AJS2 Monitorを起動する記述を,

     if [ -x /etc/opt/jp1ajs2/ajsinetd_startstop ] ; then
       : (省略)
       fi
     fi

    サービス起動を待つ処理

     WAIT_READY=YES
     if [ "$WAIT_READY" = "YES" ] ; then
       : (省略)
     fi

    の後ろへ移動させてください。
    修正後は,次のようになります。

    if [ -x /opt/jp1ajs2/bin/jajs_spmd ] ; then
     :(省略)
     WAIT_READY=YES
     if [ "$WAIT_READY" = "YES" ] ; then
       : (省略)
     fi
     if [ -x /etc/opt/jp1ajs2/ajsinetd_startstop ] ; then
       : (省略)
       fi
     fi
    fi
    exit 0

これでJP1/AJS2サービスの自動起動の設定は完了です。

(b) RDB接続待ち合わせ機能の設定を変更し,JP1/AJS2サービス(JP1/AJS2 - Manager)の自動起動を設定する

最大待ち合わせ時間を変更したい場合や,RDB接続待ち合わせ機能を無効にしたい場合には以下の設定が必要です。

なお,JP1/AJS2を07-10以前のバージョンからバージョンアップした場合,組み込みDB共にRDB接続待ち合わせ機能はデフォルトで適用されます。

  1. jbsgetcnfを実行して,ファイルに構成定義を取得する。
  2. 1で取得した構成定義の[{JP1_DEFAULT|論理ホスト名}¥JP1AJSMANAGER¥対象スケジューラーサービス名]下の,次の定義を変更する。
    (例)物理ホストのスケジューラーサービスAJSROOT1に変更する場合

    [JP1_DEFAULT¥JP1AJSMANAGER¥AJSROOT1]
    "RDBCONNECTWAITTIME"=dword:00000001

    RDBCONNECTWAITTIMEの値は,0~3C(10進数で0~60)(単位:分)の範囲で指定してください。「0」を指定した場合,RDB接続待ち合わせ機能は無効になります。
  3. 2で修正したファイルを使ってjbssetcnfを実行する。

    注意
    クラスタ環境でRDB接続待ち合わせ機能を使用する場合は,実行系および待機系のそれぞれで上記の設定を行います。そのとき,指定する値は実行系,待機系で同じ値を指定してください。

RDB接続待ち合わせ機能を使用する場合は,JP1/AJS2のOS起動時の自動起動を有効にします。有効にするには,/etc/opt/jp1ajs2/jajs_startファイルで,以下の行の網掛け部分を削除する必要があります。

[図データ]

さらに,次の設定も確認が必要です。

これで設定は完了です。次回JP1/AJS2起動時から設定が有効になります。

注意事項
OS起動時に,スケジューラーサービスの起動に失敗し,KAVS0999-W(待ち合わせ開始メッセージ),KAVS0998-E(待ち合わせ失敗メッセージ)が出力されている場合,次に示すことを確認してください。
  • 組み込みDBはセットアップされているか。
    スケジューラーサービスに指定した組み込みDBが起動していない場合,接続を待ち合わせてもデータベースに接続できません。
    セットアップ時に,問題なくスケジューラーサービスが起動できていることを確認してください。
  • 組み込みDBの定義を変更していないか。
    組み込みDBをセットアップ後に起動方法を変更すると,OS起動時に組み込みDBが起動しなくなることがあります。その場合は,セットアップ時の値に戻してください。
  • 前回の終了時に,組み込みDBが異常終了していないか。
    ジョブ実行中などに組み込みDBが異常終了した場合,次回の起動に時間が掛かることがあります。その場合,デフォルトの最大待ち合わせ時間内に組み込みDBが起動しないことがありますので,ジョブ実行中に組み込みDBを強制停止しないでください。
  • jajs_startファイルの「: # WAIT_READY=YES」行の「: #」が削除されていないか。
    「: #」が削除されている場合は,「: #」を追加して行を無効にしてください。
組み込みDBの起動に時間が掛かる場合,事前にどの程度掛かるかがわかっているときは,起動時間に応じて最大接続待ち合わせ時間を変更してください。

(c) JP1/AJS2サービス(JP1/AJS2 - Manager)の自動終了を設定する

システムの終了時に,JP1/AJS2サービス(デーモン)も自動的に終了させる手順を次に示します。

  1. 次のファイルをviなどのエディターで開く。

    /etc/opt/jp1ajs2/jajs_stop

  2. ファイル(自動停止用シェルスクリプト)に記述されている,次の網掛け部分を削除する。

    [図データ]

    削除する際は,削除する前に内容を確認してください。なお,「:# WAIT READY=YES」のコメントを削除すると,JP1/AJS2 - Managerサービスの終了を待てるようになります。ただし,この設定をするとOSの停止時間が遅くなります。OSの停止を優先させたい場合は,このコメントを削除しないでください。

これでJP1/AJS2サービスの自動終了の設定は完了です。

(2) JP1/AJS2サービス(JP1/AJS2 - Agent)の自動起動および自動終了を設定する

ここでは,JP1/AJS2 サービス(JP1/AJS2 - Agent)の自動起動および自動終了を設定する方法を説明します。

(a) JP1/AJS2サービス(JP1/AJS2 - Agent)の自動起動を設定する

システムの起動時に,JP1/AJS2サービス(デーモン)も自動的に起動させる手順を次に示します。

  1. 次のファイルをviなどのエディターで開く。

    /etc/opt/jp1ajs2/jajs_start

  2. ファイル(自動起動用シェルスクリプト)に記述されている,次の網掛け部分を削除する。

    [図データ]

    削除する際は,削除する前に,内容を確認してください。
    なお,「: # WAIT_READY=YES」のコメントを削除すると,JP1/AJS2 - Agentサービスの起動を待てるようになります。ただし,この設定をするとOSの起動時間が遅くなります。OS起動を優先させたい場合は,このコメントを削除しないでください。

これでJP1/AJS2サービスの自動起動の設定は完了です。

(b) JP1/AJS2サービス(JP1/AJS2 - Agent)の自動終了を設定する

システムの終了時に,JP1/AJS2サービス(デーモン)も自動的に終了させる手順を次に示します。

  1. 次のファイルをviなどのエディターで開く。

    /etc/opt/jp1ajs2/jajs_stop

  2. ファイルに記述されている,次の網掛け部分を削除する。

    [図データ]

    削除する際は,削除する前に,内容を確認してください。なお,「:# WAIT READY=YES」のコメントを削除すると,JP1/AJS2 - Agentサービスの終了を待てるようになります。ただし,この設定をするとOSの停止時間が遅くなります。OSの停止を優先させたい場合は,このコメントを削除しないでください。

これでJP1/AJS2サービスの自動終了の設定は完了です。

(3) JP1/AJS2 Consoleサービスの自動起動および自動終了を設定する

JP1/AJS2 Consoleサービスをシステムの起動時に開始させたり,JP1/AJS2 Consoleサービスを自動終了させたりするためには,自動起動用スクリプトおよび自動終了用スクリプトの設定が必要です。

JP1/AJS2 Consoleサービスには,JP1/AJS2 Console ManagerサービスとJP1/AJS2 Console Agentサービスがあり,サービスごとに設定が必要です。

(a) JP1/AJS2 Console Managerサービスの自動起動および自動終了を設定する

JP1/AJS2 Console Managerサービスの自動起動および自動終了の設定方法について説明します。

(b) JP1/AJS2 Console Agentサービスの自動起動および自動終了を設定する

JP1/AJS2 Console Agentサービスの自動起動および自動終了の設定方法について説明します。

(4) キューレスエージェントサービス,キューレスファイル転送サービスの自動起動および自動終了を設定する

キューレスエージェントサービス,キューレスファイル転送サービスをシステムの起動時に開始させたり,自動終了させたりするためには,自動起動用スクリプトおよび自動終了用スクリプトの設定が必要です。

キューレスファイル転送サービスは,JP1/AJS2 - Managerにしか存在しないため,JP1/AJS2 - Agentでの設定は不要です。

(a) キューレスエージェントサービスの自動起動および自動終了を設定する

キューレスエージェントサービスの自動起動および自動終了の設定方法について説明します。

(b) キューレスファイル転送サービスの自動起動および自動終了を設定する

キューレスファイル転送サービスの自動起動および自動終了の設定方法について説明します。

(5) JP1/AJS2 Check Managerサービス,JP1/AJS2 Check Agentサービスの自動起動および自動終了を設定する

JP1/AJS2 Check Managerサービス,JP1/AJS2 Check Agentサービスの自動起動および自動終了の設定方法について説明します。

(a) JP1/AJS2 Check Managerサービス,JP1/AJS2 Check Agentサービスの自動起動を設定する

JP1/AJS2 Check Managerサービス,JP1/AJS2 Check Agentサービスをシステムの起動時に開始するために,自動起動スクリプトを設定します。設定手順を次に示します。

  1. viなどのエディターで次のファイルを開く。
    /etc/opt/jp1ajs2/jajs_start
  2. ファイルに記述されている,次の網掛け部分を削除する。

    [図データ]

    削除する際は,削除する前に,内容を確認してください。
  3. ファイルを閉じる。

(b) JP1/AJS2 Check Managerサービス,JP1/AJS2 Check Agentサービスの自動終了を設定する

JP1/AJS2 Check Managerサービス,JP1/AJS2 Check Agentサービスの自動終了スクリプトの設定手順を次に示します。

  1. viなどのエディターで次のファイルを開く。
    /etc/opt/jp1ajs2/jajs_stop
  2. ファイルに記述されている,次の網掛け部分を削除する。

    [図データ]

    削除する際は,削除する前に,内容を確認してください。
  3. ファイルを閉じる。

(6) JP1/AJS2の自動起動時にJP1/AJS2のプロセスの状態を出力する

JP1/AJS2の自動起動時に,JP1/AJS2のプロセスの状態を出力できます。JP1/AJS2の自動起動時にJP1/AJS2のプロセスの状態を出力させるには,自動起動スクリプトを設定します。設定手順を次に示します。

  1. viなどのエディターで次のファイルを開く。
    /etc/opt/jp1ajs2/jajs_start
  2. ファイルに記述されている,次の網掛け部分を削除する。

    [図データ]

    削除する際は,削除する前に,内容を確認してください。
    注意事項
    自動起動時のプロセス状態を出力する場合は,「:# WAIT_READY=YES」のコメントを削除しておく必要があります。
  3. ファイルを閉じる。

(7) メモリー不足時のプロセス動作設定(AIX限定)

AIXでは,メモリー不足が発生するとOSがSIGKILLを発行し,JP1/AJS2のプロセスが終了することがあります。この現象を回避するには,環境変数にPSALLOC=earlyを設定し,JP1/AJS2を起動してください。

なお,環境変数PSALLOCにearlyを設定する場合には,同時に環境変数NODISCLAIM=trueを設定する必要があります。

自動起動スクリプト中に設定する例を次に示します。

  1. 自動スクリプト中の次の部分を検索する。

    unset LC_MESSAGES

  2. 手順1で検索した行の前に,次の部分を追加する。

    ------------------------- ここから
    PSALLOC=early
    NODISCLAIM=true
    export PSALLOC NODISCLAIM
    ------------------------- ここまでを追加
    unset LC_MESSAGES
    : # unset JP1_HOSTNAME
    cd /opt/jp1ajs2/bin

(8) 環境変数JP1_HOSTNAMEに依存しないJP1/AJS2サービスの自動起動および自動終了を設定する

環境変数JP1_HOSTNAMEが設定されている環境で,環境変数JP1_HOSTNAMEに依存しないでJP1/AJS2サービスを自動起動および自動終了させる方法を次に示します。

  1. viなどのエディターで次のファイルを開く。
    (a) JP1/AJS2サービスの自動起動を設定する場合
    /etc/opt/jp1ajs2/jajs_start
    (b) JP1/AJS2サービスの自動終了を設定する場合
    /etc/opt/jp1ajs2/jajs_stop
  2. ファイルに記述されている,次の網掛けの部分を削除する。

    [図データ]

    削除する際は,削除する前に,内容を確認してください。
  3. ファイルを閉じる。

(9) 組み込みDBの自動起動および自動終了を設定する

組み込みDBの自動起動および自動終了の設定方法について説明します。

ajsembdbstartコマンドおよびajsembdbstopコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 コマンドリファレンス 1. コマンド」を参照してください。

(a) 組み込みDBの自動起動を設定する

システムの起動時に,組み込みDBを自動的に起動させる手順を次に示します。

ajsembdbbuildコマンド実行時に,-rオプションまたは-fオプションを指定しないで組み込みDBを構築した場合は,システム共通定義のpd_mode_confオペランドに「AUTO」が設定されるため,変更する必要はありません。pd_mode_confオペランドの詳細については,マニュアル「JP1/Automatic Job Management System 2 設計・運用ガイド 5.7.1 システム定義」を参照してください。

  1. JP1/AJS2サービス,JP1/AJS2 Monitorサービス,およびJP1/AJS2 Console Agentサービスなど,組み込みDBにアクセスするサービスをすべて停止する。
  2. ajsembdbstopコマンドを実行し,組み込みDBを停止する。
  3. システム共通定義ファイル(組み込みDB運用ディレクトリ/conf/pdsys)をviなどのエディターで開き,次のように設定値をAUTOに変更する。

    pd_mode_conf = AUTO

  4. ajsembdbstartコマンドを実行し,組み込みDBを起動する。
  5. 手順1で停止したサービスを起動する。

(b) 組み込みDBの自動終了を設定する

システムの終了時に,組み込みDBを自動的に終了させる手順を次に示します。

  1. 次のファイルをviなどのエディターで開く。

    /etc/opt/jp1ajs2/jajs_stop

  2. ファイルに記述されている,次の網掛けの部分を削除する。

    [図データ]

  3. 組み込みDB停止処理を追加する。
    次に示す組み込みDB停止処理を,他のJP1/AJS2サービス停止処理の後に追加します。

     if [ -x /opt/jp1ajs2/tools/ajsembdbstop ] ; then
       /opt/jp1ajs2/tools/ajsembdbstop
     fi

     
    修正後は,次のようになります。

     #! /bin/sh
     ## JP1/Automatic Job Management System 2
       : (省略)
       if [ -x /opt/jp1ajs2/bin/ajsqlftpstop ] ; then
         : # /opt/jp1ajs2/bin/ajsqlftpstop
       fi
       if [ -x /opt/jp1ajs2/tools/ajsembdbstop ] ; then
         /opt/jp1ajs2/tools/ajsembdbstop -id _JA0
       fi
     fi
     exit 0

    ajsembdbstopコマンドの-idオプションに指定する組み込みDBセットアップ識別子は,環境に合わせて変更してください。
  4. ファイルを閉じる。