CDH: unable to create new native thread


发现问题CDH-4.7.1 NameNode is down启动NameNode报错如下,无法创建新的线程,可能是使用的线程数超过max user processes设定的阈值
日志内容如下,检查DNS没有问题,这里没有太多参考意义

故障排查这里设置的max user processes为65535已经非常大了,一般来说是达不到这个瓶颈的
现在系统的总进程数仅仅一百多个,我们要检查每个进程对应有多少个线程# ps -ef|wc -l169
已知这台服务器上主要跑的是java进程,所以重点查看java进程对应的线程数,找到30315这个进程对应约32110个线程,在加上其他进程和线程数,总数超过65535,NameNode无法在申请到多余的线程,所以报错# pgrep java1680548219662287703031535902
# for i in `pgrep java`; do ps -T -p $i |wc -l; done1549305332110114
# ps -T -p 30315|wc -l32110
或者通过top -H 命令查看# top -Htop – 10:44:58 up 779 days, 19:34, 3 users, load average: 0.01, 0.05, 0.05Tasks: 32621 total, 1 running, 32620 sleeping, 0 stopped, 0 zombieCpu(s): 2.8%us, 4.1%sy, 0.0%ni, 93.1%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%stMem: 16334284k total, 15879392k used, 454892k free, 381132k buffersSwap: 4194296k total, 0k used, 4194296k free, 8304400k cached
解决方法找到了问题的原因,我们可以重新设定max user processes的值为100000,再次启动NameNode成功#echo “100000” > /proc/sys/kernel/threads-max#echo “100000” > /proc/sys/kernel/pid_max (默认32768)#echo “200000” > /proc/sys/vm/max_map_count (默认65530)
#vim /etc/security/limits.d/90-nproc.conf* soft nproc unlimitedroot soft nproc unlimited
#vim /etc/security/limits.conf* soft nofile 65535* hard nofile 65535* hard nproc 100000* soft 香港云主机nproc 100000
# ulimit -u100000

相关推荐: HTML5怎么拖拽API

本文小编为大家详细介绍“HTML5怎么拖拽API”,内容详细,步骤清晰,细节处理妥当,希望这篇“HTML5怎么拖拽API”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、关于拖拽API拖拽API是HTML5的新特性,相对于其他新特性…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 07/25 15:44
下一篇 07/25 15:44

相关推荐