I recently was setting up a couple ElasticSearch and RabbitMQ instances when I noticed RabbitMQ was still reporting an abysmally low fd limit in its log file at startup. I double checked my /etc/security/limits.conf and sure enough, limits were properly set to 64000. Yet for some reason it was still only seeing a max of 1024.
It turns out that in Ubuntu 10.04, /etc/pam.d/common-session{,-noninteractive} does not contain:
session required pam_limits.so
Adding that, solved my issue:
=INFO REPORT==== 1-Feb-2012::00:05:47 ===
Limiting to approx 63900 file handles (57508 sockets)
UPDATE (Wed Apr 18 15:01:17 PDT 2012)
For RabbitMQ 2.8.x, the init script uses start-stop-daemon. Apply this patch:
--- /etc/init.d/rabbitmq-server.old 2012-04-18 21:54:05.852307662 +0000 +++ /etc/init.d/rabbitmq-server 2012-04-18 21:49:17.594182809 +0000 @@ -35,6 +35,8 @@ RETVAL=0 set -e +[ -r /etc/default/${NAME} ] && . /etc/default/${NAME} + ensure_pid_dir () { PID_DIR=`dirname ${PID_FILE}` if [ ! -d ${PID_DIR} ] ; then
And then in /etc/default/rabbitmq-server
ulimit -n 65000