配備情報の不整合への対処
事象説明
配備中のディスク資源の枯渇などによる予期しないエラーの発生やドメインの異常終了により、配備情報が不整合な状態で残ってしまい、以後、配備、配備解除ができなくなってしまうことがあります。
状況の確認方法
配備を行うと、以下のメッセージがwebotx_agent.logに出力されます。
OTX03010274: アプリケーション <アプリケーション名> が見つかりません。
OTX03010269: アプリケーション <アプリケーション名> は異なる種類のアプリケーションとして既に配備されています。別の名前で配備するか、配備済みのアプリケーションを配備解除してください。
配備解除を行うと、以下のメッセージがwebotx_agent.logに出力されます。
OTX03010093: 配備に失敗しました。
com.nec.webotx.enterprise.admin.common.exception.DeploymentException: Component not registered
採取資料
- ${INSTANCE_ROOT}/logs/webotx_agent.log
- ${INSTANCE_ROOT}/config/domain.xml
- ${INSTANCE_ROOT}/config/persistent-mbean 配下の全てのファイル
復旧方法
不整合の発生状況によっては、配備解除、配備を行うことで復旧する場合があります。
また、WebOTX ASのエディションがStandard/Enterpriseの場合は、以下の手順で強制配備解除を行うことで復旧させることができます。
-
該当のアプリケーションが登録されているプロセスグループを停止してください。
otxadmin> stop-pg --apgroup <アプリケーショングループ名> <プロセスグループ名>
-
以下のコマンドを実行して、強制配備解除を実行し、アプリケーションの情報を削除します。
otxadmi> undeploy --force=true <アプリケーション名>
-
必要があれば、停止したプロセスグループを起動してください。
otxadmin> start-pg --apgroup <アプリケーショングループ名> <プロセスグループ名>
それでも復旧しない場合、あるいはWebOTX ASのエディションがExpressの場合は、以下の方法で復旧して下さい。
「(Standard/Enterpriseのみ)」とある手順は、Expressでは実行不要です。
-
(Standard/Enterpriseのみ)該当のアプリケーションが登録されているプロセスグループを停止してください。
otxadmin> stop-pg --apgroup <アプリケーショングループ名> <プロセスグループ名>
-
(Standard/Enterpriseのみ)以下のコマンドを実行して、TPモニタからアプリケーションの情報を削除します。
otxadmin> invoke applications.j2ee-applications.<アプリケーション名>.delModule
上記のコマンドが失敗する場合は、プロセスグループの削除が必要です。以下のコマンドでプロセスグループを削除して下さい。
otxadmin> stop-apg <アプリケーショングループ名>>
otxadmin> delete-pg --apgroup <アプリケーショングループ名> <プロセスグループ名>
-
以下のコマンドを実行して、残存しているアプリケーションの設定情報を削除します。
otxadmin> invoke domain.applications.removeMBeans <アプリケーション名>
-
ドメインを停止してください。
otxadmin> stop-domain <ドメイン名>
-
${INSTANCE_ROOT}/config/domain.xmlの<applications>要素の子要素のうち、name属性 が削除対象のアプリケーション名と一致するものを削除します。子要素はアプリケーションのタイプによって以下のように変わります。
ear : j2ee-application
ejb : ejb-module
web : web-module
-
${INSTANCE_ROOT}/config/domain.xmlの<server>要素の<application-ref>子要素のうち、ref属性 が削除対象のアプリケーション名と一致するものを削除します。
-
次のディレクトリが残っている場合は削除して下さい。
[ear の場合]
${INSTANCE_ROOT}/applications/j2ee-apps/<アプリケーション名>
${INSTANCE_ROOT}/applications/j2ee-apps/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/ejb/j2ee-apps/<アプリケーション名>
${INSTANCE_ROOT}/generated/ejb/j2ee-apps/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/jsp/j2ee-apps/<アプリケーション名>
${INSTANCE_ROOT}/generated/jsp/j2ee-apps/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/policy/j2ee-apps/<アプリケーション名>
${INSTANCE_ROOT}/generated/policy/j2ee-apps/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/xml/j2ee-apps/<アプリケーション名>
${INSTANCE_ROOT}/generated/xml/j2ee-apps/<アプリケーション名>_old
[それ以外の場合]
${INSTANCE_ROOT}/applicationsアプリケーション名>
${INSTANCE_ROOT}/applications/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/ejb/<アプリケーション名>
${INSTANCE_ROOT}/generated/ejb/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/jsp/<アプリケーション名>
${INSTANCE_ROOT}/generated/jsp/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/policy/<アプリケーション名>
${INSTANCE_ROOT}/generated/policy/<アプリケーション名>_old
${INSTANCE_ROOT}/generated/xml/<アプリケーション名>
${INSTANCE_ROOT}/generated/xml/<アプリケーション名>_old
-
ドメインを起動してください。
otxadmin> start-domain <ドメイン名>
関連情報