我们在 vCenter 服务器上收到日志磁盘磁盘空间不足的错误。根据VMWare KB,我们检查了消耗空间的内容。我们发现了很多名为“catalina_[DATE].log”的日志文件,大小为 11mb,可以追溯到将近一年。
我检查了日志的内容,每 10 分钟它会创建相同的错误消息:
2021-04-12T23:59:53.056Z WARN org.apache.catalina.users.MemoryUserDatabase Failed to close [conf/tomcat-users.xml]
java.io.FileNotFoundException: /usr/lib/vmware-sso/vmware-sts/conf/tomcat-users.xml (No such file or directory)
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.backgroundProcess(MemoryUserDatabase.java:700)
at org.apache.catalina.realm.UserDatabaseRealm.backgroundProcess(UserDatabaseRealm.java:160)
at org.apache.catalina.realm.CombinedRealm.backgroundProcess(CombinedRealm.java:308)
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)
VMWare 只是告诉我删除文件并扩大我的日志磁盘,我照做了。但它仍然困扰着我正在发生的事情,到目前为止,我还没有在网络上找到与 vCenter 相关的任何内容。
任何人都知道这里发生了什么,以及如何解决这个错误?我知道有很多方法可以忽略它,也许忽略它是安全的,但我只想知道错误本身是否可以修复。
正如消息所说,您的 Tomcat 安装缺少
conf/tomcat-users.xml
文件。这是一个包含 Tomcat 身份验证使用的组和用户的文件。默认情况下,会定期监视和重新加载此文件。因此,您需要:
<Resource>
类型UserDatabase
和所有类型领域UserDatabaseRealm
(连同LockoutRealm
它嵌套的领域) 。server.xml
tomcat-users.xml 是一个默认配置文件,除非您在控制台(常规命令行)专门激活和管理创建用户的 tomcat 访问权限,否则通常不会使用该配置文件。
在redhat服务器中,升级tomcat时通常会丢失此文件,最简单的纠正方法是从tomcat二进制文件中复制tomcat-users.xml并将其粘贴到您的安装位置(在您的情况下为/usr/lib /vmware-sso/vmware-sts/conf/tomcat-users.xml)。
一旦文件被复制,你不需要做任何其他事情,它会在几秒钟后“重新加载”文件,错误就会消失。
因此,只需在类似于此文件(二进制文件)的位置查找文件并将其复制到您的 vCenter conf/ 文件夹中。如果您找到您的 vCenter 安装的备份文件夹,您可以从中获取相同的文件,那就更好了:
干杯
问题显然是 vCenter 中的一个错误——我刚刚将所有实例更新到版本 7.0.0.10700,现在日志条目不再出现。仍然缺少 tomcat conf 文件,但看起来不需要此文件,问题出在其他地方。