暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

min-free-bytes

大圣11 2025-01-03
429

问题介绍:当服务器系统内存不足, 程序从磁盘中读取数据 ,将磁盘io打满导致机器卡死(就是内存不够了)

解决办法:

  • 增加服务器的内存

  • 设置服务器内核运行最低内存

步骤:

1、登录云服务器,执行以下命令查看 min_free_kbytes 值

shell
sysctl -a | grep min_free

min_free_kbytes 值单位为 KB,1G等于1048576KB。

2、使用 VIM 编辑器打开 /etc/sysctl.conf 配置文件

shell
vim /etc/sysctl.conf

按 i 进入编辑模式,修改 vm.min_free_kbytes 配置项。若该配置项不存在,则直接在配置文件中增加即可。

建议修改 vm.min_free_kbytes 值为不超过总内存的1%即可。

修改内核参数 vm.panic_on_oom 配置项。若该配置项不存在,则直接在配置文件中增加即可。

当系统可用内存低于 min_free_kbytes 值时,则默认系统会根据 vm.panic_on_oom 值启动 oom-killer 或强制重启。min_free_kbytes 值表示强制 Linux 系统最低保留的空闲内存。
若 vm.panic_on_oom=0,则系统会提示 OOM,并启动 oom-killer 杀掉占用最高内存的进程。
若 vm.panic_on_oom =1,则系统会自动重启。

按 Esc 并输入 :wq 后,按 Enter 保存并退出 VIM 编辑器。

3、执行以下命令,使配置生效即可。

shell

sysctl -p
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论