如何排查 Linux 日志报错 fork failed: Resource temporarily unavailable

计算操作系统技术服务知识库
运行环境
  • CentOS/RHEL 7
问题描述

日志中出现报错如:“fork failed: Resource temporarily unavailable” “ fork:Cannot allocate memory”,我们该该如何排查此问题? 图片

问题原因

可能是进程数超限导致,达到pid_max时 再创建进程会报错“fork: Cannot allocate memory”等

解决方案
  1. 检查当前kernel.pid_max 值. sysctl -a | grep pid_max
(base) [root@rudonx ~]# sysctl -a | grep pid_max
kernel.pid_max = 4194304
  1. 查看系统内总进程数是否达到了pid_max。
pstree -p | wc -l
  1. 将 /etc/sysctl.conf 配置文件中kernel.pid_max值修改为131072
echo "kernel.pid_max=131072" >> /etc/sysctl.conf
sysctl -p

如果您有其他问题,欢迎您联系火山引擎技术支持服务

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

所属团队号:
相关资源
字节跳动云原生降本增效实践
本次分享主要介绍字节跳动如何利用云原生技术不断提升资源利用效率,降低基础设施成本;并重点分享字节跳动云原生团队在构建超大规模云原生系统过程中遇到的问题和相关解决方案,以及过程中回馈社区和客户的一系列开源项目和产品。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论