kuba-database · 全网故障数据库
收录云原生、AI 原生及互联网公司公开的生产环境重大故障事件,基于 SRE / CRE / FDE / SA 四视角进行结构化复盘,构建可检索、可统计、可演进的故障知识库。
项目定位
- 数据范围:全网公开的重大故障事件(Outage / Incident / Postmortem),涵盖系统中断、性能劣化、数据丢失、安全事件引发的可用性问题等;时间跨度从 1980 年 ARPANET 全网崩溃到 2026 年 7 月 AWS/Azure 区域网络故障系列(46 年),涵盖全球主要云服务商(AWS、Azure、GCP、阿里云、Cloudflare 等)、互联网平台(Meta、腾讯、Akamai 等)与政企公共服务机构(12306、中国电信、FAA、NHS、ABS、粤康码)的重大故障。
- 数据来源:官方复盘报告(Postmortem / RCA)、状态页归档、工程博客、监管报告等可验证的公开信息;第三方分析仅作佐证并显式标注。
- 分析框架:SRE 无指责复盘 + CRE 客户可靠性 + FDE 现场数据工程 + SA 解决方案架构师四重视角互补分析。
- 存储形式:纯 Markdown + YAML Frontmatter 元数据,Git 版本控制,零数据库依赖,可被任何工具索引。
核心价值
- 四视角结构化复盘:每个案例不只是"发生了什么",而是从系统(SRE)、客户信任(CRE)、数据证据(FDE)、关系与架构(SA)四个维度给出可操作的结论,覆盖"根因 → 影响 → 证据 → 对策"完整链条。
- 可检索、可统计:Frontmatter 结构化元数据支持按公司 / 领域 / 根因 / 等级 / 关键词多维检索;
build-index.py自动生成统计索引,支撑跨案例的定量分析(见 docs/sre-cross-case-analysis.md)。 - 可演进的活库:Git 即版本机制,官方披露新细节时案例持续更新(
last_updated+status: updated),历史全程可追溯。 - 工程学习素材:94 个真实案例覆盖软件缺陷、变更管理、容量过载、安全攻击、硬件设施、商务合同、架构决策、操作防护、网络路由等 12 类根因,是 SRE 面试、故障演练设计、架构评审的最佳语料。
方法论:四视角速览
| 视角 | 关注点 | 核心问题 | 在案例中的落点 |
|---|---|---|---|
| SRE | 系统与流程 | 系统为什么会失效?如何让它不再失效? | 根因分析(因素三分法 / 5 Whys)、时间线、预防措施 |
| CRE | 客户与信任 | 客户感知到了什么?沟通是否及时透明? | 影响评估、对外沟通表现、SLA/SLO 视角 |
| FDE | 数据与证据 | 现场数据如何还原真相? | 时间线佐证、检测缺口、可观测性改进 |
| SA | 关系与架构 | 故障如何冲击客户关系?客户架构该如何改进? | 客情危机评估(SA)、客户架构启示(SA) |
四视角协同顺序:FDE 先行(数据支撑一切)→ SRE 定因(区分 Trigger / Root Cause / Aggravating Factors)→ CRE 定损(客户侧度量影响)→ SA 定策(信任修复 + 架构建议)。详见 docs/methodology/README.md。
数据现状(2026-08)
| 维度 | 统计 |
|---|---|
| 案例总数 | 94(SEV-1 × 80 · SEV-2 × 13 · SEV-3 × 1) |
| 时间跨度 | 1980-2026(46 年) |
| 覆盖公司 | 47 家(AWS 15 · Google 系 11 · Cloudflare 9 · 微软系 9 · 阿里云 4 · Meta 3 · 腾讯系 3 · OpenAI 2 · 中国铁路 1 · 中国电信 1 · FAA 1 · NHS 1 · ABS 1 · 粤康码 1 等) |
| 公司类型 | cloud-native × 56 · internet × 28 · ai-native × 4 · public-sector × 6 |
| 技术领域 | 14 个:cloud-infrastructure 28 · networking-dns 14 · saas-platforms 12 · cdn-edge 10 · business-operations 6 · public-services 6 · ai-ml-services 5 · sa-architecture 3 · database-storage 3 · identity-access 3 · 其余 4 个领域各 1 |
| 高频标签 | cascading-failure × 24 · us-east-1 × 7 · bgp × 7 · canary-missing × 6 · blast-radius × 6 · public-service × 6 |
最新统计以 INDEX.md 为准(自动生成)。
目录结构
kuba/
├── README.md # 本文档
├── CONTRIBUTING.md # 贡献指南:命名规范、录入流程、版本控制、内容红线
├── INDEX.md # 总索引 + 统计概览(由 tools/build-index.py 自动生成,勿手改)
├── docs/
│ ├── methodology/ # 复盘方法论
│ │ ├── README.md # 四视角总览与协同方式
│ │ ├── sre-postmortem.md # SRE 无指责复盘方法
│ │ ├── cre-practices.md # CRE 客户可靠性工程实践
│ │ ├── fde-analysis.md # FDE 现场数据工程分析方法
│ │ └── sa-practices.md # SA 解决方案架构师实践(客情危机 + 技术危机)
│ ├── sre-cross-case-analysis.md # SRE 跨案例定量分析(根因模式 / 恢复时间 / 级联特征)
│ └── severity-and-taxonomy.md # 故障分级标准与分类体系(领域/根因分类,枚举权威来源)
├── templates/
│ ├── incident-report.md # 标准故障复盘报告模板(完整版)
│ └── quick-entry.md # 快速记录模板(信息不全时先占位)
├── incidents/ # 故障案例库(按领域分目录,当前 94 个案例)
│ ├── README.md # 领域分类说明与代表案例
│ ├── cloud-infrastructure/ # 云基础设施(AWS / Azure / GCP / 阿里云 …)
│ ├── cdn-edge/ # CDN 与边缘接入
│ ├── networking-dns/ # 网络 / DNS / BGP
│ ├── database-storage/ # 数据库与存储
│ ├── container-orchestration/ # 容器编排与服务发现
│ ├── messaging-streaming/ # 消息与流处理
│ ├── identity-access/ # 身份认证与访问控制
│ ├── saas-platforms/ # SaaS 与互联网平台
│ ├── observability/ # 可观测性平台
│ ├── ai-ml-services/ # AI / ML 服务
│ ├── security-services/ # 安全产品引发的可用性事件
│ ├── business-operations/ # 商务运营(合同终止/定价政策/资产过期等非技术原因)
│ ├── sa-architecture/ # SA 架构与客情(架构决策失误 / 客情危机)
│ └── public-services/ # 公共服务与政企(12306 / 广东电信 / 粤康码 / FAA / ABS / NHS)
└── tools/
├── search.sh # 多维度检索(关键词/公司/领域/根因/等级)
├── new-incident.sh # 从模板创建新案例(自动填充元数据骨架)
└── build-index.py # 扫描全库、校验元数据、重建 INDEX.md
快速开始
1. 检索故障案例
# 全文关键词检索
./tools/search.sh "BGP"
# 按公司检索(不区分大小写)
./tools/search.sh --company cloudflare
# 按技术领域 / 根因分类 / 严重等级检索(枚举值见 docs/severity-and-taxonomy.md)
./tools/search.sh --domain database-storage
./tools/search.sh --cause change-management
./tools/search.sh --severity SEV-1
# 过滤器与关键词可任意组合
./tools/search.sh --severity SEV-1 "DNS"
2. 阅读故障案例
每个案例文件是自包含的完整复盘报告,建议按以下顺序阅读:
摘要(30 秒速览)→ 影响评估(客户视角损失)→ 时间线(FDE 证据链)
→ 技术细节与根因分析(因素三分法 + 5 Whys)→ 解决过程 → 经验教训
→ 预防与改进措施(预防/缩小爆炸半径/检测/恢复四层防御)
→ SRE/CRE/FDE/SA 视角速览(四视角一句话结论)→ 参考资料
3. 新增故障案例
# 用法: ./tools/new-incident.sh <领域目录> <YYYY-MM-DD> <公司> <标题slug>
./tools/new-incident.sh cloud-infrastructure 2026-07-01 example-cloud api-outage
# 生成: incidents/cloud-infrastructure/2026-07-01-example-cloud-api-outage.md
录入流程、命名规范与内容红线详见 CONTRIBUTING.md。
4. 重建索引
python3 tools/build-index.py # 校验 + 重建 INDEX.md
python3 tools/build-index.py --check # 只校验不写文件(提交前检查)
案例数据规范(摘要)
每个案例文件 = YAML Frontmatter(结构化元数据,供机器检索) + Markdown 正文(复盘内容,供人阅读)。
正文必备章节:摘要 → 影响评估 → 时间线 → 技术细节与根因分析 → 解决过程 → 经验教训 → 预防与改进措施 → SRE/CRE/FDE/SA 视角速览 → 参考资料。
完整字段定义见 templates/incident-report.md,分级与分类枚举见 docs/severity-and-taxonomy.md。
数据质量原则
- 只收录可验证的公开信息,每个案例必须附带至少一个权威来源链接(官方复盘优先)。
- 无指责(Blameless):聚焦系统性因素,不针对个人;转述官方报告时保持中立。
- 区分事实与推断:官方未披露的细节若来自第三方分析,须明确标注"第三方推断"。
- 持续更新:官方后续披露新细节时更新案例并递增
last_updated,历史通过 Git 追溯。
贡献与维护
- 新增 / 修改案例、修订方法论:阅读 CONTRIBUTING.md 后按规范操作。
- 索引一致性:任何案例变更后必须重跑
tools/build-index.py,索引文件与案例在同一 commit 提交。 - 发现问题(事实错误、失效链接、缺失案例):提 Issue 或直接提交修正。
License 与免责声明
本库内容为对公开信息的整理与再分析,仅用于工程学习与可靠性研究。各案例版权与事实解释权归原披露方所有;如有事实性错误请提 Issue 修正。