欢迎光临
我们一直在努力

nproc参数描述及设置

ulimit描述

Linux操作系统中利用ulimit限制shell启动进程占用的资源,ulimit支持对用户的打开进程数、进程打开文件句
柄数、进程打开文件的大小、进程coredump文件大小等资源进行限制,从而防止某个用户进程过度占用系统
资源,避免影响整个操作系统和其他应用的正常运行。但是使用ulimit进行限制后,当用户资源超限制时会出
现各种各样的报错,用户打开进程数,即nproc参数。

用户的nproc达到限制,无法创建新的进程
由于是用户打开进程数达到了限制,那么排查方法主要是查看用户目前打开的进程的数量
ps -u www -Lf
超过了设置的800 的值
问题基本确定在新机房服务器的这个配置上面了
www soft nproc 800
wwb hard nproc 1000

设置限制数量,第一列表示用户,*表示所有用户
soft 软限制,hard硬限制。当数量达到软限制的时候会出现报警,达到硬限制的时候才不会增加
soft nproc: 单个用户可用的最大进程数量(软限制)
hard nproc: 单个用户可用的最大进程数量(硬限制)
soft nofile:可打开的文件描述符的最大数(软限制)
hard nofile:可打开的文件描述符的最大数(硬限制)
其中, nofile是文件句柄数量,线程句柄也属于它。nproc是进程数量。

nproc进一步设置

关于nproc设置:centos7,内核版本是3.10.0. 默认情况下,ulimit -u的值为1024,
是/etc/security/limits.d/20-nproc.conf(CentOS6是90-nproc.conf)的值限制;注释掉这个限制后,值为644011
*          soft    nproc     1000000
root       soft    nproc     unlimited

注意事项

1. 配置,只能被特定覆盖。
2. domain 中具体用户比通配符(*)优先级高。
3. soft 和 hard 需要都进行设置,才能生效。
4. /etc/security/limits.d/ 下文件的相同配置可以覆盖 /etc/security/limits.conf
5. soft 设置的值 一定要小于或等于 hard 的值,如果配置文件中软限制设置的比硬限制高,则软限制会使用硬限制的值。
6. nofile 不能设置 unlimited,可以设置的最大值为 1048576(2**20),设置的值大于该数,就会进行登录不了。
7. 通过 ulimit 命令设置软限制不能超过硬限制。
8. root 用户可以通过 ulimit 命令降低和提高硬限制(nofile 的值不能超过 /proc/sys/fs/nr_open 的值)。
9. 非root用户可以通过ulimit命令降低硬限制,但不可以通过ulimit命令提高硬限制。

赞(1) 打赏
未经允许不得转载:运维那些事 » nproc参数描述及设置

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏