问题
得到了java.io.IOException: Too many open files通过jenkins在solr索引中java.io.IOException: Too many open files过多。
有一些Googlesearch,发现我们必须在我们正在执行工作的地方设置框的限制。
Linux x86_64 GNU/Linux
在以下两种方式中
ulimit -n 1000000
在/etc/security/limits.conf
userx soft nofile 1000000 userx hard nofile 1000000
特定
ulimit -n获得10000000 题
但是,当通过jenkins作业执行相同的ulimit -n时,只能获得默认的1024。
任何build议将是很有帮助的?
如果jenkins启动脚本使用“su”进行用户切换,请确保为su启用了pam_limits.so。
对于Ubuntu服务器,在/etc/pam.d/su文件中取消注释“session required pam_limits.so”行
sudo sed -i '/# session\s\+required\s\+pam_limits.so/ s/# *//' /etc/pam.d/su
默认情况下,Jenkinsbuild立与每个Node / Slave的SSH连接作为userx。
我设置ulimit,使节点脱机,并把它带回来,我认为问题是在会议方面。
所以Disconnect jenkins的整个节点,并重新启动与它的连接。 它为userx带来了一个新的会话,它显然工作。
我不好意思,当我离开节点时,没有查看日志。
请记住:将jenkins节点脱机并将其退回将不会启动新的SSH会话。