服务器意外崩溃

服务器意外崩溃

我完全不知道服务器是怎么崩溃的,我发现的唯一异常是来自 munin 的以下图表:

在此处输入图片描述

请不要告诉我我需要更多 RAM,正如您所见,在事件发生之前,一切都很稳定。我只是不明白为什么服务器突然崩溃,也不明白为什么内存需求突然这么高。

答案1

首先检查 dmesg 和系统日志中是否有任何内核面板或内存使用情况。看起来你有一个应用程序正在使用你所有的内存。试试这个脚本,它会将你的进程列表记录在一个文件中,你就会知道是什么导致了你的问题:

#!/bin/bash
mkdir /tmp/mem_log
while [ 1 ] ; do
   date "+%Y-%m-%d %H:%M:%S"
   ps aux
   sleep 60
done

并像这样执行:

nohup ./mem_log.sh > /tmp/mem_log/mem_log.log &

下次服务器崩溃后,检查日志以查看哪个进程使用了​​所有内存。这是内存问题,但不是因为你没有足够的内存,而是一个有故障的进程导致了这种情况。

答案2

您可能需要安装普斯蒙并使其报告/终止行为不当的占用大量内存的进程。Psmon 会记录/通过电子邮件发送其响应的事件,这样您就可以轻松找出其中的反叛进程。

相关内容