{T}

📅 原文发布:2018-2019 | 本次更新:2025-06 | 更新等级:🔴全面重写增强 📌 v2 结构化升级:2026-08 | 升级范围:补齐 6 节标准骨架、Mermaid 图加标题、术语英文对照、参考资料融入进阶延展

28 | 故障管理:故障定级和定责

一、导言

故障管理的第一步是对故障的理解,只有正确地面对故障,才能找到更合理的处理方式。本文将阐述 故障定级和定责(Incident Severity & Accountability) 方面的经验。

在 2019 年我们讨论这个话题时,主要聚焦于 P0-P4 的分级体系和基本的定责原则。到了 2025 年,随着 Google SRE 实践的普及、Incident Management 体系的成熟,以及企业对可靠性工程投入的加深,故障定级和定责已经演变成一套更加科学、量化、且与业务目标紧密对齐的方法论——引入 SEV 分级体系、Just Culture 公正文化框架,以及 Error Budget 与定级联动机制。


二、核心方法论

关键角色演进:从技术支持到 IMT

此处存在一个关键角色,称之为 技术支持(亦有的团队称为 NOC,Network Operation Center)。该角色主要有两个职责:一是跟踪线上故障处理和组织故障复盘;二是制定故障定级定责标准,同时有权对故障做出定级和定责——类似法院法官的角色。

2025 年角色演进: 在现代化的 Incident Management 体系中,这个角色已经演变为 IMT(Incident Management Team)RE(Reliability Engineering)团队

维度2019 年 - 技术支持/NOC2025 年 - IMT/RE 团队
核心职责故障跟踪、定级定责全生命周期管理 + 可靠性建设
工作模式被动响应主动预防 + 被动响应
工具支撑Excel + IM 工具专业 IM 平台 + AIOps
能力要求流程熟悉技术理解 + 流程专家 + 数据分析
价值定位"法官""推动者" + "赋能者"

SEV 分级体系:业界最佳实践

将故障等级设置为 P0~P4 共 5 个级别,P0 为最高,P4 为最低。该体系与 Google SRE 使用的 SEV(Severity)体系对比如下:

图表渲染中…

公正文化(Just Culture)框架

公正文化由心理学家 James Reason 提出,核心思想是:大多数人为错误的根源在于系统缺陷,而非个人失误。 这个框架帮助区分三种情况:

  1. 人为错误(Human Error):无意中犯错 → 应该被原谅和学习
  2. 冒险行为(At-Risk Behavior):在模糊情况下做出选择 → 需要澄清规则和提供更好工具
  3. 违规行为(Reckless Behavior):明知故犯 → 应该受到纪律处分

三、关键流程

流程一:SEV 详细定义与响应 SLA

SEV-1(Critical)— 关键服务完全或部分不可用

属性定义
业务影响核心业务完全不可用或严重降级;用户无法完成关键操作
影响范围>50% 用户受影响 或 核心交易链路中断
数据影响可能导致数据丢失或一致性破坏
品牌影响可能引发媒体关注或监管介入
响应 SLA5 分钟内确认,15 分钟内 IC(指挥官)到位
升级路径立即升级至 CTO/VP 级别
通报要求实时同步,每 15 分钟更新一次

SEV-2(Severe)— 核心功能严重降级

属性定义
业务影响核心功能部分不可用或性能严重下降
影响范围10%-50% 用户受影响 或 重要功能不可用
品牌影响可能引发大量用户投诉
响应 SLA15 分钟内确认,30 分钟内 IC 到位
通报要求30 分钟内首次通报,每 30 分钟更新

SEV-3(Moderate)— 非核心功能异常

属性定义
业务影响非核心功能不可用或性能下降
影响范围<10% 用户受影响 或 辅助功能异常
响应 SLA30 分钟内确认,1 小时内响应
通报要求1 小时内通报,每小时更新

SEV-4(Minor)— 微小影响

属性定义
业务影响极小范围的体验问题
影响范围个别用户或内部系统
响应 SLA下一个工作日内响应
通报要求周报中汇总即可

流程二:定级决策流程

图表渲染中…

流程三:Error Budget 与故障定级的关系

在现代 SRE 实践中,Error Budget(错误预算) 是连接故障定级与发布决策的关键桥梁。

plaintext
Error Budget = (100% - SLO目标) × 统计周期
 
示例:
- SLO目标:99.9%可用性(月度)
- 允许的不可用时间:43.2分钟/月
- Error Budget:43.2分钟
Error Budget 剩余发布策略故障响应策略
>80%正常发布节奏标准响应流程
50%-80%冻结非必要发布加强监控密度
20%-50%仅允许热修发布提升响应级别
<20%完全冻结发布进入战备状态
耗尽强制性稳定性专项全面复盘+整改

流程四:定责维度详解(2025 增强版)

1. 变更执行(Change Management)

场景责任判定2025 年补充说明
变更方未通知受影响方责任在变更方必须通过变更管理系统记录
通知到位但受影响方未准备责任在受影响方受影响方应有依赖服务的健康检查机制
变更影响超出预期责任在变更方变更前应进行 Blast Radius Assessment
变更在禁止窗口期执行责任在变更方变更窗口应由系统强制管控
灰度验证不充分就全量责任在变更方自动化 Canary Analysis 应作为 Gate

2. 服务依赖(Service Dependency)

场景责任判定2025 年补充说明
私自调用/不符合约定责任在调用方服务治理平台应能发现非法调用
服务方文档不清责任在服务方API 文档应自动生成并与代码同步
SLA 未达标但未告警双方责任服务方负责 SLA,调用方负责超时处理
依赖服务故障导致级联视情况而定需要分析是否有 Circuit Breaker

3. 第三方责任(Third Party / External)

场景责任判定2025 年补充说明
IDC 电力/网络故障第三方责任但需评估冗余设计是否充分
云厂商服务中断第三方责任应有多云或多区域容灾
DNS 服务商故障第三方责任自建 DNS 或使用多 DNS 厂商
关键原则第三方触发 ≠ 我们的免责理由必须找出自身的改进点

四、工具与实战

故障定级快速参考卡

plaintext
┌─────────────────────────────────────────────────────────────┐
│                  故障定级快速参考卡                            │
├──────────┬──────────┬───────────┬──────────┬────────────────┤
│   级别   │  响应时间 │  IC到位   │  通报频率  │    典型特征     │
├──────────┼──────────┼───────────┼──────────┼────────────────┤
│  SEV-1   │   5min   │   15min   │  15min   │ 全站/核心不可用  │
│  🔴严重  │          │           │          │                │
├──────────┼──────────┼───────────┼──────────┼────────────────┤
│  SEV-2   │  15min   │   30min   │  30min   │ 核心功能降级    │
│  🟠高危  │          │           │          │                │
├──────────┼──────────┼───────────┼──────────┼────────────────┤
│  SEV-3   │  30min   │   60min   │   60m   │ 非核心功能异常  │
│  🟡中等  │          │           │          │                │
├──────────┼──────────┼───────────┼──────────┼────────────────┤
│  SEV-4   │ Next Day│   N/A     │   周报   │ 微小影响        │
│  🟢低危  │          │           │          │                │
└──────────┴──────────┴───────────┴──────────┴────────────────┘

定责决策 Checklist

在故障复盘会议中,建议按照以下顺序进行定责决策:

  • 事实确认:故障时间线是否已核对无误?
  • 影响评估:定级是否各方认可?
  • 根因识别:技术根因是否已明确?
  • 触发分析:直接触发因素是什么?
  • 系统审视:系统是否存在可以预防此类问题的机制?
  • 流程审查:相关流程是否存在漏洞?
  • 责任匹配:根据定责标准,各方责任比例如何?
  • 改进措施:各方需要落实什么改进?
  • 跟踪机制:如何确保改进措施落地?

五、常见误区

误区一:定级标准不清晰,靠主观判断

各方对故障影响理解不同,复盘时频繁出现定级争执。应制定明确的 SEV 分级标准,从业务影响、影响范围、数据影响、品牌影响等维度量化,并由 IMT/RE 团队拥有绝对话语权。

误区二:定责变成甩锅

上游将责任推脱至下游,特别是"运维背锅"现象。应作为受影响方端到端定位清楚,只有当定位出的问题确实发生在运维部件时才允许将责任传递。

误区三:定责等同于处罚

将定责与薪资、绩效直接强挂钩,导致员工恐惧、隐瞒问题、推卸责任。应区分定责(对事不对人)与处罚(对人),用 Just Culture 框架指导每次定责。

误区四:忽视 Error Budget 与定级的联动

定级是孤立判断,与发布决策、可靠性目标脱节。应建立 Error Budget 消耗与发布策略、故障响应的闭环机制。

误区五:第三方触发即免责

将根因简单归因于云厂商或 IDC,停止自身改进。必须坚持"第三方触发 ≠ 我们的免责理由",找出自身的改进点(如多区域容灾、Circuit Breaker 兜底)。

误区六:标准一成不变

定级定责标准制定后长期不修订,无法适应业务变化。应每季度或半年对标准进行一次修订和完善。


六、进阶延展

演进趋势

  1. Error Budget 驱动:定级与发布决策形成闭环,量化风险承受能力
  2. Just Culture 框架:用公正文化决策树指导每次定责,区分人为错误与违规行为
  3. AIOps 辅助定级:基于实时指标自动建议 SEV 级别
  4. IMT/RE 角色演进:从"法官"变为"推动者"+"赋能者"
  5. 变更管理自动化:Change Automation Platform 记录变更,Blast Radius Assessment 评估影响

扩展阅读

本文阐述了故障管理中的定级和定责标准。笔者所在团队(蘑菇街)在该方面的具体管理执行中取得了不错的效果,故分享出来以供参考。