Supervisor open file limit won't change when using Chef

倾然丶 夕夏残阳落幕 提交于 2019-12-21 05:15:14

问题


I am modifying /etc/security/limits.conf on the machine, and then installing Supervisor in a Chef recipe. After the recipe run finishes, if I run cat /proc/<process id>/limits I see:

Limit                     Soft Limit           Hard Limit           Units     
Max cpu time              unlimited            unlimited            seconds   
Max open files            1024                 4096                 files

If I log into the machine and run service supervisor restart, the max open files is then set correctly. However, if I run this command in the recipe (right after installing supervisor, at the very end of the recipe, anything) the limit does not change. It is not until I log in and manually run that command that the limit changes.

How can I get the open file limit for supervisor to change using the chef recipe? Operating system is Ubuntu 12.04.


回答1:


To any weary googlers: you might be looking for the minfds setting in the supervisor config. This setting seems to take effect for both the supervisord process as well as the children. I had a number of other strategies, including launching a shell script that set the limits before executing the actual program, but this was the only thing that worked.




回答2:


I did not test on my pc because I cannot stop supervisord now. But if you reorder the /etc/rc directory?

# find /etc/rc* -iname "*super*"
/etc/rc0.d/K01supervisor
/etc/rc1.d/K01supervisor
/etc/rc2.d/S16supervisor
/etc/rc3.d/S16supervisor
/etc/rc4.d/S16supervisor
/etc/rc5.d/S16supervisor
/etc/rc6.d/K01supervisor

I have the same problem Supervisord and ulimit to java app




回答3:


The implementation of supervisor is such that a process can be started as a non-root user, with more privileges than that user is allowed - bypassing pam, limits.conf, etc. So I doubt that this problem will be fixed. Have a look at https://github.com/Supervisor/supervisor/pull/229



来源:https://stackoverflow.com/questions/27933477/supervisor-open-file-limit-wont-change-when-using-chef

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!