(O+P)ut

OutPut Log by SE in SIer



(O+P)ut

Output Log by SE

【WAS】Failed to stat plugin config file というエラーへの対応

スポンサーリンク

事象

環境メモ
OS AIX
Webサーバ IBM HTTP Server


いつ:
Webサーバ経由でWASプロファイルにアクセスした際

どうした:
ログファイルに
/usr/IBM/WebSphere/Plugins/logs/profile_name/http_plugin.log

以下のエラーが書き込まれる

ERROR: ws_common: websphereUpdateConfig: Failed to stat plugin config file: ..../plugin-cfg.xml
ERROR: ws_common: websphereShouldHandleRequest: Config reloading FAILED; using old config

原因/対応

原因

httpdの子プロセスがplugin-cfg.xmlにアクセス権限がなかった

対応

ihsの子プロセスのグループを指定し、plugin-cfg.xmlのオーナーグループを変更

補足

以下、補足説明です。

HTTPサーバからWASのプロファイルに転送する形となっているため、
httpd.confの最終行には以下のようにプラグイン構成ファイルが
WebSpherePluginConfig /usr/IBM/WebSphere/Plugins/config/profile_name/plugin-cfg.xml

と指定されています。

こちらのplugin-cfg.xmlにhttpdの子プロセスに対する読み取り原因がなかったことが原因でした。

対応前は以下のような権限でした。

# ls -l plugin-cg.xml
-rw------- XX root system XX ... pluigin-cfg.xml

|

まず、httpdの子プロセスを確認します。

# ps -ef | grep httpd
nobody XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start
nobody XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start
root XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start
nobody XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start

といったように、root以外で立ち上げっているプロセスがあるかと思います。
これが子プロセスです。

このnobodyユーザですが、httpd.confで変更可能です。

例えば、今回はihsですのでihsadminというユーザ(グループ)で起動したい場合はhttpd.confのUser、Groupを以下のように変更します。

User nobody
Group nobody

User ihsadmin
Group ihsadmin

IHSの落とし上げを行った後に

# /usr/IBM/HTTPServer/bin/apachectl -k stop
# /usr/IBM/HTTPServer/bin/apachectl -k start

再度プロセスを確認すればnobodyから変更されています。

# ps -ef | grep httpd
ihsadmin XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start
ihsadmin XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start
root XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start
ihsadmin XX XX XX - XX /usr/IBM/HTTPServer/bin/httpd -d /usr/IBM/HTTPServer/ -k start

あとは、httpd.confとplugin-cfg.xmlのグループオーナーをihsadminと変更し、グループに対しても読み取り権限を付与すれば上記のエラーがなくなりました。

以上、備忘録でした。


他の記事を読む