概要
WEB/APサーバ上のTomcatのログ(catalina.out)に、以下のエラーが連続※して出力されました。
※エラーはTomcatのサービスを再起動するまで出力され続けました。
発生している問題・エラーメッセージ
11-Feb-2021 17:27:38.701 情報 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.users.MemoryUserDatabase.backgroundProcess 更新されたソース[file:/usr/local/tomcat/conf/tomcat-users.xml]からメモリユーザーデータベース[UserDatabase]を再ロードしています 11-Feb-2021 17:27:38.701 重大 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.users.MemoryUserDatabase.open ユーザー情報データベースとして指定された [conf/tomcat-users.xml] は存在しません。 11-Feb-2021 17:27:38.701 警告 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.users.MemoryUserDatabase.open [conf/tomcat-users.xml]のクローズに失敗しました java.io.FileNotFoundException: /usr/local/tomcat/conf/tomcat-users.xml (ファイルを開きすぎです) at java.io.FileInputStream.open0(Native Method) at java.io.FileInputStream.open(FileInputStream.java:195) at java.io.FileInputStream.<init>(FileInputStream.java:138) at java.io.FileInputStream.<init>(FileInputStream.java:93) at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:90) at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:188) at org.apache.catalina.users.MemoryUserDatabase.open(MemoryUserDatabase.java:466) at org.apache.catalina.users.MemoryUserDatabase.backgroundProcess(MemoryUserDatabase.java:689) at org.apache.catalina.realm.UserDatabaseRealm.backgroundProcess(UserDatabaseRealm.java:160) at org.apache.catalina.realm.CombinedRealm.backgroundProcess(CombinedRealm.java:309) at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1145) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1381) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1353) at java.lang.Thread.run(Thread.java:748)
試したこと
このエラーが発生した時間帯にtomcat-users.xmlは更新しておらず、
また操作ログを確認しても、上記のエラーが発生した時間帯にユーザー操作は行われていなかったため、
アプリケーション起因で発生したものではないとして調査継続していたところ、下記のサイトにたどり着きました。
https://bz.apache.org/bugzilla/show_bug.cgi?id=64184
上記エラーとサイトに記載されているバグの内容が酷似しているため、Tomcatのバグが起因で発生したのか?と思ったのですが、
WEB/APサーバで使用しているTomcatのバージョンは「8.5.57」であり、既にFIXされているはずのバージョンであることが分かりました。
※サイトに記載されているバグは「8.5.52」でFIXされたようです。
※WEB/APサーバ上にtomcat-users.xmlは存在していますが、Webアプリケーションマネージャのユーザ名およびパスワード記載箇所は全てコメントアウトしています。
求めている情報
FIXされているはずのバージョンで、上記と同様の事象が発生した方はいないでしょうか?
もしいらっしゃるのであれば、この事象への恒久対策もしくは暫定対策※についてご教示いただけると助かります。
※暫定対策として今のところ考えられるのは、再度このエラーが発生した場合に備えた時間稼ぎとして、ファイルディスクリプタの上限を増やすことが考えられ、
復旧にはTomcatの再起動しかない状況です。
補足情報(FW/ツールのバージョンなど)
WEB/APサーバの構成は以下となります。
OS:
RedHat Enterprise Linux 7.4
ミドルウェア:
Apache 2.4.6
Tomcat 8.5.57
Openjdk 1.8.0.161
投稿が初めてであり、拙い投稿内容となってしまい申し訳ございませんが、
何卒ご意見等いただけますと幸いです。
不足している情報等あればその旨ご連絡をお願いいたします。
あなたの回答
tips
プレビュー