RabbitMQ can run out of file descriptors
Bug #1279594 reported by
Ryan Moe
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Released
|
High
|
Dmitry Burmistrov |
Bug Description
The default number of file descriptors for RabbitMQ is 1024. When there are a lot of queues or many connections this limit can be exceeded.
tags: | added: customer-found |
Changed in fuel: | |
milestone: | none → 4.1 |
importance: | Undecided → Critical |
status: | New → Triaged |
assignee: | nobody → Ryan Moe (rmoe) |
tags: | added: release-notes |
Changed in fuel: | |
status: | Triaged → Fix Committed |
Changed in fuel: | |
status: | Fix Committed → In Progress |
milestone: | 4.1 → 4.1.1 |
Changed in fuel: | |
status: | In Progress → Fix Committed |
tags: | added: backports-4.1.1 |
tags: | added: ha |
Changed in fuel: | |
assignee: | Ryan Moe (rmoe) → Dmitry Burmistrov (dburmistrov) |
Changed in fuel: | |
status: | In Progress → Fix Committed |
To post a comment you must log in.
Explanation: rabbitmq wasn't work as supposed.
Behaviour: rabbitmq have a lack of FD (file descriptors) it will looks like working one and
'rabbitmqctl cluster status’ command shows all nodes participating in cluster.
Attempts with trying to connect to rabbitmq ports will be successful.
But all services will be not able to perform communications between each other. If you try to create volume or spawn instance this will be unsuccessful. Task will hang in 'scheduling’ or other first step.
To confirm that you should perform this:
rabbitmqctl status
If total_used almost or reached the total_limit then the number of file descriptors should be increased.
Here is permanent fix for that issue. The following steps will help to perform that:
Check /etc/default/ rabbitmq- server file for ulimit -n <somenumber> string
If it commented and/or have a small number of FD that was already reached then fix it to look like:
ulimit -n 102400
After that need to restart rabbitmq-server on all nodes using the following command:
service rabbitmq-server restart
When service was restarted on all nodes you should check that number of FD is increased using the command on the node:
rabbitmqctl status
Total limit should have an increased value.