centos – 什么可以导致服务器上的所有服务都关闭,但仍然响应ping?以及如何弄清楚

前端之家收集整理的这篇文章主要介绍了centos – 什么可以导致服务器上的所有服务都关闭,但仍然响应ping?以及如何弄清楚前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的服务器在很短的几天内已经两次发生故障,我的服务器完全关闭,这意味着http,ssh,ftp,dns,smtp,基本上所有服务都停止响应,就好像服务器已经关闭一样,除了它仍然响应ping,这是最让我大吃一惊的.

我确实有一些PHP脚本在服务器上以短暂的突发造成巨大负载(cpu和内存),由一小部分用户使用,但通常服务器“幸存”到这些突发,并且当它发生故障时从来没有与使用中的这些高峰重合(我不是说它不能相关,但它不会发生在那些之后).

我不是要求你神奇地告诉我这些崩溃的最终原因,我的问题是:是否有一个过程可能导致所有这些服务同时崩溃?有趣的是,除了ping之外,所有网络服务都会崩溃.
如果服务器有100%的cpu被某个进程占用,它也不会响应ping.如果apache由于(例如)破坏的PHP脚本而崩溃,那只会影响http,而不会影响ssh和dns等.

我的操作系统是Cent OS 5.6

最重要的是,在硬重启服务器之后,我应该查看哪些系统日志? / var / log / messages不会泄露任何可疑内容.

(tl; dr仍然响应ping是预期的行为,检查你的内存使用情况)

ICMP回应请求(即ping)由内核内网络堆栈处理,没有其他依赖性.

内核被称为“内存驻留”,这意味着它将始终保存在RAM中,并且不能像常规应用程序那样交换到磁盘.

这意味着在物理内存不足的情况下,应用程序交换到磁盘,但内核仍保留在原来的位置.当物理内存和交换内存都已满(并且系统无法长时间管理您的程序)时,机器将会翻倒.但是因为a)内核仍然在内存中,并且b)它可以在没有任何其他帮助的情况下响应ping请求,尽管一切都已经死了,系统仍将继续响应ping.

关于你的问题,我强烈怀疑内存问题.安装“sysstat”并使用“sar”命令查看内存/ cpu / load / io load等日志.我预计在崩溃时你会看到100%物理和交换使用.

我还会考虑在dmesg或/ var / log / messages中查看被调用的OOM杀手(内存杀手)的任何迹象.这是内核的紧急系统,它将在内存耗尽时开始查杀进程.它的有效性在很大程度上取决于什么过程被杀死.消耗内存的单个进程将被有效杀死并释放内存,但是一个基于apache的网站将在子进程被杀死后立即产生替换进程.

猜你在找的CentOS相关文章