Linux OOM(内存不足) killer 邮件通知?

9

这篇答案描述了Linux上的内存耗尽杀手。

有没有一种方式可以在OOM杀手杀死某些进程时得到通知?最好的方法是通过电子邮件。你可以使用看门狗实现此目的,但我想知道最简单和最健壮的方法是什么。

2个回答

3

“logwatch”程序会定期向您发送所有其配置为感兴趣的日志行。

它可以配置为在OOM(除非它本身耗尽内存)时向您发送电子邮件通知。

电子邮件通知不能替代来自外部系统的正确监控,因为没有空闲内存的机器通常无法发送电子邮件。

此外,如果您的系统很重要,则电子邮件可能太慢以至于无法从Ops(特别是在非工作时间)获得响应。


一台没有可用内存的机器通常无法发送电子邮件 - 这可能是因为它超出了自己的内存限制(考虑cgroups),而不一定是因为整个系统已经耗尽了内存,进程可能会被终止。 - Piotr Dobrogost
还可以使用 /proc/<pid>/oom_score_adjust 来指定一个进程,让系统在内存不足时选择杀死该进程来保持运行。如果你想应对系统内存不足的情况,你需要确定哪些进程是你更愿意牺牲的。这样,即使志愿进程被杀死后,你的看门狗进程仍然可以发送电子邮件,并尝试在稍后自动重新启动被杀死的进程(假设内存不足的情况只是暂时的)。 - Mikko Rantalainen

0

您可以阅读和解释内核日志,因为syslog将其记录到/var/log/中,并对其进行操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接