Hitachi

JP1 Version 12 JP1/Automatic Job Management System 3 構築ガイド


8.2.10 論理ホストのスケジューラーサービスの多重起動の設定

スケジューラーサービスを多重起動するためには,まず追加するスケジューラーサービスの名称などの情報を設定します。次に,そのスケジューラーサービス用のデータベースを新規に作成します。

論理ホストでのスケジューラーサービスの追加手順,および追加したスケジューラーサービスの削除手順を次に示します。

〈この項の構成〉

(1) 論理ホストでスケジューラーサービスを追加する

論理ホストでスケジューラーサービスを追加する手順を次に示します。

(a) 実行系での作業

  1. Windowsの[コントロールパネル]の[サービス]で,次に示すサービスを停止する。

    • 追加の対象となる論理ホストのJP1/AJS3サービス

      重要

      対象となる論理ホストに構築されている,すべての組み込みDBを稼働状態にする必要があります。対象のJP1/AJS3 Database _JFnnは1〜9,A〜Zの文字のどれか)サービスが開始していることを確認してください。開始していない場合は,JP1/AJS3 Database _JFnのサービスを開始してください。

      ajsembdbstatusコマンドに-s ust -id _JFnnは1〜9またはA〜Zのどれか)オプションを指定して実行し,組み込みDBが稼働状態になっていること(UNIT-STATがONLINEになっていること)を確認してください。稼働状態になっていない場合は,ajsembdbstartコマンドに-id _JFnオプションを指定して実行してください。

      対象となる組み込みDBのセットアップ識別子(_JFn)については,ajsembdbidlistコマンドを実行して確認してください。

  2. エクスプローラなどで,次に示すフォルダを共有ディスクに作成する。

    • データベースフォルダ

    • 一時ファイル用フォルダ

    • ジョブ情報フォルダ

    • 退避情報フォルダ

    なお,退避情報フォルダ以外は,自ホスト内(物理ホストとすべての論理ホスト)に設定されている,ほかのスケジューラーサービスが使用するフォルダと重複しないようにしてください。また,ほかのスケジューラーサービスが使用するフォルダの配下にも作成しないでください。

  3. スケジューラーサービスを追加するためにjajs_setupコマンドを実行する。

    jajs_setup -a -h 論理ホスト名
     -F スケジューラーサービス名
     -p ジョブ状態通知ポートのサービス名
     -d データベースフォルダ名
     -t 一時ファイル用フォルダ名
     -j ジョブ情報フォルダ名
     -b 退避情報フォルダ名
     -n スケジューラーサービスの識別番号
     -D 論理ホスト共有フォルダ名
     [[-I セットアップ識別子
       -P 組み込みDBポート番号]
      [-M {s|m|l}]
      [-B]
     |-S]

    (例)論理ホスト名が「LHOST」,論理ホストの共有フォルダが「x:\products」の論理ホストに,「AJSROOT3」というスケジューラーサービスを追加する場合

    jajs_setup -a -h LHOST
     -F AJSROOT3
     -p jp1ajs2report3
     -d "x:\products\jp1ajs2\database\schedule\AJSROOT3"
     -t "x:\products\jp1ajs2\tmp\schedule3"
     -j "x:\products\jp1ajs2\jobinf3"
     -b "x:\products\jp1ajs2\backup\schedule3"
     -n 3
     -D "x:\products"
     -I _JF3
     -P 22222

    組み込みDBインストール先ディレクトリをデフォルトのパスから変更している組み込みDBに,スケジューラーサービスを追加する場合は,jajs_setupコマンドに-Sオプションを指定して実行してください。

    jajs_setupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド jajs_setup」を参照してください。

  4. 組み込みDBの高度なセットアップを実行する。

    手順3で-Sオプションを指定した場合は,組み込みDBの高度なセットアップを実施します。組み込みDBの高度なセットアップについては,「23.5 組み込みDBの高度なセットアップ(クラスタ構成の場合)」を参照してください。

    組み込みDBインストール先ディレクトリをデフォルトのパスから変更している場合は,ajsembdbsetupコマンドを実行してください。詳細については,「23.5.1(5)(b) 一つの組み込みDB環境に複数のスケジューラーデータベースをセットアップする」を参照してください。

  5. 次のファイルをメモ帳などのテキストエディターで開く。

    システムフォルダ\system32\drivers\etc\Services

  6. 手順3で指定したジョブ状態通知ポートのサービス名に対するポート番号を設定する。

    (例)ポート番号を「20248」として設定する場合

    jp1ajs2report3 20248/tcp
    重要

    論理ホストにスケジューラーサービスを追加する場合,論理ホストのほかのスケジューラーサービスが使用するポート番号と重複しないように設定してください。ただし,論理ホストを新規に追加してスケジューラーサービスを追加する場合は,異なる論理ホストのスケジューラーサービスが使用するポート番号と重複しても問題ありません。また,Windowsファイアウォールを設定した環境で運用する場合は,設定したポート番号(上記の例ではサービス名:jp1ajs2report3,ポート番号:20248)をWindowsファイアウォールの規則に登録し,ファイアウォールを透過できるようにしてください。

  7. キューレスジョブを利用する場合は,キューレスジョブのセットアップをする。

    次のコマンドを実行します。

    ajsqlsetup -F スケジューラーサービス名 -h 論理ホスト名

    ajsqlsetupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 4. 特別な運用で使用するコマンド ajsqlsetup」を参照してください。

  8. 組み込みDBを停止する。

    追加の対象となる論理ホストの組み込みDBの,JP1/AJS3 Database _JFnのサービスを停止してください。

  9. スケジューラーサービスを追加した論理ホストのJP1/AJS3サービスを再起動する。

    設定した内容でスケジューラーサービスが追加され,起動します。再起動後,JP1/AJS3 - Viewなどで,追加したスケジューラーサービス名が付けられたルートジョブグループが表示されていることを確認してください。

(b) 待機系での作業

  1. 待機系の組み込みDBを設定する。

    実行系でセットアップをする際,新規に組み込みDBを作成した場合(jajs_setupコマンドの-Iオプションに,すでにある組み込みDBのセットアップ識別子を指定しなかった場合)だけ,この作業が必要です。組み込みDBのセットアップ識別子は,ajsembdbidlistコマンドで確認できます。

    実行するコマンドを次に示します。

    ajsembdbinstl
     -s 組み込みDBインストール媒体格納ディレクトリ
     -id セットアップ識別子
     -mh 論理ホスト名
     
    ajsembdbbuild
     -conf 組み込みDB設定ファイル名

    セットアップ識別子は,実行系で指定した値と同じものを指定してください。

    組み込みDB設定ファイルは,実行系の組み込みDB構築時に出力したファイルを待機系にコピーしてください。

    組み込みDB設定ファイルの出力先を次に示します。

    組み込みDB運用ディレクトリ\conf\ajsdbst\ajsembdbセットアップ識別子.conf

    各コマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド」を参照してください。

    (例)セットアップ識別子が「_JF3」,組み込みDB設定ファイルを「C:\tmp\ajsembdb_JF3.conf」に配置し,論理ホスト「LHOST」の組み込みDBを設定する場合

    ajsembdbinstl
     -s "c:\Program Files\HITACHI\jp1ajs2\tools\AJS3DB"
     -id _JF3
     -mh LHOST
     
    ajsembdbbuild
     -conf "C:\tmp\ajsembdb_JF3.conf"
  2. 実行系の共通定義情報を待機系に設定する。

    実行系での作業が完了したあと,実行系でjbsgetcnfコマンドを実行し,共通定義情報を退避します。その退避ファイルを待機系にコピーし,退避ファイルを引数に指定してjbssetcnfコマンドを実行します。

    実行するコマンドを次に示します。

    実行系

    jbsgetcnf -h 論理ホスト名 > 退避ファイル名

    待機系

    jbssetcnf 退避ファイル名

  3. 次のファイルをメモ帳などのテキストエディターで開く。

    システムフォルダ\system32\drivers\etc\Services

  4. (a)の実行系での作業の手順6で設定したポート番号を待機系に設定する。

    (例)ポート番号を「20248」として設定する場合

    jp1ajs2report3 20248/tcp
    重要

    設定するポート番号は,実行系と同じ番号になるようにしてください。また,Windowsファイアウォールを設定した環境で運用する場合は,設定したポート番号(上記の例ではサービス名:jp1ajs2report3,ポート番号:20248)をWindowsファイアウォールの規則に登録し,ファイアウォールを透過できるようにしてください。

  5. キューレスジョブを利用する場合は,キューレスジョブ実行環境をセットアップする。

    次のコマンドを実行します。

    ajsqlsetup -F スケジューラーサービス名 -h 論理ホスト名 -nc

    ajsqlsetupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 4. 特別な運用で使用するコマンド ajsqlsetup」を参照してください。

(2) 追加したスケジューラーサービスを削除する

スケジューラーサービスの削除は,実行系・待機系の両方で実行します。追加したスケジューラーサービスの削除手順を次に示します。

  1. JP1/AJS3サービスを停止する。

    物理ホスト,論理ホストのすべてのJP1/AJS3サービスを停止してください。

    重要

    対象となる論理ホストに構築されているすべての組み込みDBを稼働状態にする必要があります。対象のJP1/AJS3 Database _JFnnは1〜9,A〜Zの文字のどれか)サービスが開始していることを確認してください。開始していない場合は,JP1/AJS3 Database _JFnのサービスを開始してください。

    ajsembdbstatusコマンドに-s ust -id _JFnnは1〜9またはA〜Zのどれか)オプションを指定して実行し,組み込みDBが稼働状態になっていること(UNIT-STATがONLINEになっていること)を確認してください。稼働状態になっていない場合は,ajsembdbstartコマンドに-id _JFnオプションを指定して実行してください。

    対象となる組み込みDBのセットアップ識別子(_JFn)については,ajsembdbidlistコマンドを実行して確認してください。

  2. スケジューラーサービスを削除するためにjajs_setupコマンドを実行する。

    jajs_setup -e -F スケジューラーサービス名

    (例)スケジューラーサービス「AJSROOT3」を削除する場合

    jajs_setup -e -F AJSROOT3

    jajs_setupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド jajs_setup」を参照してください。

    なお,待機系ではjajs_setupコマンドの代わりにjbsunsetcnfコマンドを実行してください。

    jbsunsetcnf  -i -h 論理ホスト名 -c JP1AJSMANAGER -n スケジューラーサービス名

    (例)スケジューラーサービス「AJSROOT3」を削除する場合

    jbsunsetcnf  -i -h LHOST -c JP1AJSMANAGER -n AJSROOT3
  3. スケジューラーサービスを追加したときに作成したフォルダを削除する。

    jajs_setupコマンド実行時に作成した,次のフォルダを削除してください。

    • -dオプションに指定したデータベースフォルダ

    • -tオプションに指定したテンポラリーフォルダ

    • -jオプションに指定したジョブ情報フォルダ

    • -bオプションに指定した退避情報フォルダ

    重要

    -Dオプションに指定した論理ホスト共有フォルダは,削除しないでください。

  4. スケジューラーサービス単位でトレースログを出力している場合は,削除したスケジューラーサービスのトレースログファイルを削除する。

    環境設定パラメーターTRACELOGDIVに「yes」を設定している場合は,スケジューラーサービス単位でトレースログが出力されます。この場合,トレースログファイルは環境設定パラメーターTRACELOGDIVDIRに指定したフォルダに「tracelog_スケジューラーサービス名」という名前で出力されているので,削除したスケジューラーサービスのトレースログファイルを削除してください。

  5. 組み込みDBを停止する。

    すべての組み込みDBのJP1/AJS3 Database _JFnのサービスを停止してください。

  6. JP1/AJS3サービスを起動する。

    手順1で停止したサービスを再起動し,スケジューラーサービスが削除されていることを確認します。

(3) 不要となったデータベース環境をアンインストールする

不要となったデータベース環境のアンインストール手順については,「6.1.1(3) 不要となったデータベース環境をアンインストールする」を参照してください。

(4) スケジューラーサービス名を変更する

スケジューラーサービスの名称を変更すると,JP1/AJS3の各種機能に影響を与えます。例えば,ユニットが異常終了したり,正しく実行されなかったりするなどの現象が発生する場合があります。このため,スケジューラーサービスの名称変更は,運用開始前のスケジューラーサービスに対して実施することを推奨します。

クラスタ環境でスケジューラーサービスの名称を変更する場合,実行系および待機系の両方でjajs_setupコマンドを実行してください。また,待機系でjajs_setupコマンドを実行する場合は,必ず実行系の共通定義情報を待機系に反映する前に実施してください。

クラスタ環境でスケジューラーサービス名を変更する流れを次に示します。

  1. 実行系で,スケジューラーサービス名を変更する。

    運用開始前に実施する場合と運用開始後に実施する場合で,スケジューラーサービス名を変更する手順が異なります。手順については,「(a) 運用開始前にスケジューラーサービス名を変更する手順」または「(b) 運用開始後にスケジューラーサービス名を変更する手順」を参照してください。

  2. 実行系で次のコマンドを実行して,変更したスケジューラーサービス名が存在する論理ホストの共通定義情報を退避する。

    jbsgetcnf -h 論理ホスト名 > 退避ファイル名

    jbsgetcnfコマンドの詳細については,マニュアル「JP1/Base 運用ガイド」を参照してください。

  3. 待機系で,スケジューラーサービス名を変更する。

    運用開始前に実施する場合と運用開始後に実施する場合で,スケジューラーサービス名を変更する手順が異なります。手順については,「(a) 運用開始前にスケジューラーサービス名を変更する手順」または「(b) 運用開始後にスケジューラーサービス名を変更する手順」を参照してください。

  4. 待機系で次のコマンドを実行して,手順2で退避した論理ホスト共通定義情報を反映する。

    jbssetcnf 退避ファイル名

    jbssetcnfコマンドの詳細については,マニュアル「JP1/Base 運用ガイド」を参照してください。

スケジューラーサービス名を,運用開始前に変更する手順と運用開始後に変更する手順を次に示します。

(a) 運用開始前にスケジューラーサービス名を変更する手順

  1. jajs_setupコマンドを実行して,スケジューラーサービスの名称を変更する。

    次のコマンドを実行します。

    jajs_setup -r -F 変更前のスケジューラーサービス名 -A 変更後のスケジューラーサービス名

    jajs_setupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド jajs_setup」を参照してください。

(b) 運用開始後にスケジューラーサービス名を変更する手順

  1. 変更するスケジューラーサービスを停止し,スケジューラーサービスをコールドスタートする。

    コールドスタート後は,名称変更の手順が終了するまでジョブネットを実行登録しないでください。

  2. 物理ホストとすべての論理ホストのJP1/AJS3サービスを停止する。

  3. jajs_setupコマンドを実行して,スケジューラーサービスの名称を変更する。

    (例)AJSROOT2をAJSROOT5に変更する場合

    jajs_setup -r -F AJSROOT2 -A AJSROOT5

    jajs_setupコマンド実行時にメッセージKAVS1133-Wが出力されなかった場合は,手順4,手順5を実行しないで,手順6以降の操作を実行してください。

    jajs_setupコマンド実行時にメッセージKAVS1133-Wが出力された場合は,メッセージ中に出力される設定名称を確認してください。「ローカル日時」が出力されたときは手順4を,「サスペンド機能」が出力されたときは手順5の操作を実行してから,手順6以降の操作を実行してください。

    注意事項

    変更前のスケジューラーサービスにスケジューラーサービスローカル日時を設定している場合は,スケジューラーサービスの名称を変更する前に,スケジューラーサービスローカル日時とシステム日時の差分を取得しておいてください。スケジューラーサービスローカル日時は,ajslocaldateコマンドで取得してください。

    システム日時の取得方法については,使用しているOSのドキュメントを参照してください。

    スケジューラーサービスローカル日時の設定に失敗してメッセージKAVS1133-Wが出力された場合,手順4で,この差分を使用して変更後のスケジューラーサービスにスケジューラーサービスローカル日時を設定します。

  4. スケジューラーサービスローカル日時を再設定する。

    ajslocaldateコマンドを実行して,名称変更後のスケジューラーサービスに対してスケジューラーサービスローカル日時を設定します。

    (例)スケジューラーサービスAJSROOT5のスケジューラーサービスローカル日時をホストの現在時刻より5分(300秒)進める場合

    ajslocaldate -F AJSROOT5 -s 300

    ajslocaldateコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 4. 特別な運用で使用するコマンド ajslocaldate」を参照してください。

  5. サスペンド機能を再設定する。

    ajssetupコマンドを実行して,名称変更後のスケジューラーサービスに対してサスペンド機能を有効にします。クラスタ環境の場合,共有ディスクが参照できる実行系または待機系のどちらか一方で実施します。

    (例)スケジューラーサービスAJSROOT5のサスペンド機能を有効にする場合

    ajssetup -F AJSROOT5 -m

    ajssetupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド ajssetup」を参照してください。

  6. 変更する前のスケジューラーサービス名が次に示す環境設定パラメーターに設定されている場合,jajs_configコマンドを実行して変更後のスケジューラーサービス名に変更する。

    表8‒5 設定値を変更する必要のある環境設定パラメーター

    定義キー

    環境設定パラメーター

    定義内容

    [JP1_DEFAULT\JP1AJSMANAGER]

    "DEFAULTSERVICENAME"=

    デフォルトスケジューラーサービス名

    "REMNETSERVICENAME"=

    リモートジョブネットを実行するスケジューラーサービス名

    (例)デフォルトスケジューラーサービス名をAJSROOT5に変更する場合

    jajs_config -k [JP1_DEFAULT\JP1AJSMANAGER] "DEFAULTSERVICENAME"="AJSROOT5"

    (例)リモートジョブネットを実行するスケジューラーサービス名をAJSROOT5に変更する場合

    jajs_config -k [JP1_DEFAULT\JP1AJSMANAGER] "REMNETSERVICENAME"="AJSROOT5"

  7. スケジューラーサービス単位でトレースログを出力している場合は,名称を変更する前のスケジューラーサービスのトレースログファイル名を変更する。

    環境設定パラメーターTRACELOGDIVに「yes」を設定している場合は,スケジューラーサービス単位でトレースログが出力されます。この場合,トレースログファイルは環境設定パラメーターTRACELOGDIVDIRに指定したフォルダに「tracelog_スケジューラーサービス名」という名前で出力されます。「スケジューラーサービス名」の部分を,変更する前のスケジューラーサービス名から変更後のスケジューラーサービス名に変更してください。

  8. JP1/AJS3サービスを起動する。

  9. 次に示す場合は,スケジューラーサービス起動後,必要に応じてスケジューラーサービス設定を変更または再設定する。

    • ユニット定義に変更前のスケジューラーサービス名を指定している場合

    • JP1/AJS3の連携機能で,変更前のスケジューラーサービスを監視対象や情報収集対象としている場合

(c) スケジューラーサービス名を変更する場合の注意事項

次に示すスケジューラーサービスの環境設定パラメーターは,標準でスケジューラーサービス名を含むディレクトリパスを使用しています。

  • AJSSYSDIR

  • AJSLOGDIR

  • AJSDBDIRECTORY

  • AJSLOGFILE1

  • AJSLOGFILE2

  • AJSTMPDIR

  • JOBINFDIR

スケジューラーサービス名の変更後,環境設定パラメーターを変更しなくても運用に影響はありませんが,必要に応じて変更後のスケジューラーサービス名を含むディレクトリパスに変更することを検討してください。

サスペンド機能またはキューレスジョブを使用している環境で,環境設定パラメーターAJSDBDIRECTORYを変更する場合,変更後に各機能の再設定が必要です。再設定は,共有ディスクが参照できる実行系または待機系のどちらか一方で実施してください。

環境設定パラメーターを変更するには,jajs_configコマンドを使用します。jajs_configコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド jajs_config」を参照してください。

各環境設定パラメーターの詳細については,「20.4 スケジューラーサービス環境設定」を参照してください。