我的系统目前位于Centos 8,我的/var/log/pacemaker.log文件充斥着GB数据,大多数错误消息显示了以下消息。这些消息的数量超过1000个,它们在10分钟内就像几乎10-15 GB的数据一样被填满。
Oct 13 12:10:46 vm01 pacemaker-attrd [23173] (qb_ipcs_us_connection_acceptor) error: Could not accept client connection: Too many open files in system (23)
Oct 13 12:10:46 vm01 pacemaker-attrd [23173] (qb_ipcs_us_connection_acceptor) error: Could not accept client connection: Too many open files in system (23)在我之前的环境中,我使用的是Centos 7,我从未见过这样的日志洪流。升级到Centos 8之后,这个问题就开始了。
下面是Centos 8的ulimit输出
[root@vm01 ~]# ulimit -n
65536问题是这个问题在给定的一天内随机发生,我总是必须手动清空/var/log/pacemaker.log文件,以确保系统在达到100%存储后不会停止运行。
发生此问题时输出的lsof。
[root@vm01 ~]# lsof | wc -l
416113我被告知修改/etc/security/ lines s.conf上的以下行,即将65536更改为524288
[root@vm01 ~]# cat /etc/security/limits.conf | grep root
root hard nofile 1048576
root soft nofile 65536另一个更改是对/etc/sysctl.conf进行以下更改,这将再次更改65536到524288,然后是runing /sbin/sysctl -p。
[root@vm01 ~]# cat /etc/sysctl.conf | grep -i fs.file
fs.file-max = 65536请帮助我解决这个问题,并让我知道是否可以将sysctl.conf和limits.conf的更改应用到环境中来解决这个问题。
发布于 2020-10-29 06:35:48
你的pacemaker-process的上限是多少?
用cat /proc/<procid>/limits找出
示例:
$ cat /proc/8933/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 128443 128443 processes
Max open files 16384 16384 files
Max locked memory 65536 65536 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 128443 128443 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us这将帮助你进一步分析这一点。
如果您的pacemaker以较低的ulimit运行,并且您使用的是systemd,则只需添加一个系统插入(配置),将配置添加到您的服务中,而无需操作pacemaker的原始单元文件。
如果系统单元文件具有以下路径:/etc/systemd/system/pacemaker.service,则可以创建一个目录/etc/systemd/system/pacemaker,并将扩展名为.conf.的文件放入该目录。
该文件的内容可以是:
[Service]
LimitNOFILE=65536做systemctl daemon-reload后,重新启动起搏器和改变应该得到应用。
参考资料:https://www.freedesktop.org/software/systemd/man/systemd.exec.html
https://serverfault.com/questions/1040325
复制相似问题