/var/log/vmware/rsyslogd/rsyslogd-syslog.logerr rsyslogd imfile error trying to access state file for '/var/log/vmware/sso/tomcat/localhost_access.<YYYY-MM-DD>.log': Too many open files [v8.2001.0 try https://www.rsyslog.com/e/2027 ]err rsyslogd file '/var/log/vmware/sso/tomcat/localhost_access.<YYYY-MM-DD>.log': open error: Too many open files [v8.2001.0 try https://www.rsyslog.com/e/2433 ]err rsyslogd imfile: error accessing file '/var/log/vmware/sso/tomcat/localhost_access.<YYYY-MM-DD>.log': Too many open files [v8.2001.0]err rsyslogd imfile: error accessing file '/var/log/vmware/sso/tomcat/localhost_access.<YYYY-MM-DD>.log': Too many open files [v8.2001.0]err rsyslogd imfile: error accessing file '/var/log/vmware/vapi/endpoint/vmware-vapi-endpoint. stdout-YYYYMMDDHHMMSS': Too many open files v8.2306.0]err rsyslogd imfile: error accessing file '/var/log/vmware/vapi/endpoint/vmware-vapi-endpoint. stdout-': Too many open files v8.2306.0]YYYYMMDDHHMMSS
core.in:imfile.#### or core.in:imuxsock.#### are found under vCenter's /storage/core/ partition.total 50738008-r-x- 1 root root 218468352 MMM DD HH:MM core.in: imuxsock.10087-r-x- 1 root root 218468232 MMM DD HH:MM core.in: imuxsock.1017-r-x- 1 root root 218468452 MMM DD HH:MM core.in: imuxsock.10195-r-x- 1 root root 218468345 MMM DD HH:MM core.in: imuxsock.10475-r-x- 1 root root 218468367 MMM DD HH:MM core.in: imuxsock.10833-r-x- 1 root root 218468334 MMM DD HH:MM core.in: imuxsock.11547-r-x- 1 root root 218468378 MMM DD HH:MM core.in: imuxsock.11632-r-x- 1 root root 218468345 MMM DD HH:MM core.in: imuxsock.11648
The issue occurs due to a file descriptor (FD) limit being exceeded by the rsyslog service, especially when monitoring a large number of files.
Workaround 1: Reconfigure the postgres-archiver rsyslog input
cp /etc/vmware-syslog/vmware-services-vmware-postgres-archiver.conf /etc/vmware-syslog/vmware-services-vmware-postgres-archiver.conf.orig
vi /etc/vmware-syslog/vmware-services-vmware-postgres-archiver.confvmware-postgres-archiver logs input(type="imfile" File="/var/log/vmware/vpostgres/pg_archiver.log.stdout" Tag="postgres-archiver" Severity="info" Facility="local0") input(type="imfile" File="/var/log/vmware/vpostgres/pg_archiver.log.stderr" Tag="postgres-archiver" Severity="info" Facility="local0")systemctl restart rsyslogsystemctl status rsyslog syslog.service - System Logging ServiceLoaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled) Active: active (running) since Fri YYYY-MM-DD HH:MM:SS UTC; SSs ago Docs: man:rsyslogd(8) http://www.rsyslog.com/doc/ Main PID: 38846 (rsyslogd) Tasks: ## (limit: 9830) Memory: ##M CGroup: /system.slice/rsyslog.service └─38846 /usr/sbin/rsyslogd -nWorkaround 2: Remove core files and schedule cleanup
systemctl stop rsyslog
rm -f /storage/core/core.in:imfile*rm -f /storage/core/core.in:imuxsock*find /var/log/vmware/ -mtime +1 -type f -name "localhost*access*log*" | while read file; do rm "$file"; done
vi /root/cleanupAccessLog.sh#!/bin/bash find /var/log/vmware/ -mtime +1 -type f -name "localhost*access*log*" | while read file; do rm "$file"; done find /storage/core/ -mtime +1 -type f -name "core.in:imfile*" | while read file; do rm "$file"; done find /storage/core/ -mtime +1 -type f -name "core.in:imuxsock*" | while read file; do rm "$file"; done
chmod 755 /root/cleanupAccessLog.shvi /etc/cron.d/cleanAccessLog.cron
0 0 * * 0 root /root/cleanupAccessLog.sh 2>&1systemctl start rsyslog
If the issue still persists after following the above steps, follow the resolution steps from KB core.in:imuxsock.xxxxx core dump files filling up /dev/mapper/core_vg-core mounted on /storage/core in vCenter.