还在担忧主机进程被OOM 即可防止 只需一招

  • 电脑网络维修
  • 2024-11-15

疑问描画

Linux 内核有个机制叫 OOM killer(Out-Of-Memorykiller),该机制会监控那些占用内存过大,尤其是瞬间很快消耗少量内存的进程,为了防止内存耗尽而内核会把该进程杀掉。

典型的状况是:某天一台机器突然 ssh 远程登录不了,但能 ping 通,说明不是网络的缺点,要素是 sshd 进程被 OOM killer杀掉了(屡次遇到这样的假死状况)。重启机器后检查系统日志「/var/log/messages」会发现「Out of Memory: Kill process1865(sshd)」相似的失误消息。

如何防止关键的系统进程触发(OOM)机制而被杀死呢?只须要一招,就可以轻松防止。

设置参数「/proc/PID/oom_adj为-17」,可暂时封锁 Linux 内核的 OOM机制。内核会经过特定的算法给每个进程计算一个分数来选择杀哪个进程,每个进程的 OOM 分数可以在「/proc/PID/oom_score」中找到。

处置方法

1. 方法一:设置参数/proc/PID/oom_adj为-17

如何防止mongod被杀,可以这样操作:

(1) 编写脚本文件oomadj.sh,内容如下:

(2) 设置定时方案

至于为什么用-17而不用其余数值(自动值为0),这个是由linux内核定义的,检查内核源码可知:

以 linux-3.3.6 版本的 kernel源码为例,门路为「linux-3.6.6/include/linux/oom.h」,阅读内核源码可「oom_adj」的可调值为 15 到 -16,其中 15最大-16 最小,-17 为制止经常使用OOM。「oom_score」为 2 的 N 次方计算进去的,其中 N就是进程的「oom_adj」值,所以「oom_score」的分数越高就越会被内核优先杀掉。

2. 方法二:修正内核参数制止OOM机制

//1示意封锁,默以为0示意开启OOM

留意事项

留意:

OOM killer是保障系统内存不被一般进程消耗殆尽十分适用的机制,然而在实践上班除了进程运转过多会形成内存占用过高,还有很多其余的要素比如:访问增多、遭受攻打等...

这时咱们不只有经常使用好 OOMkiller,更须要关注主机的资源经常使用状况,须要完善的实时监控体系,能够关于系统存在疑问能够及时的发现并处置,保障业务稳固运转。

  • 关注微信

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载联系作者并注明出处:https://duobeib.com/diannaowangluoweixiu/7137.html

猜你喜欢

热门标签

洗手盆如何疏浚梗塞 洗手盆为何梗塞 iPhone提价霸占4G市场等于原价8折 明码箱怎样设置明码锁 苏泊尔电饭锅保修多久 长城画龙G8253YN彩电输入指令画面变暗疑问检修 彩星彩电解除童锁方法大全 三星笔记本培修点上海 液晶显示器花屏培修视频 燃气热水器不热水要素 热水器不上班经常出现3种处置方法 无氟空调跟有氟空调有什么区别 norltz燃气热水器售后电话 大连站和大连北站哪个离周水子机场近 热水器显示屏亮显示温度不加热 铁猫牌保险箱高效开锁技巧 科技助力安保无忧 创维8R80 汽修 a1265和c3182是什么管 为什么电热水器不能即热 标致空调为什么不冷 神舟培修笔记本培修 dell1420内存更新 青岛自来水公司培修热线电话 包头美的洗衣机全国各市售后服务预定热线号码2024年修缮点降级 创维42k08rd更新 空调为什么运转异响 热水器为何会漏水 该如何处置 什么是可以自己处置的 重庆华帝售后电话 波轮洗衣机荡涤价格 鼎新热水器 留意了!不是水平疑问! 马桶产生了这5个现象 方便 极速 邢台空调移机电话上门服务 扬子空调缺点代码e4是什么疑问 宏基4736zG可以装置W11吗 奥克斯空调培修官方 为什么突然空调滴水很多 乐视s40air刷机包 未联络视的提高方向 官网培修 格力空调售后电话 皇明太阳能电话 看尚X55液晶电视进入工厂形式和软件更新方法 燃气热水器缺点代码

热门资讯

关注我们

微信公众号