Skip to content

排障训练场 ​

这里是我整理的「典型故障场景 + 标准排查套路」,按方向分组、组内由浅入深,用来刻意训练自己“从现象往根因倒推”的排查思路。

说清楚:这些大多是我学习时整理、在虚拟机 / 实验环境里复现过的典型场景,不是我亲历的线上事故;我自己真实环境的搭建和踩坑,记在 我的项目 里。日常小问题、报错踩坑则随时记到 排障记录。

每条案例怎么写 ​

每条都刻意走完整条链路,逼自己形成肌肉记忆:

现象 → 报错 → 环境(真实版本)→ 定位命令 → 根因 → 止血 / 根治 → 验证预防

案例目录 ​

共 50 篇,按方向分组,组内按 初 → 中 → 高 排序,由浅入深。

Linux ​

Linux(11 篇)
日期标题难度标签链接
2020-11-03磁盘空间写满初磁盘, du, lsoft-disk-space-full
2019-09-15inode 耗尽初inode, 小文件, postfixt-inode-exhausted
2018-07-08Permission denied 权限/属主/SELinux初权限, SELinux, 属主t-permission-ownership
2019-04-12GRUB 损坏/内核升级后进 rescue中GRUB, 启动, 救援模式t-grub-rescue-boot
2020-05-22异常掉电后文件系统损坏中fsck, ext4, 只读挂载t-filesystem-fsck-corrupt
2021-03-14时间不同步致 TLS/JWT 鉴权失败中chrony, NTP, TLSt-clock-unsynced
2022-10-27Too many open files 句柄耗尽中ulimit, fd, lsoft-too-many-open-files
2023-12-05swap 占用高与 swappiness 调优中swap, 内存, swappinesst-swap-high-usage
2022-06-18CPU 飙高与 load average 定位高CPU, top, pidstatt-cpu-high-load
2021-08-25内存泄漏与 OOM Killer高OOM, 内存泄漏, JVMt-memory-leak-oom
2023-02-19进程 D 状态不可中断假死高D状态, NFS, IO等待t-process-d-state-hang

网络 ​

网络(8 篇)
日期标题难度标签链接
2022-08-30DNS 解析失败初DNS, dig, resolv.conft-dns-resolution-fail
2020-03-17Connection refused 端口不通初端口, ss, refusedt-port-connection-refused
2024-04-08HTTPS 证书过期/链不全初TLS, 证书, opensslt-tls-cert-expired
2021-05-11网络不通/丢包/高延迟中mtr, ping, 丢包t-net-unreachable-mtr
2021-11-09连接超时与防火墙中防火墙, 安全组, iptablest-connection-timeout-firewall
2023-09-16负载均衡后端被健康检查摘除中负载均衡, 健康检查, Nginxt-lb-backend-ejected
2023-07-21TCP 重传率高高TCP, 重传, 网卡t-tcp-retransmission
2022-01-14MTU 黑洞与 MSS 不匹配高MTU, MSS, VPNt-mtu-black-hole

服务 ​

服务(5 篇)
日期标题难度标签链接
2022-12-11Nginx 502 Bad Gateway中Nginx, 502, upstreamt-nginx-502
2023-06-24Nginx 504 Gateway Timeout中Nginx, 504, 超时t-nginx-504-timeout
2021-10-19PHP-FPM 进程池打满 502中PHP-FPM, max_childrent-phpfpm-502
2019-06-28NFS Stale file handle中NFS, 挂载, stalet-nfs-stale-handle
2020-08-07Tomcat 内存溢出/崩溃高Tomcat, OOM, JVMt-tomcat-oom-crash

MySQL ​

MySQL(5 篇)
日期标题难度标签链接
2023-04-19连接数打满 Too many connections初连接数, 连接池, wait_timeoutt-mysql-too-many-connections
2022-06-14主从复制延迟排查中主从复制, 并行复制, 大事务t-mysql-replica-lag
2020-09-22慢查询与索引失效中慢查询, EXPLAIN, 联合索引t-mysql-slow-query
2021-11-08InnoDB 死锁排查高死锁, 间隙锁, RR隔离级t-mysql-deadlock
2022-12-05实例无法启动高innodb_force_recovery, 崩溃恢复, 数据损坏t-mysql-cannot-start

Redis ​

Redis(3 篇)
日期标题难度标签链接
2023-08-11内存打满 OOM中OOM, maxmemory, 淘汰策略, bigkeyt-redis-memory-oom
2024-03-20缓存穿透/击穿/雪崩中缓存击穿, 布隆过滤器, 互斥锁t-redis-cache-avalanche
2023-10-16哨兵故障切换/主从漂移高哨兵, 脑裂, fencingt-redis-sentinel-failover

MQ / 集群 ​

MQ / 集群(2 篇)
日期标题难度标签链接
2024-05-28Kafka 消费积压 / Lag中consumer-lag, rebalance, 分区t-kafka-consumer-lag
2022-07-09集群脑裂通用排查高脑裂, quorum, fencingt-cluster-split-brain

Docker ​

Docker(5 篇)
日期标题难度标签链接
2026-09-25swap 资源限制不生效 No swap limit support初docker, swap, cgroupt-docker-swap
2024-01-22镜像拉取失败初镜像加速, imagePullSecrets, Harbort-docker-image-pull-fail
2021-05-17dockerd 启动失败中dockerd, daemon.json, data-roott-docker-daemon-fail
2022-09-02存储驱动 overlay2 与磁盘满中overlay2, 磁盘满, prunet-docker-storage-driver
2023-11-13容器网络不通中bridge, iptables FORWARD, DNSt-docker-network-bridge

Kubernetes ​

Kubernetes(8 篇)
日期标题难度标签链接
2023-07-25Pod 一直 Pending初Pending, 资源不足, PVC, 亲和t-k8s-pod-pending
2024-04-08ImagePullBackOff初ImagePullBackOff, tag, imagePullSecretst-k8s-imagepullbackoff
2023-08-30CrashLoopBackOff中CrashLoopBackOff, liveness探针, 启动慢t-k8s-crashloopbackoff
2024-02-14容器 OOMKilled中OOMKilled, limits, JVM堆t-k8s-oomkilled
2025-05-21集群证书过期中kubeadm, certs, 证书续期t-k8s-cert-expired
2025-01-15Service/Ingress 不通高Service, Endpoints, kube-proxy, Ingresst-k8s-service-ingress
2025-03-10节点 NotReady高NotReady, kubelet, 磁盘压力t-k8s-node-notready
2024-06-19etcd 故障/空间满/不一致高etcd, defrag, quota, snapshott-k8s-etcd-failure

安全 ​

安全(3 篇)
日期标题难度标签链接
2023-09-05服务器被植入挖矿木马高挖矿木马, SSH爆破, cront-mining-trojan
2024-07-22Web 站点 Webshell 排查处置高Webshell, 上传漏洞, 溯源t-webshell-investigation
2025-08-18异常外联 / C2 回连高C2, 外联, DNS隧道t-malicious-c2-traffic

真实故障复盘模板 ​

上面的案例是“训练场”;等以后真在工作中遇到影响业务的故障,我会用下面这个结构写完整复盘、放进「折腾」,对事不对人地总结根因和预防。

新建文件时复制以下结构:

markdown
# 故障标题(YYYY-MM-DD)

## 一、现象
(用户/监控看到了什么,报错信息)

## 二、影响范围
(影响了哪些服务、多少用户、持续多久)

## 三、时间线
- HH:mm 发现 / 告警
- HH:mm 定位到……
- HH:mm 采取……措施
- HH:mm 恢复

## 四、定位过程
(用了哪些命令、看到什么、如何一步步缩小范围)

## 五、根因
(技术根因 + 流程/管理根因)

## 六、修复措施
(临时止血 + 彻底修复)

## 七、复盘与改进
(如何预防,需要补的监控、流程、文档,列出 Action Item 和负责人/时间)

## 八、相关命令速查
(链接到对应速查长文档)