[OpenSIPS-Users] "too many open files" message in the logs (solved)
carlos.oliva at numintec.com
Thu Jun 8 04:37:01 EDT 2017
I had a problem last days and I want to share with you how to solve it,
just in case somebody has the same problem in the future. Devels, maybe is
a good thing to publish in troubleshoting page.
I started to see in a Opensips 1.11.9 log tons of messages with this text:
ERROR:core:handle_new_connect: failed to accept connection(24): Too many
This is a TLS enabled proxy, the vast majority of clients connect to it
using TLS protocol, and the AORs population is about 1000 users.
I thought about kernel FD limits, but checking generic kernel limits seems
the value is too high.
You can check the open files used by opensips TCP main process using
something like "ls -la /proc/PID/fd | wc -l" and check the limit for a
specific process using "cat /proc/PID/limits"
Checking the specific limits of the TCP main process, I can see the limit
for "max open files" is 1024 how is this possible?
The reason is I'm using systemd to launch Opensips, and systemd completely
ignores global kernel limits.
The solution is to put the limit in systemd init file, something like this
inside [service] section:
This is my complete systemd init file, if somebody find it useful.
Description=Opensips Sip server
ExecStartPre=/bin/mkdir -p /var/run/opensips
ExecStartPre=/bin/chmod 775 /var/run/opensips
ExecStartPre=/bin/chown opensips.opensips /var/run/opensips
ExecStart=/usr/sbin/opensips -P /var/run/opensips/opensips.pid -m 192 -M 16
-u opensips -g opensips
Later do a systemctl daemon-reload and restart opensips service. The new
limits are applied now.
Hope this can help somebody with my problem in the future.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Users