AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 440670
Accepted
matteo
matteo
Asked: 2012-10-22 04:10:06 +0800 CST2012-10-22 04:10:06 +0800 CST 2012-10-22 04:10:06 +0800 CST

什么会导致服务器上的所有服务都停止运行,但仍然响应 ping?以及如何弄清楚

  • 772

几天之内我已经发生过两次我的服务器完全宕机的情况,这意味着 http、ssh、ftp、dns、smtp,基本上所有服务都停止响应,就好像服务器已经关闭一样,除了它仍然响应 ping ,这是最让我困惑的。

我确实有一些 php 脚本会在短时间内在服务器上造成巨大的负载(cpu 和内存),由一小群用户使用,但通常服务器在这些突发事件中“存活”得很好,当它出现故障时永远不会与这样的使用高峰重合(我并不是说它不相关,但它不会在那些之后发生)。

我不是要你神奇地告诉我这些崩溃的最终原因,我的问题是:是否有一个进程的死亡可能导致所有这些服务同时停止?有趣的是,除了 ping 之外,所有网络服务都出现故障。如果服务器 100% 的 CPU 被某个进程占用,它也不会响应 ping。如果 apache 因为(例如)损坏的 php 脚本而崩溃,那只会影响 http,而不影响 ssh 和 dns ....等。

我的操作系统是 Cent OS 5.6

最重要的是,硬重启服务器后,我应该查看哪些系统日志?/var/log/messages 没有发现任何可疑的东西。

centos
  • 2 2 个回答
  • 3617 Views

2 个回答

  • Voted
  1. Best Answer
    Coops
    2012-10-22T05:06:42+08:002012-10-22T05:06:42+08:00

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

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

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

    这意味着在您用完物理内存的情况下,应用程序将交换到磁盘,但内核仍保留在原处。当物理内存和交换内存都已满(系统无法再管理您的程序)时,机器将崩溃。然而,因为a)内核仍在内存中并且b)它可以在没有任何其他帮助的情况下响应 ping 请求,尽管一切都死了,系统将继续响应 ping 。

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

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

    • 8
  2. ewwhite
    2012-10-22T04:19:49+08:002012-10-22T04:19:49+08:00

    通常,这是 I/O 或磁盘子系统问题。通常,这将伴随着极高的系统平均负载。例如,下图中详述的系统在脚本运行出错时变得无响应(但可以 ping 通),锁定了一堆文件并且负载上升到 36... 在 4-CPU 系统上。

    在此处输入图像描述

    在 RAM 中运行且不需要磁盘访问的服务继续运行......因此,网络堆栈(ping)已启动,但其他服务在需要磁盘访问时停止......引用密钥时的 SSH 或需要密码查找。当平均负载达到 30 左右时,SMTP 往往会关闭......

    当系统处于这种状态时,尝试远程nmap访问服务器的 IP 以查看发生了什么。

    如果这是磁盘或存储问题,您的日志记录可能不起作用...

    你能描述一下硬件设置吗?这是虚拟机吗?什么是存储布局?

    除了日志记录,您还想看看是否可以绘制系统性能图并了解何时发生这种情况。查看这是否与特定活动相关。

    • 5

相关问题

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 使用 crontab 和 /etc/cron.hourly,daily,weekly 的区别

  • 持续监控许多服务器运行状况的简单方法?

  • Hudson 无法在 tomcat5 中启动

  • CentOS 的依赖挑战

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve