JP1/AJS2

2010/6/5更新

対応バージョン: 8

ジョブネットの監視中状態を作り出す方法を示す。

ジョブネット定義

任意のジョブネットを作成、あるいは既存のジョブネットを選択
ジョブネット定義画面に移動
画面右上の[排他編集]をチェック
メニューから[編集] > [起動条件の設定...]を選択
ダイアログで何も設定せず[OK]を押下
画面左の".CONDITION(AND)"を選択し、[イベント]タブから"実行間隔制御"ユニットを設定画面にドラッグして配置
[定義]タブの[待ち時間]を任意の時間に設定して[OK]を押下
ジョブネット定義画面を閉じる

スケジュール設定

当該ジョブネットを選択し、メニューから[編集] > [スケジュール...]を選択
デフォルトで設定されているスケジュールルールを選択し[変更]を押下
ルール画面にて起動画面を[使用しない]から[設定されていれば使用する]に変更
必要に応じてその他のスケジュールルールを設定して[OK]を押下
スケジュール設定画面に戻ったら[OK]を押下

2005/2/8更新

対応バージョン: 6

これらディレクトリ配下のファイルはJP1/AJS2が動作中に出力される一時ファイルやエラーログファイルで、JP1/AJS2を正常に終了すれば削除される。

ただ、OSがPanicダウン等により不適切に終了した場合はファイルが残ってしまう可能性があるので、動作中のJP1/AJS2がアクセスしていないファイルについては削除しても問題ない。

2005/2/8更新

対応バージョン: 6

jpqjobsubコマンドを使う。

例) 論理ホストsccs018上でtestというジョブをfooというユーザ権限で実行する

% jpqjobsub -mh sccs018 -ah sccs018 -eu foo -sc ~foo/test
KAVU0810-I ジョブ(131)をサブミットしました。

2005/2/8更新

対応バージョン: 6

事象

# jpqagtshow -mh knsdb101 -ah knsdb101
KAVU0851-I エージェントホスト情報(knsdb101)の表示を開始します
KAVU0957-E コマンドを実行する権限がありません

対策

JP1ユーザとして`root'ユーザを登録してJP1_JPQ_Admin権限を与える。

関連資料・記事

2005/2/8更新

対応バージョン: 6

rootのログインシェル(B-Shell)の初期設定スクリプトである/.profile内に端末設定を行なうsttyコマンドが記述されているが、ジョブネットを起動する場合は端末がない状態なのでsttyが上記のメッセージを出力する。

ジョブネットの実用上問題はないが、メッセージを抑止したい場合は/.profileを以下のように変更してジョブネット実行時はsttyが実行されないようにする。

(変更前)

20  if [ ! "$DT" ]; then
21     stty dec crt new
22  fi

(変更後)

JP1起動の場合に設定される環境変数JP1JobIDが設定されていない場合「のみ」sttyを実行するようにする。

20  if [ ! "$DT" ]; then
21    if [ ! "$JP1JobID" ]; then ← 追加
22      stty dec crt new
23    fi ← 追加
24  fi

2005/2/8更新

対応バージョン: 6

事象

# jpqjobshow -mh scs3001 -ah scs3001 -s ewsh
KAVU0820-I ジョブ情報の列挙を開始します
JOBID JOBNAME    T QUEUE   STATUS
----- ---------- - ------- -------
215   script_job a scs3001 WAITING

# jpqqueshow -mh scs3001 -ah scs3001
KAVU0838-I デフォルトキュー情報(scs3001)の表示を開始します
QUEUE : a : scs3001
MAXQUEUE : 100
WARNQUEUE : 80
ENTRYSTATUS : OPEN
EXITSTATUS : OPEN ← (1)
QUEUING : 1 ← (2)
EXECUTING : 0 ← (3)
LINKAGENT : scs3001:1
KAVU0842-I キュー情報の表示処理が正常終了しました

状況説明

キューイング数(2)は今実行を指示したジョブだけで1であり、キューの取出口(1)がOPENでかつ実行中のジョブ(3)が0なのですぐに実行状態に移れるはずであるが数分待っても実行中にならない。

解説

CPUが継続的に100%の使用率になっているとこのような事象になる場合がある。

これは、CPUの負荷が高いためにJP1が`あえて'状態をEXECUTINGにせずにWAITINGのままにしておくためである。

通常CPUが100%の使用率になっても一時的なものであり、継続的に100%になっている場合はプログラムの暴走等が考えられるのでvmstat等でCPUの利用率を確認して不要なプロセスを終了させる等の対処が必要である。

2005/2/8更新

対応バージョン: 6

想定環境

以下のようなジョブネットがあるとする。

                 +---------+
             +-->| ジョブ2 +---+
             |   +---------+   |
+---------+  |                 |   +---------+
| ジョブ1 +--+                 +-->| ジョブ4 |
+---------+  |                 |   +---------+
             |   +---------+   |
             +-->| ジョブ3 +---+
                 +---------+

この場合、通常はジョブ2と3がほぼ同時に起動して並列実行されるが、そうではなくジョブ2と3はどちらが先にスタートしてもいいがどちらか一方のジョブが実行中はもう片方のジョブがそのジョブの終了を待つようにしたい。

実行のパターンとしては以下の2パターンが考えられる。

ジョブ1 > ジョブ2 > ジョブ3 > ジョブ4
ジョブ1 > ジョブ3 > ジョブ2 > ジョブ4

実現方法

ジョブ2、3用に専用のジョブキューを割り当ててそのジョブキューの同時ジョブ実行数を1にする。

具体的な設定例は以下の通り。

/etc/hosts

10.197.10.31   scs2001 ← (1)
10.197.10.118  sccs018  sccs018_2 ← (2)

(1) 物理ホスト

(2) sccs018 : ジョブ1,4用JP1サービス(scs2001のエイリアス)

  sccs018_2 : ジョブ2,3用JP1サービス

/usr/jp1/sccs018/jp1ajs2/conf/jpqsetup.conf

:
$agent $a1 $system
    exec_jobs   0000 0000 1024
    def_queue   $q1
    max_jobs    100
    warn_jobs   80
    queue_ent   open
    queue_exit  open
    connect     $a1 1
$end

$agent $a2 sccs018_2
    exec_jobs   0000 0000 1 ← 同時ジョブ実行数 = 1
    def_queue   $q2
    max_jobs    100
    warn_jobs   80
    queue_ent   open
    queue_exit  open
    connect     $a2 1
$end
:

キュー再作成

関連資料・記事

ジョブ2,3の設定を変更し、「実行ホスト」欄にsccs018_2を設定。

2005/2/8更新

対応バージョン: 6

主な操作について説明する。

準備

スーパーユーザになる

尚、スーパーユーザはJP1ジョブ(キュー)に対する管理者権限であるJP1_JPQ_Admin権限を持っているものとする。

環境設定(ジョブキューの設定変更)

JP1/AJS2のデーモン停止

スタンドアローン構成
# /etc/opt/jp1ajs2/jajs_stop
HA構成
# /etc/opt/jp1ajs2/jajs_stop.cluster <論理ホスト>

ジョブキュー削除(このディレクトリ配下を全て削除)

スタンドアローン構成
# /bin/rm -rf /var/opt/jp1ajs2/database/queue
HA構成
# /bin/rm -rf /usr/jp1/<論理ホスト>/jp1ajs2/database/queue

ジョブキューディレクトリ作成

スタンドアローン構成
# mkdir /var/opt/jp1ajs2/database/queue
HA構成
# mkdir /usr/jp1/<論理ホスト>/jp1ajs2/database/queue

設定ファイル変更

スタンドアローン構成
# vi /etc/opt/jp1ajs2/conf/jpqsetup.conf
HA構成
# vi /usr/jp1/<論理ホスト>/jp1ajs2/conf/jpqsetup.conf
:
$agent $a1 $system
  exec_jobs 0000 0000 5 ← 左から順番に以下の設定
                          ・ジョブ同時実行制御「開始」時刻
                          ・ジョブ同時実行制御「終了」時刻
                            (*) 上記2つを0000にすると00:00〜00:00(終日)という
                                設定になる。
                          ・最大同時実行ジョブ数
                            (*) この数を越えるジョブはキューイングされる。
  def_queue  $q1   ← デフォルトキュー ID
  max_jobs   20    ← キュー内のジョブ数の `最大値' (1)
  warn_jobs  10    ← キュー内のジョブ数の `警告値' (2)
  queue_ent  open  ← キューの受付口の初期状態(open/close)
  queue_exit open  ← キューの取出口の初期状態(open/close)
  connect    $a1 1 ← 接続ホスト
$end
:

(*) キュー内のジョブ数の設定について、(1) >= (2)である必要がある。もしそうなっていない場合、ジョブキュー作成コマンドjpqimportで以下のエラーになる。

VU5959-E The maximum number of queuing jobs is specified incorrectly. (line:24)
KAVU5970-E The definition process for configuration definition ended abnormally.

ジョブキュー作成

スタンドアローン構成
# jpqimport -dt isam -ci /etc/opt/jp1ajs2/conf/jpqsetup.conf \
  -dp /var/opt/jp1ajs2/database/queue
HA構成
# jpqimport -dt isam -ci /usr/jp1/<論理ホスト>/jp1ajs2/conf/jpqsetup.conf \
  -mh <論理ホスト> -dp /usr/jp1/<論理ホスト>/jp1ajs2/database/queue
Analyzing configuration definition file... 1/1
KAVU5800-I The definition process for configuration definition ended normally.

JP1/AJS2のデーモン起動

スタンドアローン構成
# /etc/opt/jp1ajs2/jajs_start
HA構成
# /etc/opt/jp1ajs2/jajs_start.cluster

設定値の確認

# jpqqueshow [-mh <論理ホスト>] [-ah <論理ホスト>]
KAVU0838-I デフォルトキュー情報(sccs009)の表示を開始します
QUEUE : a : sccs009
MAXQUEUE : 20
WARNQUEUE : 10
ENTRYSTATUS : OPEN
EXITSTATUS : OPEN
QUEUING : 1 ← キューイング中のジョブの数
EXECUTING : 20 ← 実行中のジョブの数
LINKAGENT : sccs009:1
KAVU0842-I キュー情報の表示処理が正常終了しました

# jpqqueshow -mh sccs009 -ad
KAVU0840-I デフォルトキューを含む全てのキュー情報の表示を開始します
T QUEUE   MAXQUEUE WARNQUEUE ENT  EXIT QUEUING EXECUTING
- ------- -------- --------- ---- ---- ------- ---------
a sccs009 20       10        OPEN OPEN 1       20
KAVU0842-I キュー情報の表示処理が正常終了しました

運用(ジョブキューの操作)

ジョブキューの定義情報変更

ジョブキューの定義情報は通常設定ファイルjpqsetup.confを編集して行うが、jpqagtaltコマンドでも変更できる。

(*) ただし、変更内容はジョブキューには反映されるが設定ファイルには反映されない。なぜなら、設定ファイルはJP1のデーモン起動時に読み込まれるのではなく「手動でキューを作る場合の」雛型ファイルだからである。

ここでは例として最大同時実行ジョブ数を3に変更する場合を示す。

この値を適用する時間帯として00:00〜00:00(終日)を指定する。

# jpqagtalt -ah sccs009 -cp 00:00-00:00=3
KAVU0850-I エージェント(sccs009)の定義情報を変更しました

ジョブキューの定義情報をjpqagtaltコマンドで参照すると変更内容が反映されているのが分かる。

# jpqagtshow -ah sccs009
KAVU0851-I エージェントホスト情報(sccs009)の表示を開始します
AGENT : sccs009
CUREXECHGNUM : 3
EXECUTING : 3
CHANGEPOINT : 00:00-00:00=(3) ←
KAVU0854-I エージェントホスト情報の表示処理が正常終了しました

また、ジョブキューの定義情報はファイルとしてexportすることもできる。

例としてジョブキューの定義情報をJobQueSetting.outというファイルに出力する場合を示す。

# jpqexport -dt isam -co JobQueSetting.out -mh sccs009
Outputting configuration definition file... 1/1
KAVU5801-I The output process for configuration definition ended normally.

# more JobQueSetting.out
:
$agent $a1 $system
  exec_jobs   0000 0000 3 ← jpqagtaltコマンドによる設定内容
  def_queue   $q1
  max_jobs    20
  warn_jobs   10
  queue_ent   open
  queue_exit  open
  connect     $a1 1
$end

ジョブキューの取出口操作

ジョブキューの取出口を塞ぐことによって、現在キューイング状態にあるジョブを実行状態にさせなくすることができる。

# jpqqueclose -ah sccs009 -ex
KAVU0836-I キュー(sccs009)のジョブ取出口をクローズしました

# jpqqueshow -ah sccs009
KAVU0838-I デフォルトキュー情報(sccs009)の表示を開始します
QUEUE : a : sccs009
MAXQUEUE : 4
WARNQUEUE : 3
ENTRYSTATUS : OPEN
EXITSTATUS : CLOSE ←
QUEUING : 2
EXECUTING : 0
LINKAGENT : sccs009:1
KAVU0842-I キュー情報の表示処理が正常終了しました

反対にジョブキューの取出口を開けることによって、キューイング状態にあるジョブを実行状態に移すことが可能になる(あくまで可能にするだけであって実行状態にするわけではない)。

ジョブキューの取出口はデフォルトでは開いている。

# jpqqueopen -ah sccs009 -ex
KAVU0835-I キュー(sccs009)のジョブ取出口をオープンしました

ジョブキューの受付口操作

ジョブキューの受付口を塞ぐことによって、最大同時実行ジョブ数を越えたジョブをキューイングできないようにすることができる。

# jpqqueclose -ah sccs009 -en
KAVU0836-I キュー(sccs009)のジョブ受付口をクローズしました

# jpqqueshow -ah sccs009
KAVU0838-I デフォルトキュー情報(sccs009)の表示を開始します
QUEUE : a : sccs009
MAXQUEUE : 4
WARNQUEUE : 3
ENTRYSTATUS : CLOSE ←
EXITSTATUS : OPEN
QUEUING : 0
EXECUTING : 1
LINKAGENT : sccs009:1
KAVU0842-I キュー情報の表示処理が正常終了しました

反対にジョブキューの受付口を開けることによって、最大同時実行ジョブ数を越えたジョブをキューイングできるようにすることができる。

ジョブキューの受付口はデフォルトでは開いている。

# jpqqueopen -ah sccs009 -en
KAVU0836-I キュー(sccs009)のジョブ受付口をオープンしました

2005/2/8更新

対応バージョン: 6

ジョブの状態参照(一覧)

# jpqjobshow -mh sccs009 -ah sccs009 -s ehwsr
KAVU0820-I ジョブ情報の列挙を開始します
JOBID  JOBNAME   T  QUEUE    STATUS
-----  --------  -  -------  ---------
10     sleep.sh  a  sccs009  EXECUTING
11     sleep.sh  a  sccs009  EXECUTING
12     sleep.sh  a  sccs009  WAITING
KAVU0821-I ジョブ情報の列挙処理が正常終了しました

-sオプションで特定の状態のジョブのみ表示するように指定できる。

e : executing
h : holding
w : waiting
s : scheduling
r : routing

ジョブの状態参照(詳細)

# jpqjobget -ah sccs009 -j 15
KAVU0815-I ジョブ情報(15)の表示を開始します
JOBID : 15
OWNER : a
JOBNAME : sleep.sh
QUEUE : sccs009
STATUS : WAITING
ENTRYTIME : 2000/12/25.15:28:06
KAVU0816-I ジョブ情報の表示処理が正常終了しました

ジョブの状態変更(Any → 保留)

# jpqjobalt -ah sccs009 -h -j 15
KAVU0812-I ジョブ(15)の状態を変更(保留)しました

# jpqjobshow -mh sccs009 -ah sccs009 -s ehwsr
KAVU0820-I ジョブ情報の列挙を開始します
JOBID  JOBNAME   T  QUEUE    STATUS
-----  --------  -  -------  ---------
10     sleep.sh  a  sccs009  EXECUTING
13     sleep.sh  a  sccs009  EXECUTING
14     sleep.sh  a  sccs009  EXECUTING
15     sleep.sh  a  sccs009  HOLDING
KAVU0821-I ジョブ情報の列挙処理が正常終了しました

ジョブの状態変更(保留 → 保留解除)

# jpqjobalt -ah sccs009 -hr -j 15
KAVU0812-I ジョブ(15)の状態を変更(保留解除)しました

ジョブのキャンセル

# jpqjobcan -ah sccs009 -j 33

終了ジョブの参照と削除

# jpqendjobshow -mh sccs009
KAVU0825-I 終了ジョブ情報の列挙を開始します
JOBID  JOBNAME   T  QUEUE    EXITCODE
-----  --------  -  -------  --------
1      sleep.sh  a  sccs009  1
2      sleep.sh  a  sccs009  1
4      sleep.sh  a  sccs009  1
5      sleep.sh  a  sccs009  1
3      sleep.sh  a  sccs009  -1
6      sleep.sh  a  sccs009  -1
7      sleep.sh  a  sccs009  -1
8      sleep.sh  a  sccs009  1
KAVU0826-I 終了ジョブ情報の列挙処理が正常終了しました

# jpqjobdel -mh sccs009 -j 1
KAVU0814-I ジョブ情報(1)を削除しました

# jpqjobdel -mh sccs009 -j 2
KAVU0814-I ジョブ情報(2)を削除しました

# jpqjobdel -mh sccs009 -j 3
KAVU0814-I ジョブ情報(3)を削除しました

# jpqendjobshow -mh sccs009
KAVU0825-I 終了ジョブ情報の列挙を開始します
JOBID  JOBNAME   T  QUEUE    EXITCODE
-----  --------  -  -------  ----------
4      sleep.sh  a  sccs009  1
5      sleep.sh  a  sccs009  1
3      sleep.sh  a  sccs009  -1
6      sleep.sh  a  sccs009  -1
7      sleep.sh  a  sccs009  -1
8      sleep.sh  a  sccs009  1
KAVU0826-I 終了ジョブ情報の列挙処理が正常終了しました

2005/2/8更新

対応バージョン: 6

0〜2^31-1、つまり0〜2,147,483,647である。

2005/2/8更新

対応バージョン: 6

Jiscondコマンは実行時にはJP1/AJS2サービスを停止しておく必要がある。

2005/2/8更新

対応バージョン: 6

/opt/jp1ajs2/lib/sample_scriptに各種情報を収集するスクリプト(_0?)が用意されているのでこれを利用する。

各スクリプトの詳細については同ディレクトリのREADME.eucを参照のこと。

尚、このスクリプトはスタンドアローン構成のJP1を前提にしているのでHA構成の場合はパス名等の変更が必要である。

解析情報は/tmp配下に作成されるので(オプションで変えられるスクリプトもある)ディスク容量には気をつけること。

2005/2/8更新

対応バージョン: 6

事象

% ajsshow -F sccs009 -RET s0ex02
KAVS0903-E システムエラーが発生しました : /s0ex02 0x781e019a

原因

認証サーバの設定が間違っている可能性がある。

どのホストに認証を依頼しているか確認するには認証結果ログ(/var/opt/jp1base/log/jbssessionapi.log*.log)を確認すればよい。

ログの例)

:localHostname = scs1001 ← 認証依頼ホスト
0002 2001/07/18 15:19:26.246 jp1base 000CE857 ----- jp1BsSessAclUtil0003- Local:Wed Jul 18 15:19:26 2001
:jp1AuthName = sccs009 ← 認証サーバ

2005/2/8更新

対応バージョン: 6

ajsprintを使用する。

主な使用方法

ajsprint -F サービス名 -f 出力フォーマット [-J ジョブ|-N ジョブネット|-G ジョブグループ]

その他のオプションについてはajsprintのマニュアル参照。

使用例

サービス名

本番サーバ2(sccs018)

出力フォーマット

ジョブの保留状態(%ha)とジョブ(ネット)名(%JN)

再帰出力指定

-R

出力対象

ジョブ(-J)

対象ジョブネット

/LIVE-TEST

% ajsprint -F sccs018 -f "%ha %JN" -R -J /LIVE-TEST
no /LIVE-TEST/backup/clustertest/ctest2/UNIXジョブ
:
yes /LIVE-TEST/foo/test_wait/sleep1 ← 保留
:

各の先頭のno/yesはジョブの保留状態を示す。

no

未保留

yes

保留

注意点

当ツールはJP1に対するAdmin権限があるユーザで行なうこと。

2005/2/8更新

対応バージョン: 6

ajsexport/ajsimportを使う。

例) sccs018:/test_G/testというジョブネットをpkgというパッケージ名で保存し、それをホストsccs081上にimportする

% ajsexport -o pkg sccs018:/test_G/test
% ajsimport -i pkg sccs081:/test_G

importしようとした場所に既に同名のジョブネットが存在する場合、

KAVS0652-E 同じ名前のユニット(/test_G/test)が存在するため定義できません

というエラーが出てimportに失敗するので強制的にimportしたい場合は-fオプションを付けてajsimportを実行する。

2005/2/8更新

対応バージョン: 6

ajsdefineコマンドを使用し、以下の手順で登録する。

設定ファイル(ユニット定義ファイル)を以下のフォーマットで作成する。設定は複数記述可能。

unit=<ユニット名>,<許可モード>,<所有者>,<資源グループ>;
{
  ty=g; ← ユニットのタイプ。`g' はジョブグループ。
  cm="<コメント>";
}

ajsdefineにこの設定ファイルを指定して実行する。

# ajsdefine [-F サービス名] -e <設定ファイル>

例) 以下のジョブグループを作る場合

ジョブグループ(=ユニット名) / 所有者 / 資源グループ / コメント
jg1 / user01 / RES1 / ジョブグループ1
jg2 / user02 / RES2 / ジョブグループ2

以下の設定ファイルをjg.confとして作成

unit=jg1,,user01,RES1;
{
  ty=g;
  cm="ジョブグループ1";
}
unit=jg2,,user02,RES2;
{
  ty=g;
  cm="ジョブグループ2";
}

サービス名=`serv1'のマシンにてajsdefineを実行

# ajsdefine -F serv1 -e jg.conf

尚、ジョブグループやジョブグループ、ジョブの削除にはajsdeleteコマンドを使用する。

例えばジョブグループを削除する場合は以下のようにすればよい。

# ajsdelete [-F サービス名] [-T|-G|-N] <ジョブ{ネット,グループ}>
-T

ルートジョブネット

-G

ジョブグループ

-N

ジョブネット

2005/2/8更新

対応バージョン: 6

事象

# /opt/jp1ajs2/bin/ajsdbcond -F sccs009 -x  (*) sccs009はサービス名
iscond: Not enough space
KAIU002-E I/O error on file /usr/jp1/sccs009/jp1ajs2/database/schedule /AJSROOT2/AJSBODYSCS1.DAT
KAIU105-E Cannot create key file on file compression, level of creation: 001

原因1

ajsdbcondは実行時にテンポラリとして/tmpあるいは/usr/tmpを使用するがこの領域が足りない。

原因2

ajsdbcondのバグで、実行時に確保したメモリを開放せずに処理が進んでしまうためメモリが足りなくなっている。以下の2つの方法で回避可能

JP1のバージョンアップ(JP1/BASE 06-00-/H以降で対処済)、あるいはパッチ適用(06-00-J0にて対処済)
ajsdbcond実行前にデータサイズのlimit値を上げておく

例) B-Shell環境の場合

limit値確認

$ /usr/bin/ulimit -a
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         131072 ← 現状のデータサイズのlimit値
stack(kbytes)        8192
memory(kbytes)       2037296
coredump(blocks)     unlimited
nofiles(descriptors) 4096
vmemory(kbytes)      4194304

limit値(データサイズ)変更

$ ulimit -d 512000
$ /usr/bin/ulimit -a
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         512000 ← 131Mから512Mに増加
stack(kbytes)        8192
memory(kbytes)       2037296
coredump(blocks)     unlimited
nofiles(descriptors) 4096
vmemory(kbytes)      4194304

2005/2/8更新

対応バージョン: 6

準備

あらかじめインストールしておくもの

JP1/Base

関連資料・記事

導入に必要なもの

JP1統合CD-ROM

導入OS

Tru64 UNIX 5.0A

インストール

インストーラ起動

% su
# mkdir /cdrom
# mount /dev/disk/cdrom0c /cdrom
# cd /cdrom/DIGITAL
# ./SETUP /cdrom

Hitachi PP Installer  02-04

  L) List Installed Software.
  I) Install Software.
  D) Delete  Software.
  Q) Quit.

  Select Procedure ===> ■ ← I

パッケージ選択

インストールしたいパッケージを反転させてスペースを押すことでそのパッケージがインストール対象として選択される。

       PP-No.       VR    PP-NAME
   001 P-9C12-2261  0600  JP1/NQSEXEC
   002 P-9C12-2661  0600  JP1/Power Monitor
   003 P-9C12-2761  0600  JP1/AJS2 - Manager
   004 P-9C2C-6561  0600  JP1/Application Manager for R/3(R)
   005 P-9C2C-6D61  0600  JP1/Application Manager for Oracle Appli
   006 P-9C2C-6J61  0600  JP1/IM - Central Console
   007 P-9C2C-6L61  0600  JP1/Base
   008 P-9U42-2B61  0600  JP1/NETM/DM SubManager
   009 P-9U42-2C61  0600  JP1/NETM/DM Client
   010 P-9U42-2D61  0600  JP1/NETM/DM Manager Basic Function
   011 R-9U42-2F61  0600  JP1/NETM/DM - SDK
   012 R-9U42-2H61  0600  JP1/NETM/DM Encryption Option

F) Forward B) Backward J) Down K) Up Space) Select/Unselect I) Install Q) Quit

ここでは「JP1/AJS2 - Manager」を選んでスペースを押す。

すると行の先頭に<@>マークが付く。

この状態でI(Install)を入力してインストールする。

       PP-No.       VR    PP-NAME
   001 P-9C12-2261  0600  JP1/NQSEXEC
   002 P-9C12-2661  0600  JP1/Power Monitor
<@>003 P-9C12-2761  0600  JP1/AJS2 - Manager
   004 P-9C2C-6561  0600  JP1/Application Manager for R/3(R)
   005 P-9C2C-6D61  0600  JP1/Application Manager for Oracle Appli
   006 P-9C2C-6J61  0600  JP1/IM - Central Console
   007 P-9C2C-6L61  0600  JP1/Base
   008 P-9U42-2B61  0600  JP1/NETM/DM SubManager
   009 P-9U42-2C61  0600  JP1/NETM/DM Client
   010 P-9U42-2D61  0600  JP1/NETM/DM Manager Basic Function
   011 R-9U42-2F61  0600  JP1/NETM/DM - SDK
   012 R-9U42-2H61  0600  JP1/NETM/DM Encryption Option

F) Forward B) Backward J) Down K) Up Space) Select/Unselect I) Install Q) Quit ■ ← I
Install PP? (y: install, n: cancel) ==> ■ ← y

インストールが開始され、数秒〜数十秒後にInstallation completed.と表示されればインストールは完了である。

インストール物 (man,infoは除く)

設定ファイル, initスクリプト
/etc/opt/jp1ajs2/*

/sbin/rc3.d/S99_JP1_80_AJS2 (/sbin/init.d/jajs_startへのシンボリックリンク)
/sbin/rc0.d/K01_JP1_20_AJS2 (/sbin/init.d/jajs_stopへのシンボリックリンク)
スケジュール情報等の格納先
/var/opt/jp1ajs2/database/*
/var/opt/jp1ajs2/jobinf/ (ディレクトリのみ)
/var/opt/jp1ajs2/backup/ (ディレクトリのみ)
実行ファイル
/opt/jp1ajs2/bin/*
ドキュメント
/opt/jp1base/doc/*
共有ライブラリ、メッセージカタログ
/opt/jp1base/include/ (ディレクトリのみ)
/opt/jp1base/lib/*
ツール
/opt/jp1base/tools/*
ログ
/var/opt/jp1ajs2/log/*
その他
/opt/jp1base/PatchHistory/ (ディレクトリのみ)

/var/opt/jp1ajs2/sys/*
/var/opt/jp1ajs2/tmp/ (ディレクトリのみ)

各種設定

initスクリプト変更

標準でインストールされる起動/停止スクリプトを修正する。

# vi /etc/opt/jp1ajs2/jajs_start
:
  17    : # /opt/jp1ajs2/bin/jajs_spmd >/dev/null 2>/dev/null
:
  23    : # WAIT_READY=YES
:

該当行のコメントを外す。

「: # WAIT_READY=YES」のコメントを削除するとJP1/AJS2 - Managerサービスの起動を待って次の処理が実行されるようになるのでこの設定を有効にするとOSの起動時間が遅くなるのでOS起動を優先させたい場合はこのコメントを削除しないこと。

# vi /etc/opt/jp1ajs2/jajs_stop
:
  16    : # /opt/jp1ajs2/bin/jajs_spmd_stop
:
  21    : # WAIT_READY=YES
:

該当行のコメントを外す。

「: # WAIT_READY=YES」については起動スクリプトの場合と同様。

JP1/AJS2の(運用)構成決定

JP1/AJS2 の運用するにあたって以下のような構成が考えられる。

JP1/AJS2 - Manager又はJP1/AJS2 - Light EditionとJP1/AJS2 - Viewでシステムを構築する場合
1台のJP1/AJS2 - Managerホストを使ったマネージャー/エージェント構成にする場合
複数のJP1/AJS2 - Managerを使ったマネージャー/エージェント構成にする場合
JP1/AJS2 - Client Toolkitを使う場合

以降、最初の構成をとった場合の設定について説明する。

スケジューラーサービスの構成定義

構成定義ファイル(Schedule.conf)を編集し、スケジューラーサービスの構成定義を行う>。

ここではデフォルトの設定を使用する。

ジョブ実行環境設定

構成定義ファイル(Queue.conf)を編集してジョブ実行環境を設定する。

ここではデフォルトの設定を使用する。

セットアッププログラム実行

# /opt/jp1ajs2/bin/jp1ajs2_setup
Analyzing configuration definition file... 1/1
KAVU5800-I The definition process for configuration definition ended normally.

/etc/servicesに以下のエントリが追加される。

jp1ajs2qman     20241/tcp          # JP1/AJS2 Job Manager
jp1ajs2qagt     20242/tcp          # JP1/AJS2 Job Agent
jp1ajs2qnfy     20243/tcp          # JP1/AJS2 Notify
jp1ajs2monitor  20244/tcp          # JP1/AJS2 Monitor
jp1ajs2report   20245/tcp          # JP1/AJS2 Report
jp1ajs2eamgr    20246/tcp          # JP1/AJS2 EVaction Manager
jp1ajs2eaagt    20247/tcp          # JP1/AJS2 EVaction Agent

JP1/AJS2データベースのテーブル作成

ajssetupコマンドを実行してスケジューラーサービスが使用するJP1/AJS2データベースのテーブルを作成する。

スケジューラーサービスを複数設定している場合、サービスごとにJP1/AJS2データベースを準備する。

# /opt/jp1ajs2/bin/ajssetup

イベント監視/アクションジョブ定義のための環境設定

jpoenvagtコマンドを実行してイベント監視やアクションジョブを定義するための環境を設定する。

# /opt/jp1ajs2/bin/jpoenvagt
KAVT8001-I Common environment definition command is started.
KAVT8006-I Environment setting was finished in normality.
KAVT8002-I Common environment definition command is finished.

スケジューラーサービスの起動

スケジューラーサービスを起動する。

# /etc/opt/jp1ajs2/jajs_start

環境変数設定(root)

<既存の設定に追加>
PATH

/opt/jp1ajs2/bin

LD_LIBRARY_PATH

/opt/jp1ajs2/lib