6.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通信で使用する,接続タイムアウト時間,リトライ回数,およびリトライ間隔の環境設定パラメーターを次に示します。
表6‒20 マネージャーホストからエージェントホストへのTCP/IP通信で使用する環境設定パラメーター 項番
定義キー※1
環境設定パラメーター
定義内容
1
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK],
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK\サブキー]※2,および
[{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名\NETWORK\サブキー]※2
"ClientConnectTimeout"=
接続タイムアウト
2
"ClientRetryInterval"=
接続リトライ間隔
3
"ClientRetryCount"=
接続リトライ回数
- 注※1
-
{JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
- 注※2
-
サブキーの部分は,ジョブ実行制御マネージャープロセスの場合は「QUEUEMANAGER」を,イベント・アクション制御マネージャープロセスの場合は「EVMANAGER」を指定します。
環境設定パラメーターの定義内容の詳細については,「20.8 通信制御の環境設定」を参照してください。
-
- エージェントホストからマネージャーホストへのTCP/IP通信の環境設定パラメーター
-
エージェントホストからマネージャーホストへのTCP/IP通信は,次のときに使用されます。
-
ジョブの開始通知
-
ジョブの終了通知
-
結果ファイル転送
エージェントホストからマネージャーホストへのTCP/IP通信で使用する,接続タイムアウト時間,リトライ回数,およびリトライ間隔の環境設定パラメーターを次に示します。
表6‒21 エージェントホストからマネージャーホストへの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) 定義手順
-
Windowsの[コントロールパネル]の[管理ツール]で[サービス]を選択し,次に示すサービスを停止する。
-
JP1/AJS3サービス
-
-
次のコマンドを実行して,「(2) 環境設定パラメーター一覧」の環境設定パラメーターを設定する。
jajs_config -k 定義キー名 "環境設定パラメーター名"=定義内容 ["環境設定パラメーター名2"=定義内容2] ["環境設定パラメーター名3"=定義内容3]
定義キー名に指定できる定義キーは一つです。異なる定義キーの環境設定パラメーターを設定する場合は,定義キーごとにjajs_configコマンドを実行する必要があります。
-
JP1/AJS3を再起動する。
設定した内容が反映されます。
(2) 環境設定パラメーター一覧
環境設定パラメーターの値を変更する定義キーと,使用目的を次の表に示します。
定義キー |
使用目的 |
---|---|
|
|
|
ジョブの状態通知 |
JP1NBQAGENT\Network |
|
JP1NBQCLIENT\Network |
スケジューラーからのジョブの登録,ジョブ実行に使用するコマンド |
|
他システム(JP1/NQSEXECやJP1/OJEなど)のジョブの状態確認,および状態通知 |
それぞれの定義キーの環境設定パラメーターの一覧を次の表に示します。なお,キューレスジョブ実行機能では,これらの設定は必要ありません。
項番 |
定義キー※ |
環境設定パラメーター |
定義内容 |
参照先 |
---|---|---|---|---|
1 |
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK], [{JP1_DEFAULT|論理ホスト名}\JP1AJS2\HOST\NETWORK\サブキー],および [{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名\NETWORK\サブキー] |
"ClientConnectTimeout"= |
接続タイムアウト |
|
2 |
"ClientRetryInterval"= |
接続リトライ間隔 |
||
3 |
"ClientRetryCount"= |
接続リトライ回数 |
- 注※
-
{JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
表6‒24 ジョブ実行制御のTCP/IP通信環境設定パラメーター 項番
定義キー
環境設定パラメーター
定義内容
参照先
1
-
スケジューラーサービス(共通)の場合
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\SCHEDULER\QUEUE\MANAGER\Network]※
-
スケジューラーサービス(個別)の場合
[{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名\QUEUE\MANAGER\Network]※
-
サブミットジョブおよび互換用ISAM構成の場合
[{JP1_DEFAULT|論理ホスト名}\JP1NBQMANAGER\Network]※
"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(76) CommunicateRetryInterval(ジョブ実行に使用するコマンドおよびスケジューラー用)
10
-
スケジューラーサービス(共通)の場合
[{JP1_DEFAULT|論理ホスト名}\JP1AJS2\SCHEDULER\QUEUE\NOTIFY\Network]※
-
スケジューラーサービス(個別)の場合
[{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名\QUEUE\NOTIFY\Network]※
-
サブミットジョブおよび互換用ISAM構成の場合
[{JP1_DEFAULT|論理ホスト名}\JP1NBQNOTIFY\Network]※
"ConnectTimeout"=
ジョブ実行制御状態通知プロセスのTCP/IP通信接続タイムアウト値の定義(単位:ミリ秒)
11
"CommunicateRetryCount"=
ジョブ実行制御状態通知プロセスのTCP/IP通信接続エラーのリトライ回数の定義
12
"CommunicateRetryInterval"=
ジョブ実行制御状態通知プロセスのTCP/IP通信接続エラーのリトライ間隔の定義(単位:秒)
-
- 注※
-
{JP1_DEFAULT|論理ホスト名}の部分は,物理ホストの場合は「JP1_DEFAULT」を,論理ホストの場合は「論理ホスト名」を指定します。
(3) ソケットポート不足による通信エラー時の注意事項
単位時間当たりのジョブ実行数が多くなると,TCP/IP通信が増加しソケットポート不足が発生することがあります。ソケットポート不足による通信エラーの場合も一定間隔をおいて再接続を試みますが,再接続までの間にソケットポート不足が解消されなかった場合,ジョブ実行遅延,ジョブ異常終了,スケジューラーサービス異常終了,およびコマンド異常終了が発生することがあります。
ソケットポート不足が発生する場合は,マニュアル「JP1/Automatic Job Management System 3 設計ガイド(システム構築編) 3.1.1(5) OSのチューニング」を参照し,OSのパラメーターの調整を検討してください。
なお,表6-24および「20.8 通信制御の環境設定」の環境設定パラメーター一覧(通信制御)にある環境設定パラメーターは,ソケットポート不足による通信エラーも対象となります。