“Oom导致进程消失”的版本间的差异
跳到导航
跳到搜索
第49行: | 第49行: | ||
</pre> | </pre> | ||
− | + | =see also= | |
[http://www.linuxfly.org/post/166/ oom死机处理] | [http://www.linuxfly.org/post/166/ oom死机处理] | ||
[[category:ops]] | [[category:ops]] |
2020年9月25日 (五) 03:49的版本
问题
java哥反映有个进程老是不见了 [root@prodo-java03 log]# cat messages | grep oom Sep 20 05:32:10 prod-hello-java03 kernel: java invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=0 Sep 20 05:32:10 prod-hello-java03 kernel: [<ffffffffbd1ba4e4>] oom_kill_process+0x254/0x3d0 Sep 20 05:32:10 prod-hello-java03 kernel: [<ffffffffbd1b9f8d>] ? oom_unkillable_task+0xcd/0x120 Sep 20 05:32:10 prod-hello-java03 kernel: [ pid ] uid tgid total_vm rss nr_ptes swapents oom_score_adj name Sep 24 00:01:22 prod-hello-java03 kernel: tuned invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=0 Sep 24 00:01:22 prod-hello-java03 kernel: [<ffffffffbd1ba4e4>] oom_kill_process+0x254/0x3d0 Sep 24 00:01:22 prod-hello-java03 kernel: [<ffffffffbd1b9f8d>] ? oom_unkillable_task+0xcd/0x120 Sep 24 00:01:22 prod-hello-java03 kernel: [ pid ] uid tgid total_vm rss nr_ptes swapents oom_score_adj name Sep 24 00:01:22 prod-hello-java03 kernel: java invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=0 Sep 24 00:01:22 prod-hello-java03 kernel: [<ffffffffbd1ba4e4>] oom_kill_process+0x254/0x3d0 Sep 24 00:01:22 prod-hello-java03 kernel: [<ffffffffbd1b9f8d>] ? oom_unkillable_task+0xcd/0x120 Sep 24 00:01:22 prod-hello-java03 kernel: [ pid ] uid tgid total_vm rss nr_ptes swapents oom_score_adj name 可见是 java Sep 24 00:01:22 prod-hello-java03 kernel: Out of memory: Kill process 46473 (java) score 250 or sacrifice child Sep 24 00:01:22 prod-hello-java03 kernel: Killed process 46473 (java) total-vm:5333504kB, anon-rss:2000260kB, file-rss:0kB, shmem-rss:0kB Sep 24 00:01:22 prod-hello-java03 kernel: java invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=0 Sep 24 00:01:22 prod-hello-java03 kernel: java cpuset=/ mems_allowed=0 Sep 24 00:01:22 prod-hello-java03 kernel: CPU: 1 PID: 54533 Comm: java Kdump: loaded Not tainted 3.10.0-957.1.3.el7.x86_64 #1 Sep 24 00:01:22 prod-hello-java03 kernel: Hardware name: Xen HVM domU, BIOS 4.2.amazon 08/24/2006 Sep 24 00:01:22 prod-hello-java03 kernel: Call Trace: 四、总结 这次的故障属于典型的内存不足,导致发生OOM错误的情况。从系统状态和日常的监控以及系统日志的报错等都可发现踪迹,但缺没有引起足够的重视,最终导致死机。 另外,mrtg运行出错,而发送大量垃圾邮件,引起amavisd调用clamscan被卡的问题也使系统不堪负载。 类似的问题,需要针对系统进行监控以分析原因才能采取有效的措施。同时,管理员也不能忽视日常的维护工作,以免出现无可挽救的故障。 ※关闭OOM killer机制 在特定情况下,可能我们不希望核心执行OOM killer的工作。例如,排错。 则可以修改/etc/sysctl.conf,增加: 引用 vm.oom-kill = 0 重启或执行sysctl -p即可生效。 若只是临时修改,可执行: echo 0 > /proc/sys/vm/oom-kill