服务器宕机了怎么办?7步应急响应流程

服务器宕机了怎么办?7步应急响应流程

凌晨两点,手机狂震。监控告警:服务器离线。你打开电脑,心跳加速。脑子一片空白——先看什么?先重启吗?要不要叫别人?用户已经在骂了。

宕机的时候,最怕的不是技术难题,是脑子乱了。乱操作可能让问题更严重。今天给你一套标准流程,按顺序做,不会错。


先看一个数据

某云厂商统计,超过40%的宕机事件,恢复时间超过30分钟。其中一半的延迟,不是因为故障本身复杂,而是因为处理流程混乱。有人先重启,有人先看日志,有人到处问,没人做决定。

宕机不可怕,乱来才可怕。


第一步:确认范围

别急着登服务器。先搞清楚:是只有你一个人打不开,还是所有人都打不开?只有一台服务器挂了,还是整个业务都挂了?

怎么确认

  • 用手机网络访问网站(不要用公司WiFi,可能是公司网络问题)
  • 问同事:“你能打开吗?”
  • 看监控:是一台机器掉线,还是所有机器都掉线

如果是只有你自己打不开,问题可能在你本地(DNS、公司网络)。如果是多台服务器同时挂,可能是机房间断网、云厂商故障、或上游服务挂了。

这一步30秒完成。 不确认范围就冲进服务器,可能你忙半天,发现是DNS解析错了。


第二步:看监控

确认是服务器问题后,打开监控面板(Netdata、云监控、Prometheus)。

看什么

  • CPU是突然飙升还是一直高?
  • 内存是不是满了?
  • 磁盘IO有没有异常?
  • 网络流量有没有被打满?
  • 磁盘满了没有?

大多数故障,监控一眼就能看出问题。磁盘满了、CPU被挖矿占满、带宽被打爆——都直接显示在监控上。

这一步1分钟完成。


第三步:查日志

监控没发现问题,或者监控也挂了,登服务器查日志。

先看系统日志

bash

tail -100 /var/log/syslog
tail -100 /var/log/messages

再看服务日志

  • Nginx:/var/log/nginx/error.log
  • MySQL:/var/log/mysql/error.log
  • PHP-FPM:/var/log/php-fpm/error.log

找什么

  • OOM(内存不足,进程被杀)
  • kernel panic(内核崩溃)
  • segfault(程序崩溃)
  • disk full(磁盘满)
  • timeout(超时)

这一步2分钟。 日志通常会直接告诉你原因。如果什么都没找到,继续下一步。


第四步:尝试恢复

根据监控和日志的发现,尝试恢复。

常见情况的恢复操作

问题恢复操作
磁盘满了清理日志、旧备份、临时文件
CPU 100%(被挖矿)kill进程、删定时任务、改密码
内存不足重启服务、加swap(临时)、计划升级内存
服务挂了systemctl restart 服务
网络不通检查安全组、防火墙、网卡状态
系统无响应尝试SSH,连不上则去云控制台重启

不确定原因:按顺序重启:先重启服务,不行再重启服务器。

重启服务器前先通知用户。在官网放个公告“系统维护中”,或者直接挂维护页面。

这一步3分钟。


第五步:评估影响

恢复服务后,评估一下影响范围。

  • 宕机多长时间?
  • 影响了多少用户?
  • 有没有数据丢失?
  • 其他服务有没有受影响?

把时间和范围记下来。管理层会问,复盘需要。

这一步1分钟。


第六步:通知用户

服务恢复后,第一时间通知用户。不要等用户自己发现。

  • 发公告:官网、微博、公众号
  • 发群通知:客户群、内部群
  • 写状态页:如果有的话更新一下

通知内容

  • 出问题的时间段
  • 影响范围
  • 已恢复
  • 致歉

这一步1分钟。


第七步:事后复盘

不是宕机恢复了就完事了。没找到根因,下次还会挂。

复盘内容

  • 什么原因导致的?
  • 为什么没提前发现?
  • 监控为什么没告警?
  • 恢复时间为什么这么长?
  • 下次怎么更快恢复?

得出行动项

  • 加监控告警
  • 写应急预案
  • 改代码/配置
  • 定期演练

这一步宕机后一周内完成。


宕机时的常见错误

错误一:不确认范围直接重启
明明是网络问题,你把服务器重启了。网络恢复了,你的服务也断了。

错误二:不通知用户就操作
你重启了,用户看到503。如果提前公告“维护5分钟”,用户能接受。

错误三:一个人闷头搞
半小时了还没恢复,也不叫人。早点叫同事,可能10分钟就解决了。

错误四:恢复了就不复盘
同样的坑,下次还会踩。


一个真实案例

某电商网站大促期间宕机。第一反应是“服务器挂了”,运维直接重启。重启后还是慢。后来发现是带宽被打满了——用户量太大。临时扩容带宽后恢复。

复盘时发现:监控告警配了,但没人看。如果提前看到带宽告警,不用重启,直接扩容。

后来他们把监控告警接到钉钉群,带宽超过80%就发消息。再也没发生过类似问题。


最后一句

宕机不可怕,可怕的是没有预案。

把这篇存下来,或者打印出来贴在工位。下次手机响了,按步骤走:确认范围→看监控→查日志→尝试恢复→评估影响→通知用户→事后复盘。

每一步该做什么,都写清楚了。照着做,不会乱。

宕机是迟早的事。你要做的不是“永远不挂”,是“挂了能快速恢复”。快到你用户还没发现,你已经修好了。

知识库

服务器时区与时间同步:NTP配置详解

2026-6-8 15:57:18

知识库

“轻量应用服务器” vs. “云服务器CVM”:小白入门腾讯云,哪款“云机”更适合你?(场景、配置、价格对比解析)

2025-6-3 12:04:45

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧