JP1/AJS3 は,複数の機能が連動してジョブの実行を制御しています。ここでは,JP1/AJS3 を構成する機 能を説明します。
1.2.1 JP1/AJS3 を構成する各機能の概要
JP1/AJS3 を構成するプログラムおよび機能を,次の表に示します。JP1/AJS3 は,これらの各機能が連動 してジョブの実行を制御しています。
表 1‒1 JP1/AJS3 の機能
プログラム 機能 機能の概要
JP1/AJS3 -Manager
システム管理制御 • サービス,プロセス,環境設定の管理 スケジューラー制御 • 実行スケジュールの管理
• ジョブネットによる実行順序制御 エージェント管理制御 • 実行エージェントの管理
ジョブ実行制御 • ジョブの配信や状態の管理(マネージャー)
• ジョブの実行(エージェント)
サブミットジョブ実行制御 • キューによるジョブの管理(マネージャー)
イベント・アクション制御 • イベント監視状態の管理(マネージャー)
• イベントの監視(エージェント)
組み込み DB 制御 • ジョブネット定義や実行エージェント定義などの情報を格納する RDB JP1/AJS3
-Agent
ジョブ実行制御 • ジョブの実行(エージェント)
イベント・アクション制御 • イベントの監視(エージェント)
JP1/AJS3 - View View 制御 • ジョブやジョブネットの定義
• ジョブやジョブネットの実行予定・実行状況の表示
JP1/AJS3 を構成する機能とその関連を,次の図に示します。
図 1‒7 JP1/AJS3 の機能
1.2.2 各機能の関連
JP1/AJS3 では,予定の日時にジョブを実行したり,実行順序を決めてジョブを実行したりするなど,ジョ ブを計画的に実行できます。また,あるファイルが更新されたときにジョブを実行したり,JP1 のイベン トが発生したときにジョブを実行したりするなど,特定の事象を契機として自動的にジョブを実行できます。
この場合,JP1/AJS3 は,機能が次のように連動してジョブの実行を制御します。
1. ジョブの実行時期を決める(スケジューラー制御)。
• 予定日時などのスケジュールに沿ってジョブの実行を指示します。
2. 特定の事象を受けてジョブ実行の契機とする(イベント・アクション制御)。
• ファイル更新や JP1 イベントに対応してジョブの実行を指示します。
3. ジョブを実行する(ジョブ実行制御)。
• スケジューラー,およびイベント・アクション制御からの実行指示で,実際にジョブを実行します。
各機能が連動する様子を,例を挙げて説明します。
(例)起動条件を設定したジョブネットを,計画実行登録で実行する場合
1. カレンダーや処理サイクルを基に実行スケジュールを算出し,実行日時を確定する。
実行日時になったらジョブネットの実行を開始します。
2. 起動条件が設定されているため,指定されたイベントの受信を待つ。
イベントを受信して起動条件が成立したら,ジョブネットの実行が開始されます。
3. ジョブネットに定義したジョブの実行順序に従って,一つ一つのジョブを実行する。
ジョブは実行待ち→実行中→正常終了のように状態が移り変わります。状態の移り変わりに合わせて,
先行ジョブから後続ジョブへと順に実行されていきます。
4. ジョブを実行するときは,実行エージェントでジョブの同時実行数などを制御する。
実行エージェントに対応したエージェントホストでジョブが実行されます。
このようにジョブを実行すると各機能が連動して,実行日時や実行順序によってジョブを実行するタイミ ングを制御(1,2,3)し,実行エージェントによってジョブを効率良く実行(4)します。
JP1/AJS3 の各機能はそれぞれ異なった性質の処理を担当し,それらが連動してジョブを実行します。
1.2.3 システム管理制御
システム管理制御は,JP1/AJS3 のサービス,プロセス,環境設定を管理し,ジョブ管理システム全体を 制御します。JP1/AJS3 の各プロセスを環境設定に従って安全に起動および停止したり,プロセスの状態 を監視して異常時には再起動したりするなど,ジョブ管理システムの基盤となる機能です。
1.2.4 スケジューラー制御
(1) ジョブ・ジョブネットの実行順序の制御
ジョブやジョブネットの実行順序を定義して,定義内容に従って業務を運用します。一つのジョブやジョ ブネットが終了すると,ジョブネットの定義内容に従って,自動的に次の処理の実行を始めます。
先行するジョブの終了結果によってあとに実行する処理を変えたり,先行ジョブが異常終了したときにだ け実行するジョブを定義したりできます。
(2) 実行スケジュールの管理
ジョブネットを実行するスケジュールを定義し,定義したスケジュールに従って処理を実行します。
スケジュールには,業務の運用日と休業日を定義するカレンダーと,実行開始日時や処理サイクルを定義 するスケジュールルールの二つがあります。JP1/AJS3 は,この二つから,ジョブネットの実行スケジュー ルを算出します。
また,業務の実行を始めるきっかけとなる事象を定義しておき,その事象が起きるたびに業務を始めるこ ともできます。
1.2.5 エージェント管理制御
エージェント管理制御は,実行エージェントと呼ぶ論理的なエージェントを管理しています。実行エージェ ントとは,実際にジョブを実行するエージェントホスト名に対して JP1/AJS 上の名称を付けたもので,
ジョブを実行するエージェントホスト名をジョブの定義から分離することで,ジョブ定義のポータビリティ が向上できます。また,実行エージェントは,ジョブの実行多重度やジョブ配信の制限などの操作によっ て,負荷や時間帯によってジョブ数を制御するといった運用ができます。
さらに,複数の実行エージェントをグルーピングしたものを実行エージェントグループと呼び,ジョブの 実行を複数エージェントに分散して実行することができます。
1.2.6 ジョブ実行制御
ジョブ実行制御は,実行エージェントを使って,ジョブを実行します。ジョブの実行時には,実行エージェ ントに設定されているジョブの実行多重度,受付配信制限の状態およびエージェントホスト名の情報を参 照します。
ジョブ実行制御は,実行登録された順にジョブを一時的にメモリー上にためておき,同時に実行するジョ ブの数を制御しながら,ジョブをエージェントホストに順次配信します。エージェントホストは,配信さ れたジョブを実行します。
1.2.7 イベント・アクション制御
メールの受信,ファイルの作成や更新など,特定の事象を契機として,処理を自動的に実行できます。こ のようなジョブ実行のきっかけとなる特定の事象をイベントといいます。
また,先行ジョブが終了したときに,状態通知や終了の連絡のために,メールや JP1 イベントの送信など 特定の処理を実行できます。こうした処理をアクションといいます。
JP1/AJS3 で使用できる主なイベントとアクションを次に示します。
• イベント
• JP1 イベントの登録
• メールの受信
• ファイルの作成や更新
• ログファイルへのログ書き込み
• Windows イベントログへのイベントの出力
• アクション
• JP1 イベントの送信
• メールの送信
• 自ホストまたは他ホストの電源投入・電源切断
1.2.8 組み込み DB 制御
組み込み DB 制御は,ジョブネットや実行エージェントの定義情報など JP1/AJS3 の各種情報を格納する リレーショナルデータベースです。業務の運用中にこの機能を意識することはありませんが,トランザク ションの管理によって障害時でも格納データの整合性を保持することができるなど,ジョブ管理システム の基盤となる機能です。
1.2.9 View 制御
GUI を使ってジョブやジョブネットを定義したり,ジョブやジョブネットの実行予定・実行結果を画面に 表示したりできます。実行状況や実行結果は,アイコンの色で表されます。
1.2.10 その他の機能
(1) サブミットジョブ実行制御
サブミットジョブ実行制御は,バージョン 8 までジョブ実行制御機能で管理されていたジョブのうち,次 のジョブだけを管理します。
•
jpqjobsub
コマンドを使用して実行するサブミットジョブ• キューに登録して実行する QUEUE ジョブ
• JP1/OJE などの他システムから実行するジョブ
サブミットジョブ実行制御では,エージェント管理制御とは別に定義したキューおよびエージェントを使 用します。これらの構成定義情報,およびサブミットジョブ実行制御に実行登録されたジョブ情報は,
ISAM 形式のデータベースで管理します。
サブミットジョブ実行制御を使用する場合の設定については,マニュアル「JP1/Automatic Job
Management System 3 設計ガイド(システム構築編) 7.1.2 QUEUE ジョブ,サブミットジョブを使 用する場合の設定」を参照してください。
(2) キューレスジョブ実行制御
キューを使用しないジョブ(キューレスジョブ)を実行する機能です。キューレスジョブは,ジョブの実 行登録時にマネージャーホスト側のジョブ実行制御を経由しないで,直接エージェントに転送されて実行 されます。
(3) JP1/AJS3 Console 制御
JP1/AJS3 で実行されている複数の業務の状態を,集中的に監視できます。複数のマネージャーが管理す る業務を一つの画面で監視できます。
マネージャー側のコンポーネントが業務の状態を取得し,JP1/AJS3 - View 側のコンポーネントが業務の 状態を表示します。