14.7.3 ISAMファイル自動再編成機能の設定
JP1/AJS2サービスの起動時に,該当する物理ホストおよび論理ホストで使用するISAMデータファイルを自動的に再編成できます。JP1/AJS2 - Managerのインストール時には,この機能は無効になっています。有効にするには,/etc/opt/jp1ajs2/conf/jp1ajs_spmd_pre.conf.modelを,サービス構成ファイル格納ディレクトリのjp1ajs_spmd_pre.confにコピーしてください。サービス構成ファイル格納ディレクトリは,物理ホスト環境では/etc/opt/jp1ajs2/conf,論理ホスト環境では「jp1ajs2_setup_clusterコマンドで指定した共有ディレクトリ/jp1ajs2/conf」です。
ISAMファイル自動再編成機能を有効にすると,/opt/jp1ajs2/binディレクトリのjpqautocondおよびajsautocondが起動されるようになります。jpqautocondは,ジョブ実行環境のデータファイルを再編成します。ajsautocondは,ISAMで運用されているすべてのスケジューラーサービスのデータベースを再編成します。
ajsautocondは次の処理を行います。
- JP1/AJS2 - Viewから,再編成の対象となるホストにあるデータベースへの接続を切り離す。
データベースへの接続を切り離す場合で,すでにデータベースへの処理要求があったときは,その要求が終了するまで接続の切り離しを待ちます。
データベースへの接続を切り離したあとに,JP1/AJS2 - Viewから再接続すると,「KAVV461-E 指定したスケジューラーサービスはメンテナンス中のため接続できません。」メッセージが出力されます。その場合は,時間を置いて(再編成の終了を待って)再接続してください。
また,ジョブネットワーク要素を操作するコマンドが,再編成の対象となるホストで実行中の場合も,該当するコマンドの実行が終了するまで接続の切り離しを待ちます。再編成中にジョブネットワーク要素を操作するコマンドを実行した場合は,「KAVS1717-E メンテナンス中のため実行できません」メッセージが出力されます。
これらの切断状況監視時間は,環境変数AJSAUTOCONDWAITで指定できます。指定できる値は,0~86,400(単位:秒)です。デフォルトは20秒です。切断状況監視時間内に切断が完了しない場合は,再編成は行いません。自動再編成を行う場合,環境変数AJSAUTOCONDWAITはJP1/AJS2サービスの起動環境に設定してください。
なお,ajsautocondは内部でjajs_maintainコマンドを呼び出します。環境変数AJSAUTOCONDWAITの値は,jajs_maintainコマンドの-cオプションに設定されます。この値が不正な場合は,jajs_maintainコマンドのエラーメッセージが下記補足事項に示すログファイルに出力され,再編成は行いません。
また,JP1/AJS2 Console機能を使用している場合,監視対象ホストが再編成中の間は,AJS2ユニット監視オブジェクトの状態が「状態不明」になります。
- 該当する物理ホスト,および論理ホストのすべてのスケジューラーサービスのデータベースを再編成する。
- JP1/AJS2 - Viewおよびジョブネットワーク要素を操作するコマンドの,データベースへの接続抑止を解除する。
- 注意事項
- 再編成時には,対象の物理ホストまたは論理ホストの作業ディレクトリ(ジョブ実行環境の環境設定パラメーターWorkPathパラメーターに指定したマネージャープロセス実行時のワークディレクトリおよび各スケジューラーサービスの環境設定パラメーターAJSTMPDIRパラメーターに指定したテンポラリーファイル用ディレクトリ)があるパーティションに,再編成対象のスケジューラーおよびジョブ実行環境のISAMファイルの中で最もサイズが大きいファイルの2倍程度の空き容量が必要です。
- また,スケジューラーサービスおよびジョブ実行環境データベースディレクトリがあるパーティションに,再編成対象のISAMファイルの中で最もサイズが大きいファイルと同じ程度の空き容量が必要です。
- 補足事項
- 06-71以前のJP1/AJS2では,従来まではスクリプトの処理方式にJP1/BaseのISAMデータベース再編成コマンドJiscondを使用していましたが,JP1/AJS2 07-00では自動再編成スクリプトajsautocondおよびjpqautocondスクリプトで再編成前のファイルの検証と再編成失敗時の自動修復ができるようにするため,スクリプトの処理方式を変更しています。できるだけマスターISAMファイルが不正になる状態を少なくするためにISAMファイルの状態を検証(Jischk)し,データを一度作業ファイルに抽出(Jisext)して再作成(Jisconv)した上でマスターファイルにリネームする方式になっています。それぞれの処理でエラーになった場合には,エラーメッセージが次に示す再編成ログファイルに出力されますので,オペレーターのとる処置を参照して対処してください。
- ・物理ホストの場合
- 次の二つのログファイルにエラーメッセージを出力します。
/var/opt/jp1ajs2/log/ajsautocond[面数番号].log
/var/opt/jp1ajs2/log/jpqautocond[面数番号].log
- [面数番号]はログファイル名を表し,1から4の数字になります。
- 四つのログファイルをすべて使い切ると,古いログファイルから再利用します。
- ・論理ホストの場合
- 次の二つのログファイルにエラーメッセージを出力します。
/var/opt/jp1ajs2/log/ajsautocond_[論理ホスト名][面数番号].log
/var/opt/jp1ajs2/log/jpqautocond_[論理ホスト名][面数番号].log
- [面数番号]はログファイル名を表し,1から4の数字になります。
- 四つのログファイルをすべて使い切ると,古いログファイルから再利用します。