title: zabbix Too many open files错误 date: 2015-08-21 10:10:18 tags: [Zabbix]

问题描述:今天看了zabbix监控,又一个agent unreachable,然后惯例我要去重启agent,but并没有什么卵用。看报错,查log

通过google有了一些眉目,以下摘自google

linux系统出现Too many open files 错误,这是因为文件描述符大小不够,或者有不正常的网络连接(Socket也是一种特殊的文件)、文件IO没有关闭并释放出文件描述符(文件句柄,File Operator)。 使用如下命令查看系统对允许打开最大文件描述符的配置: ulimit -u 查看open files设置 ulimit -a 查看所有设置 ulimit -u 65535(新的open files 值)修改设置 ulimit -n 65536 设置用户可以同时打开的最大文件数(max open files)   如果本参数设置过小,对于并发访问量大的网站,可能会出现too many open files的错误   使用lsof -p pid [httpd进程的 pid、java的pid]来查看系统中apache进程和java运行时进程当前打开的文件资源,发现两者之和已经接近1024,大于了默认的设置。

修改配置:

修改/etc/security/limits.conf,在文件末加上

  • soft nofile 65536
  • hard nofile 65536

系统级文件描述符极限还可以通过将以下三行添加到 /etc/rc.d/rc.local 启动脚本中来设置:

  • Increase system-wide file descriptor limit. echo 65536 > /proc/sys/fs/file-max echo 65536 > /proc/sys/fs/inode-max