7.8 フレキシブルジョブ使用時の注意事項
フレキシブルジョブ使用時の注意事項を,エージェントホストのOSごとに次に示します。
- OS共通の注意事項
-
-
中継エージェント,一斉配信エージェント,および宛先エージェントに指定できるOS
フレキシブルジョブの中継エージェント,一斉配信エージェントおよび宛先エージェントに指定できるOSは,WindowsとLinuxだけです。また,WindowsおよびLinux以外のOSでフレキシブルジョブを定義する場合には,中継エージェントを指定する必要があります。
-
フレキシブルジョブの強制終了
フレキシブルジョブを強制終了すると,ジョブ自体は強制終了状態になりますが,宛先エージェントの実行プログラムは強制終了できません。
-
物理ホストと論理ホストに関する注意事項
フレキシブルジョブは物理ホストでだけ実行できます。宛先エージェントに論理ホスト名を指定しても,物理ホストで実行されます。
-
ユーザーマッピングに関する注意事項
中継エージェントおよび宛先エージェントの両方でユーザーマッピングできるようにする必要があります。中継エージェントを使用する場合,宛先エージェントのユーザーマッピング定義の[サーバーホスト名]に中継エージェントのホスト名または「*(アスタリスク)」を設定する必要があります。
-
環境設定パラメーターFXJOB_MONITOR_TIMEOUTに関する注意事項
・フレキシブルジョブは,環境設定パラメーターFXJOB_MONITOR_TIMEOUTに指定した時間(デフォルト値は60分)を経過すると,ジョブの状態が異常検出終了となります。60分以上かかるジョブがある場合,環境設定パラメーターFXJOB_MONITOR_TIMEOUTに適切な値を設定してください。
・フレキシブルジョブ実行時にエラーが発生した場合,ジョブが異常検出終了となるまでに,環境設定パラメーターFXJOB_MONITOR_TIMEOUTに指定した時間(デフォルト値は60分)がかかる場合があります。
-
通信エラーが発生した場合の注意事項
通信エラーが発生した場合,フレキシブルジョブの状態は異常検出終了になりますが,宛先エージェントでは正常にユーザープログラムが実行されていることがあります。フレキシブルジョブが異常検出終了になった場合は,ユーザープログラムの実行結果を参照して対処してください。
-
標準入力ファイルからのデータの入力に対応していないコマンド
標準入力ファイルからのデータの入力に対応していないコマンドは実行できません。標準入力ファイルからのデータの入力に対応していないコマンドの例としては,Windowsのtimeoutコマンドがあります。
-
サービスの停止に関する注意事項
フレキシブルジョブを実行する時間帯に,中継エージェントや宛先エージェントで,JP1/AJS3 Autonomous AgentサービスやJP1/AJS3 Autonomous AgentMessengerサービスを停止しないでください。停止した場合,フレキシブルジョブが異常検出終了します。また,環境設定パラメーターFXJOB_MONITOR_TIMEOUTに指定した時間(デフォルト値は60分)が経過するまで実行中のままになる場合もあります。
-
フレキシブルジョブ実行時のワークパス
フレキシブルジョブ実行時のワークパスは変更できません。フレキシブルジョブ実行時のワークパスを次に示します。
・Windowsでインストール先フォルダがデフォルトまたはシステムで保護されたフォルダ配下の場合
%ALLUSERSPROFILE%\Hitachi\JP1\JP1_DEFAULT\JP1AJS2\tmp\AJSFX_WORK_00000001
・Windowsでインストール先が上記以外の場合
JP1/AJS3のインストール先フォルダ\tmp\AJSFX_WORK_00000001
・UNIXの場合
/var/opt/jp1ajs2/tmp/AJSFX_WORK_00000001
-
フレキシブルジョブの再実行
ロードバランサーを使用する場合,フレキシブルジョブを再実行またはリトライすると,実行先は再度振り分けられます。
一斉実行機能を使用する場合,フレキシブルジョブを再実行すると,すべての宛先エージェントで再実行されます。
-
リモートジョブネットとの組み合わせについて
リモートジョブネットとフレキシブルジョブを組み合わせて使用することは推奨しません。組み合わせて使用した場合,次に示すように,リモートジョブネットの定義だけでなく,フレキシブルジョブの実行要求も転送されます。このため,障害発生時に問題の切り分けが難しくなるおそれがあります。
-
マネージャーホストのリモートジョブネットの定義が,別のマネージャーホストに転送される。
-
転送先のマネージャーホストから中継エージェントにフレキシブルジョブの実行要求が行われる。
-
中継エージェントからロードバランサーに実行プログラムの実行要求が行われる。
-
ロードバランサーから宛先エージェントに実行プログラムの実行要求が転送される。
-
フレキシブルジョブの後続ジョブに引き継ぎ情報設定ジョブを指定している場合の注意事項
フレキシブルジョブの後続の引き継ぎ情報設定ジョブが引き継げる標準出力ファイルの内容は,4,096バイトまでです。4,096バイトを超える値を出力しても,使用できるのは4,096バイト分までです。4,096バイトの制限は,中継エージェントおよび宛先エージェントの両方で実施します。このため,中継エージェントと宛先エージェントの両方の文字コードで,4,096バイト以内となるようにしてください。なお,4,096バイトから4,097バイト目のデータがマルチバイト文字の場合は,「?」に置き換えられます。
-
フレキシブルジョブにOSのシャットダウンコマンドを登録しないこと
フレキシブルジョブに自ホストや中継エージェントや宛先エージェントに対するOSのシャットダウンコマンドを登録して実行しないでください。WindowsのシャットダウンはJP1/AJS3の停止完了を待たないため,JP1/AJS3が稼働中にシャットダウンを実行すると,JP1/AJS3のデータファイルが壊れるなど問題が発生するおそれがあります。ジョブの自動運用でシャットダウンしたい場合は,JP1/Power Monitorをインストールし,アクションジョブの「ローカル電源制御ジョブ」を実行する運用を検討してください。
また,手動でシステムを終了する場合,JP1/Power Monitorの電源制御コマンド(aompwconコマンド)を実行してください。JP1/Power Monitorをインストールしないで手動でシャットダウンを実行する場合は,JP1/AJS3のサービスを手動で停止したあとにシャットダウンを実行してください。
-
一斉実行機能利用時の,宛先エージェント上でのジョブの状態確認
フレキシブルジョブの一斉実行を使用している場合,JP1/AJS3 - Viewでは宛先エージェント上でのジョブの実行状態は確認できません。宛先エージェント上でのジョブの状態を細かく管理したい場合は,標準ジョブを使用してください。
-
一斉実行機能利用時の実行結果詳細
フレキシブルジョブの一斉実行を同期モードで使用している場合に,JP1/AJS3 - Viewで確認できる実行結果は,各宛先エージェントの標準エラー出力をすべてマージした内容になります。そのため,マージされる実行結果のサイズが巨大にならないように,個々の標準エラー出力は最大384バイトで制限され,385バイト以降は打ち切られます。
-
一斉実行機能で使用するIPアドレス
フレキシブルジョブの一斉実行を使用する場合,一斉配信エージェントおよび一斉配信先の宛先エージェントで使用するIPアドレスは,互いに通信できるIPアドレスを使用してください。
-
一斉実行機能利用時のジョブ実行時間
通信できない一斉配信先の宛先エージェントが存在し,かつ通信できない時間が環境設定パラメーターFXBC_MANAGEDAGT_REMOVEDTIMEに設定されている値を超えている場合に一斉実行すると,ジョブは正常に実行されて終了するにもかかわらず,次の理由からジョブ実行終了まで時間が掛かることがあります。
一斉配信エージェントから一斉配信先の宛先エージェントへの接続がタイムアウトと判定されるまで時間がかかるが,通信できない一斉配信先の宛先エージェントが削除され,存在しないものとして処理が続行されるため。
-
接続元制限機能の利用
接続元制限機能を利用する場合,マネージャーホストから中継エージェントへの接続は,中継エージェントのエージェント用接続許可設定ファイルで接続を制限できます。しかし,宛先エージェントへの接続,および一斉配信エージェントへの接続は,接続元制限機能で制限できません。
接続元制限については,「JP1/Automatic Job Management System 3 設計ガイド(システム構築編) 2.3.9 JP1/AJS3へ接続するホストの制限」を参照してください。
-
ホスト名の長さについての注意事項
フレキシブルジョブを使用する場合,次のホストのホスト名は,128バイト以下になるようにしてください。
・マネージャーホスト
・中継エージェント
・一斉配信エージェント
・宛先エージェント
-
- エージェントホストがWindowsの場合の注意事項
-
-
UAC機能についての注意事項
WindowsのUAC機能を有効にしていると,ビルトインAdministratorを除く,すべてのAdministratorsグループのOSユーザーは,Administrators権限が無効な状態で動作します。このため,フレキシブルジョブでは,UAC機能が有効の場合,Administrators権限を必要とするジョブは実行できません。
-
システムのリソース不足の発生を少なくするための対応
ある数以上のジョブを同時に実行すると,システムの環境によってはシステムのリソース(デスクトップヒープ領域)不足が発生し,エラーになることがあります。こうした場合の対応として次のことを検討してください。
・JP1/AJS3サービスのアカウントをユーザーアカウントにしてください。JP1/AJS3サービスのアカウントを,ほかのサービスのアカウントやログオンユーザーと異なるユーザーアカウントにすれば,デスクトップヒープ領域を共用しないで運用できます。
・フレキシブルジョブを実行するときによく使用するOSユーザーを,JP1/AJS3のサービスのアカウントと同じにすることで,デスクトップヒープ領域の消費を少なくできます。
-
アプリケーションファイル名に空白文字が含まれている場合の対応
ファイルタイプ(拡張子)に関連づけられているアプリケーションファイル名に空白文字が含まれるときは,エクスプローラのファイルタイプの編集で確認し,アプリケーションファイル名を「"」(ダブルクォーテーションマーク)で囲んでください。
-
フレキシブルジョブで指定するファイル名を254バイト以内にする
次に示すファイル名に文字数が255バイト以上のファイル名を指定した場合,ジョブが「起動失敗」状態または「異常検出終了」状態になることがあります。
・ジョブの実行ファイル名
・ジョブの環境変数ファイル名
・ジョブの終了判定のファイル名
上記のファイル名には,254バイト以内のファイル名を指定してください。
-
- エージェントホストがLinuxの場合の注意事項
-
-
フレキシブルジョブで設定できる終了コードについて
フレキシブルジョブで設定できる終了コードの値は0〜255です。ジョブの起動失敗や,標準出力データまたは標準エラー出力データの取得に失敗した場合は,終了コードは-1となります。
-
フレキシブルジョブが「起動失敗」状態にならないようにするための注意
JP1/AJS3サービスの起動ユーザーおよびフレキシブルジョブの実行OSユーザーに,次に示すファイルおよび格納先ディレクトリに対する書き込み権限および読み込み権限がないと,フレキシブルジョブが「起動失敗」状態になることがあります。そのため,JP1/AJS3サービスの起動ユーザーに,次に示すファイルおよび格納先ディレクトリに対する書き込み権限および読み込み権限を設定してください。
・実行OSユーザーのホームディレクトリ
・ジョブ実行制御のログファイル※
- 注※
-
ジョブ実行制御で使用するログファイルの詳細については,マニュアル「JP1/Automatic Job Management System 3 トラブルシューティング 1.2.4 ログファイルおよびディレクトリ一覧」を参照してください。
-
フレキシブルジョブ実行時のリソース制限値についての注意事項
UNIX版JP1/AJS3では,JP1/AJS3起動時のリソース制限値がジョブ実行時にも有効になります。そのため,リソースの制限値を設定したい場合は,JP1/AJS3の起動ユーザーであるrootユーザーに対して設定してください。ただし,実行するフレキシブルジョブに制限値を指定した場合は,指定した値が有効になります。詳細については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.5 ジョブ実行環境設定」を参照してください。
ファイルサイズの制限値を変更する例を次に示します。
-
rootユーザーのログインプロファイル(通常は[/.profile]($HOME/.profile))に次に示す記述を設定する。
fsizeには必要なファイルサイズを設定します。無制限にする場合は,unlimitedを設定してください。
ulimit -f fsize
-
rootユーザーでログインする。
-
JP1/AJS3サービスをrootユーザーで起動する。
fsizeの値が有効になります。
- 注意事項
-
OSのリソース設定ファイル(/etc/security/limits.conf)の値は,telnet接続などで起動されるloginコマンド経由のプロセスでだけ有効になります。JP1/AJS3から起動されるジョブは,サービスから起動されるプロセスであるためOSのリソース設定ファイルの設定は有効になりません。
-
フレキシブルジョブ実行時の環境変数LANGについての注意
次に示す環境変数LANGには同じ文字コード種別を設定してください。
・JP1/AJS3 Autonomous Agentサービス起動時の環境変数LANG
・JP1/AJS3 Autonomous Agent Messengerサービス起動時の環境変数LANG
・rootユーザーのログインプロファイルの環境変数LANG
-
JP1/AJS3サービスを自動起動している場合の注意
JP1/AJS3サービスを自動起動している場合,rootユーザーのログインプロファイルは読み込みません。そのため,ログインプロファイルでrootユーザーのリソース制限値を変更する設定にしても,手動でログインしてJP1/AJS3サービスを起動した際に設定されるリソース制限値と値が異なることがあります。この場合,ジョブ実行環境の環境設定パラメーターでリソース制限値を設定してください。ジョブ実行環境の環境設定パラメーターについては,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.5 ジョブ実行環境設定」を参照してください。
また,リソース制限値はJP1/AJS3の自動起動スクリプト(/etc/opt/jp1ajs2/jajs_start)にも記載できます。その場合は,十分な検証を実施した上で運用してください。
なお,フレキシブルジョブ実行時のグループIDは,rootユーザーでログインしたときに設定されるグループIDと異なります。詳細については,マニュアル「JP1/Automatic Job Management System 3 導入ガイド 5.4.12 ジョブ実行時のグループID(UNIX限定)」を参照してください。
-
端末を必要とするユーザープログラムをジョブとして実行する場合の注意
UNIX版JP1/AJS3で端末を必要とするユーザープログラムをジョブとして実行すると,正しく動作しない(フレキシブルジョブが異常終了する)場合があります。
-
OSユーザーを登録または更新する場合の注意
フレキシブルジョブ実行中に,システム管理者権限でpasswdコマンドなどによってOSユーザーを登録または更新しないでください。OSユーザーの登録または更新が終了したあとにジョブを実行してください。
-