こんにちは!JP1/AJSの運用保守やトラブル対応、日々お疲れ様です。
ジョブネットの実行状況や定義情報を確認するために、ターミナルから ajsshow コマンドを実行した際、突然以下のような不穏なエラーメッセージが表示されて焦った経験はありませんか?
Plaintext
KAVS1003-E 構成定義に誤った指定があります(AJSDBDIRECTORY)
「環境設定(環境設定パラメーター)やデータベースのパスが壊れてしまったのでは……?」と一瞬冷や汗をかきますが、

クラスター構成(系切り替え構成)の環境である場合、原因はもっと単純なところにある可能性が高いです。
今回は、このエラーが出る原因と、今すぐ試すべきチェックポイントを解説します!
1. 結論:非活性(Standby)側のホストでコマンドを叩いていませんか?
このエラーが出る最大の原因は、「クラスター構成になっているJP1環境で、現在アクティブではない方(待機系/Standby側)の物理ホストでコマンドを実行しているから」です。
💡 なぜこのエラーが発生するのか?
クラスター構成のJP1/AJSでは、ジョブの定義や実行状態を管理するデータベース(AJSDBDIRECTORY)は、現在稼働しているアクティブ側(運用系/Active側)のホストにマウントされている共有ディスクの中に配置されています。
そのため、待機系(Standby側)のホストから見ると、そのデータベースの場所(パス)にアクセスすることができません。JP1側は「あれ?設定された場所にデータベースのディレクトリが見当たらないぞ?」と判断し、結果として「構成定義に誤りがあります」というエラーを吐き出してしまうのです。
2. 対処法:実行中のホストを確認して「Active側」で実行する
対処法は非常にシンプルです。現在アクセスしているホストがどちらの系であるかを確認し、Active(運用系)になっているホストに切り替えてから再度コマンドを実行してください。
🛠️ トラブルシューティングの流れ
-
現在の状態を確認する: クラスター管理ソフト(WSFCやLifeKeeper、CLUSTERPROなど)の画面、またはコマンドから、対象のJP1論理環境がどちらの物理ホストで「Active(稼働中)」になっているかを確認します。
-
ログイン先を切り替える: 待機系(Standby側)のサーバーにSSHやリモートデスクトップでログインしていた場合は、速やかに運用系(Active側)のサーバーへログインし直します。
-
論理ホスト名を指定して実行する: Active側のホストへ移動したら、環境変数
JP1_HOSTNAMEに論理ホスト名がセットされているか、もしくはコマンドの引数に論理ホスト名(-hオプション)が正しく指定されていることを確認した上で、再度ajsshowを実行します。
Bash
# 論理ホスト名を指定して実行する例
ajsshow -h [論理ホスト名] -g [タイムゾーン] [ジョブネット名]
Active側のホストであれば共有ディスクが正しくマウントされているため、エラーは消え、いつも通り正常に結果が表示されるはずです。
まとめ:KAVS1003-E(AJSDBDIRECTORY)が出たら「まずは系の確認」!
ajsshow だけでなく、JP1/AJSの運用コマンド(ajsleave や ajsentry など)を叩いて「構成定義に誤りがあります(AJSDBDIRECTORY)」と言われたら、設定ファイルを疑う前に、まず以下の合言葉を思い出してください。
-
「今ログインしているのは、本当にActive(運用系)のサーバーか?」
特に夜間の障害対応や、複数人が並行してメンテナンスを行っているときなどは、今触っているのが「現用系」なのか「待機系」なのかを見失いがちです。焦って環境設定を書き換えて二次災害を起こしてしまう前に、落ち着いて系のステータスをチェックしましょう!
