15.2.8 TCP/IP通信接続エラーの接続タイムアウト時間・リトライ間隔・回数の変更
ジョブ実行制御では,プロセス間で情報の受け渡しにTCP/IP通信を使用しています。接続先のホストが起動していない場合やネットワーク障害が発生している場合,TCP/IP通信の接続エラーが発生します。
このとき,ジョブ実行制御のTCP/IP通信処理では,最初の接続要求に対して通信相手から応答がなかった場合に最大で90秒待ち,その後,20秒の間隔をおいて2回再接続を試みます(デフォルト値の場合)。このため,リトライがすべて失敗し最終的に接続エラーとなるまでにおよそ4〜5分掛かることがあります。
次に示す通信を行う際に通信障害が発生すると,その検知に遅れが生じることがあります。
-
ジョブの配信
-
ジョブの状態通知
-
ジョブの状態確認
-
エージェントホストの状態確認
-
結果ファイル転送
-
ジョブの開始通知
-
ジョブの終了通知
障害の検知が遅れることによって,結果的にジョブの状態を変更するまでの時間が遅れます。
TCP/IP通信の接続エラーが頻繁に発生する場合は,接続タイムアウト時間,リトライ回数,リトライ間隔を短く設定変更することで,障害状態をより早く検知できます。
マネージャーホスト・エージェントホスト間のTCP/IP通信の処理について,ジョブを実行してから強制終了する例を次に示します。
|
図の①および③は,マネージャーホストからエージェントホストへのTCP/IP通信の環境設定パラメーターで,接続タイムアウト時間,リトライ回数,およびリトライ間隔を制御します。図の②および④は,エージェントホストからマネージャーホストへのTCP/IP通信の環境設定パラメーターで,接続タイムアウト時間,リトライ回数,およびリトライ間隔を制御します。
それぞれの環境設定パラメーターについて,次に説明します。
- マネージャーホストからエージェントホストへのTCP/IP通信の環境設定パラメーター
-
マネージャーホストからエージェントホストへのTCP/IP通信は,次のときに使用されます。
-
ジョブの配信
-
ジョブの強制終了
-
ジョブの状態確認
-
エージェントホストの状態確認
ジョブまたはエージェントの状態確認の詳細については,マニュアル「JP1/Automatic Job Management System 3 導入ガイド 5.4.8 実行登録ジョブの状態監視処理」を参照してください。
マネージャーホストからエージェントホストへのTCP/IP通信で使用する,接続タイムアウト時間,リトライ回数,およびリトライ間隔の環境設定パラメーターを次に示します。
表15‒24 マネージャーホストからエージェントホストへのTCP/IP通信で使用する環境設定パラメーター 項番
定義キー※
環境設定パラメーター
定義内容
1
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK],
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK\QUEUEMANAGER],および
[{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名\NETWORK\QUEUEMANAGER]
"ClientConnectTimeout"=
接続タイムアウト
2
"ClientRetryInterval"=
接続リトライ間隔
3
"ClientRetryCount"=
接続リトライ回数
- 注※
-
{JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
環境設定パラメーターの定義内容の詳細については,「20.8 通信制御の環境設定」を参照してください。
-
- エージェントホストからマネージャーホストへのTCP/IP通信の環境設定パラメーター
-
エージェントホストからマネージャーホストへのTCP/IP通信は,次のときに使用されます。
-
ジョブの開始通知
-
ジョブの終了通知
-
結果ファイル転送
エージェントホストからマネージャーホストへのTCP/IP通信で使用する,接続タイムアウト時間,リトライ回数,およびリトライ間隔の環境設定パラメーターを次に示します。
表15‒25 エージェントホストからマネージャーホストへのTCP/IP通信で使用する環境設定パラメーター 項番
定義キー
環境設定パラメーター
定義内容
1
[{JP1_DEFAULT|論理ホスト名}\JP1NBQAGENT\Network]※
"ConnectTimeout"=
ジョブ実行制御エージェントのTCP/IP通信接続タイムアウト値の定義
2
"CommunicateRetryCount"=
ジョブ実行制御エージェントのTCP/IP通信接続エラーのリトライ回数の定義
3
"CommunicateRetryInterval"=
ジョブ実行制御エージェントのTCP/IP通信接続エラーのリトライ間隔の定義
- 注※
-
{JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
環境設定パラメーターの定義内容の詳細については,「20.5 ジョブ実行環境設定」を参照してください。
-
- 〈この項の構成〉
(1) 定義手順
-
JP1/AJS3のサービスを停止する。
次のコマンドを実行して,プロセスがすべて停止していることを確認します。
# /etc/opt/jp1ajs2/jajs_stop※ # /opt/jp1ajs2/bin/jajs_spmd_status
- 注※
-
自動停止の設定がされていることを確認してください。
-
次のコマンドを実行して,「(2) 環境設定パラメーター一覧」の環境設定パラメーターを設定する。
jajs_config -k "定義キー名" "環境設定パラメーター名1"=定義内容1 ["環境設定パラメーター名2"=定義内容2] ["環境設定パラメーター名3"=定義内容3]
定義キー名に指定できる定義キーは一つです。異なる定義キーの環境設定パラメーターを設定する場合は,定義キーごとにjajs_configコマンドを実行する必要があります。
-
JP1/AJS3を再起動する。
設定した内容が反映されます。
(2) 環境設定パラメーター一覧
環境設定パラメーターの値を変更する定義キーと,使用目的を次の表に示します。
定義キー |
使用目的 |
---|---|
|
|
|
ジョブの状態通知 |
JP1NBQAGENT\Network |
|
JP1NBQCLIENT\Network |
スケジューラーからのジョブの登録,ジョブ実行に使用するコマンド |
|
他システム(JP1/OJEなど)のジョブの状態確認,および状態通知 |
それぞれの定義キーの環境設定パラメーターの一覧を次の表に示します。なお,キューレスジョブ実行機能では,これらの設定は必要ありません。
項番 |
定義キー※ |
環境設定パラメーター |
定義内容 |
参照先 |
---|---|---|---|---|
1 |
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK], [{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK\QUEUEMANAGER],および [{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名\NETWORK\QUEUEMANAGER] |
"ClientConnectTimeout"= |
接続タイムアウト |
|
2 |
"ClientRetryInterval"= |
接続リトライ間隔 |
||
3 |
"ClientRetryCount"= |
接続リトライ回数 |
- 注※
-
{JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
項番 |
定義キー |
環境設定パラメーター |
定義内容 |
参照先 |
---|---|---|---|---|
1 |
|
"ConnectTimeout"= |
ジョブ実行制御マネージャープロセスからジョブ実行制御状態通知プロセスへのTCP/IP通信接続タイムアウト値の定義(単位:ミリ秒) |
|
2 |
"CommunicateRetryCount"= |
ジョブ実行制御マネージャープロセスからジョブ実行制御状態通知プロセスへのTCP/IP通信接続エラーのリトライ回数の定義 |
||
3 |
"CommunicateRetryInterval"= |
ジョブ実行制御マネージャープロセスからジョブ実行制御状態通知プロセスへのTCP/IP通信接続エラーのリトライ間隔の定義(単位:秒) |
||
4 |
[{JP1_DEFAULT|論理ホスト名}\JP1NBQAGENT\Network]※ |
"ConnectTimeout"= |
ジョブ実行制御エージェントのTCP/IP通信接続タイムアウト値の定義(単位:ミリ秒) |
|
5 |
"CommunicateRetryCount"= |
ジョブ実行制御エージェントのTCP/IP通信接続エラーのリトライ回数の定義 |
||
6 |
"CommunicateRetryInterval"= |
ジョブ実行制御エージェントのTCP/IP通信接続エラーのリトライ間隔の定義(単位:秒) |
||
7 |
[{JP1_DEFAULT|論理ホスト名}\JP1NBQCLIENT\Network]※ |
"ConnectTimeout"= |
ジョブ実行に使用するコマンドおよびスケジューラーのTCP/IP通信接続タイムアウト値の定義(単位:ミリ秒) |
|
8 |
"CommunicateRetryCount"= |
ジョブ実行に使用するコマンドおよびスケジューラーのTCP/IP通信接続エラーのリトライ回数の定義 |
||
9 |
"CommunicateRetryInterval"= |
ジョブ実行に使用するコマンドおよびスケジューラーのTCP/IP通信接続エラーのリトライ間隔の定義(単位:秒) |
20.5.2(77) CommunicateRetryInterval(ジョブ実行に使用するコマンドおよびスケジューラー用) |
|
10 |
|
"ConnectTimeout"= |
ジョブ実行制御状態通知プロセスのTCP/IP通信接続タイムアウト値の定義(単位:ミリ秒) |
|
11 |
"CommunicateRetryCount"= |
ジョブ実行制御状態通知プロセスのTCP/IP通信接続エラーのリトライ回数の定義 |
||
12 |
"CommunicateRetryInterval"= |
ジョブ実行制御状態通知プロセスのTCP/IP通信接続エラーのリトライ間隔の定義(単位:秒) |
- 注※
-
{JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。