その他問い合わせ #3645
closed「エージェントレスアイコン」が正常に終了せず次のフローに進まない問題
Description
Job Arranger Version 3.2 を利用しています。
ジョブ実行対象サーバ(OS:RHEL7)へssh接続後、
「エージェントレスアイコン」でコマンドを発行(スクリプトを実行)しているのですが、
スクリプトが正常終了した場合でも「エージェントレスアイコン」が終了せず、
次のジョブフロー処理に進まない事象が時々発生します。
ジョブネットとしては、状況「実行中」のままとなります。
(終わらないため、ジョブ実行管理画面で、手動で「ジョブネット停止」を実行しています)
※正常に次の処理に進む場合もございます。
何か原因が分かりましたらご教示いただけますでしょうか?
以下、詳細のジョブフロー①~⑤を説明します。
①「エージェントレスアイコン」でジョブ実行対象サーバ(OS:RHEL7)へssh接続
セッション:接続
認証方式:公開鍵
実行モード:非対話モード
プロンプト文字列:$
強制実行:ON
タイムアウト警告(分):0
↓
②「エージェントアイコン(ジョブアイコン)」ssh接続結果判定
ジョブコントローラ変数:
■ICON_STATUS
■JOBNET_ID
■JOBNET_NAME
■JOB_EXIT_CD
実行:exit $JOB_EXIT_CD
タイムアウト警告(分):0
強制実行:ON
処理継続:ON
ジョブ停止コード:1-255
↓
③「エージェントレスアイコン」でコマンドを発行(スクリプトを実行)
セッション:継続
実行:コマンドを発行(スクリプトを実行)
プロンプト文字列:$
タイムアウト警告(分):0
強制実行:ON
↓
④「エージェントアイコン(ジョブアイコン)」③の実行結果判定
ジョブコントローラ変数:
■ICON_STATUS
■JOBNET_ID
■JOBNET_NAME
■JOB_EXIT_CD
実行:exit $JOB_EXIT_CD
タイムアウト警告(分):0
強制実行:ON
処理継続:ON
ジョブ停止コード:1-255
↓
⑤「エージェントレスアイコン」ssh切断
セッション:切断
強制実行:ON
タイムアウト警告(分):0
上記、③の「エージェントレスアイコン」から先に進まない事象が時々発生しております。
実行しているスクリプト自体は正常に終了しております。
コマンド(スクリプト)実行後の戻り値が、Job Arranger Serverへ返っていないとかの可能性がありますでしょうか?
その場合、確認方法やログの確認箇所など教えていただけますと幸いです。
以上、宜しくお願い致します。
Files
Updated by Anonymous over 2 years ago
- Status changed from 新規登録 to 回答中
ジョブアレンジャーのご利用ありがとうございます。
「エージェントレスアイコン」でコマンドを発行(スクリプトを実行)しているのですが、
スクリプトが正常終了した場合でも「エージェントレスアイコン」が終了せず、
次のジョブフロー処理に進まない事象が時々発生します。
※正常に次の処理に進む場合もございます。
コマンド(スクリプト)実行後の戻り値が、Job Arranger Serverへ返っていないとかの可能性がありますでしょうか?
その場合、確認方法やログの確認箇所など教えていただけますと幸いです。
上記の状況を鑑みますとサーバ状況に依る事象ではないかと推測します。
先ずは以下の資料をご提示願えますか?
①実行ジョブネットとアイコンの設定詳細
②事象発生時の jobarg_server.log
問題のアイコンでの停止が発生した時と、そのアイコンが問題なく動いた時の両方の時間帯を含むlogをお願いできますか?
両方のアイコン稼働時刻を書き出してもらえると助かります。
実行結果のジョブネットとアイコンの実行フローを付けていただけますと、突合せできますのでそれがあれば尚助かります。
①は #2920 の添付 20180620_jobarranger情報.xlsx を参考にしてください。
フローと個々のアイコンの設定が一目になるよう配置していただけますと助かります。
※Job ArrangerはZabbixのサポートポリシーに準じております。
Zabbix3.xはサポート終了しておりますので、Job Arranger Version 3.2も正式サポート対象外となります。
早めのバージョンアップをご計画下さい。
速やかな返信のためにサポート契約をご検討頂ければ幸甚です。
宜しくお願い致します。
Updated by Anonymous over 2 years ago
ありがとうございます。
ご依頼いただいた資料(20221014_jobarranger情報(#3645).xlsx)を添付いたします。
シート2つに分けています。
①実行ジョブネットとアイコンの設定詳細
②事象発生時の jobarg_server.log
不明点や不足している情報等ございましたら、ご連絡ください。
ご確認の程、宜しくお願い致します。
Updated by Anonymous over 2 years ago
資料のご提供有難うございました。
①実行ジョブネットとアイコンの設定詳細 シートを見まして以下の5つのアイコンが並列になっているのが気になります。
ZZ102-03 ~ ZZ102-07
ZZ102-08 ~ ZZ102-12
並列のアイコンの処理通信が重複しているということはありませんか?
つまり2つの列が同じホストでエージェントレスのセッションを張って処理をしてる、それがJobServerとの通信でタイミングによってぶつるときがある、そういったことです。
個々のアイコン内の各設定を拝見できますか?
よろしくお願いいたします。
Updated by Anonymous over 2 years ago
ご確認頂きありがとうございます。
並列にはしていますが、ssh接続のセッションIDを分けております。
ZZ102-03 ~ ZZ102-07 → セッションID:10302
ZZ102-08 ~ ZZ102-12 → セッションID:10302とは別
※「ZZ102-05」「ZZ102_10」の各エージェントレスアイコンで実行しているスクリプトが異なるので、並列実行しております。
違うIDの場合でもタイミングによってぶつかるというようなことはあるのでしょうか?
また、追加で質問させてください。
エージェントレスアイコン「ZZ102-05」が、実行しているコマンド(スクリプト)が終わったにも関わらず、
終了しない問題のアイコンなのですが、JobArrangerServerの方では、
何でコマンド(スクリプト)の実行終了を判断しているのでしょうか?
以上、ご確認の程宜しくお願い致します。
Updated by Anonymous over 2 years ago
保守サポート ご担当様
横から失礼します。
jobarg_server.log のログメッセージについて教えてください。
以下2種類のログが、ジョブネット起動直後ぐらいに出力されているようですが、どのような意味のログなのでしょうか?
正常終了時も終わらない事象発生時も関係なく出ているようなので、特に関係はないと思われますがいかがでしょうか。
[ERROR] [JATRAPPER200038] Error sending result back: ZBX_TCP_WRITE() failed: [32] Broken pipe
[ERROR] In jatrap_jobresult() error: the job is not running. inner_job_id: 345443
Updated by Anonymous over 2 years ago
ご回答ありがとうございました。
並列にはしていますが、ssh接続のセッションIDを分けております。
了解しました。
個々のアイコン内の各設定を拝見できますか? ~こちらからの記載
本件の詳細を把握して回答するには追加で提供をお願いします。差し支えなければ、ジョブネットのエキスポートファイルでも結構です。
また、以下のログファイルを、問題のアイコンでの停止(ずっと実行中)が発生した時、発生しなかったときの両方を含むときのもので、ログは抜粋ではなくファイル丸ごとでお願します。
jobarg_server.log
jobarg_agent.log ジョブネットのジョブアイコンが動いているホストのもの
終了しない問題のアイコンなのですが、JobArrangerServerの方では、
何でコマンド(スクリプト)の実行終了を判断しているのでしょうか?
エージェントレスアイコン実行時にJobArrangerServer側のsshプロセスから実行ホストに設定された実行コマンド内容を送ります。
実行先ホスト側ではsshデーモンプロセスがそれを受取り、実行終了すると(socketクローズ)Server側のsshプロセスが実行終了とします。
jobarg_server.log のログメッセージについて教えてください。
[ERROR] [JATRAPPER200038] Error sending result back: ZBX_TCP_WRITE() failed: [32] Broken pipe
[ERROR] In jatrap_jobresult() error: the job is not running. inner_job_id: 345443
エージェントはジョブ実行後、その完了情報をサーバに送ります。
それを受け取るのがjatrapper(Job Agentからの結果を受信するプロセス)で、それがこの[JATRAPPER200038]エラーを出しています。
発生ケースはいろいろありますが、the job is not runningが出ている場合はServer-Agent間の通信の問題等でServer側が既に結果受領済の時にAgent側が再送したケースが考えられます。サーバの状況に依る通信の問題は起きるとき、起きないときがあります。
速やかな返信のためにサポート契約をご検討頂ければ幸甚です。
再度で恐縮ですがZabbix3.xはサポート終了しておりますので、Job Arranger Version 3.2はサポート対象外です。
早めのバージョンアップをご計画下さい。
宜しくお願い致します。
Updated by Anonymous over 2 years ago
- File share_log.zip share_log.zip added
ご確認頂きありがとうございます。
追加のファイルを添付致します。(固有名は一部マスキングしております)
・ジョブネットのエキスポートファイル
・ログファイル
jobarg_server.log
jobarg_agent.log ジョブネットのジョブアイコンが動いているホストのもの
ご確認の程宜しくお願い致します。
以下、日時など、補足です。
事象発生日時は、下記日付の3時開始のジョブネットです。(通常、1時間半~2時間半程度、終了するまでにかかります)
過去ジョブネットの終了メッセージが出なかったジョブの
実行しているスクリプト自体の終了タイミングは以下になります。
6月11日 04:43
6月16日 04:48
6月17日 04:41
6月20日 04:41
9月16日 04:44
9月21日 04:42
9月22日 04:42
10月7日
など
正常にジョブネットが終了した日付は、先に添付したExcelファイルと同じですが、例えば、下記になります。
2022/8/28~8/31 03:00開始のジョブネット
2022/10/12 03:00開始のジョブネット
2022/10/13 03:00開始のジョブネット
2022/10/14 03:00開始のジョブネット
このあたりの日付のログと、事象発生日のログで何か差があるようであれば、ご教示頂けると幸いです。
宜しくお願い致します。
Updated by Anonymous over 2 years ago
ご多用のところ恐れ入ります。
何か分かりましたらご回答頂けると幸いです。
また、下記エラーメッセージの解説について、質問です。
エージェントはジョブ実行後、その完了情報をサーバに送ります。
それを受け取るのがjatrapper(Job Agentからの結果を受信するプロセス)で、それがこの[JATRAPPER200038]エラーを出しています。
発生ケースはいろいろありますが、the job is not runningが出ている場合はServer-Agent間の通信の問題等でServer側が既に結果受領済の時にAgent側が再送したケースが考えられます。サーバの状況に依る通信の問題は起きるとき、起きないときがあります。
今回の構成について補足します。
JobArrangerServer導入サーバには、JobArrangerAgentもインストールしております。
sshで接続後、「エージェントレスアイコン」でスクリプトを実行している対象サーバには、JobArrangerAgentはインストールしておりません。(そのため、エージェントレスで実行しています)
質問ですが、[JATRAPPER200038]エラーを出すのは、「エージェントレスアイコン」についても同じなのでしょうか?
[JATRAPPER200038]エラーは、ジョブアイコンのみに関するものとなりますでしょうか?