1. MTTR 基础概念
1.1 MTTR 定义
MTTR(Mean Time To Repair,平均修复时间)是衡量系统从故障发生到完全恢复所消耗平均时间的核心可靠性指标。在 SRE 实践中,MTTR 覆盖从故障检测、诊断、修复到验证的全过程,是评估运维效率与自愈能力的关键度量。
MTTR 的完整时间窗口: 故障发生 → 告警触发 → 故障确认 → 根因定位 → 修复执行 → 恢复验证 → 服务正常。任何环节的延迟都会直接拉高 MTTR。
1.2 MTTR 计算公式
MTTR 的计算基于统计周期内所有故障修复时间的算术平均值:
MTTR = 总修复时间 / 故障次数
其中:
- 总修复时间 = Σ(每次故障从开始修复到恢复的时长)
- 故障次数 = 统计周期内发生的故障总数
示例计算: 某月发生 4 次故障,修复时长分别为 12min、8min、15min、5min,则:
MTTR = (12 + 8 + 15 + 5) / 4 = 40 / 4 = 10 分钟
实践要点: 计算 MTTR 时需明确“修复开始”和“恢复完成”的判定标准。建议以 用户可感知的服务恢复 为终点,而非仅以基础设施状态恢复为准。
1.3 MTTR 与 MTBF / MTTF 的关系
这三个指标共同构成系统可靠性的核心度量体系,理解其区别与联系是 SRE 的基础能力。
| 指标 | 全称 | 定义 | 关注点 |
|---|---|---|---|
| MTTR | Mean Time To Repair | 平均修复时间 | 故障恢复速度 |
| MTBF | Mean Time Between Failures | 平均故障间隔时间 | 系统稳定性 |
| MTTF | Mean Time To Failure | 平均无故障时间(不可修复系统) | 组件寿命 |
核心关系:
- 可用性公式: Availability = MTBF / (MTBF + MTTR)。降低 MTTR 可直接提升系统可用性。
- MTBF 与 MTTR 的权衡: 高 MTBF 代表系统稳定,低 MTTR 代表恢复迅速。SRE 的目标是同时提升 MTBF 和降低 MTTR。
- MTTF 适用场景: 针对不可修复组件(如磁盘、电源模块),MTTF 替代 MTBF 使用。
1.4 MTTR 在 SRE 中的重要性
在 SRE 体系中,MTTR 不仅是事后度量指标,更是驱动运维自动化和自愈能力建设的核心杠杆。
关键认知: 在同等 MTBF 条件下,MTTR 每降低 50%,系统可用性可提升约 0.5 个九(以 99.9% 为基准)。对于年收入千万级业务,0.5 个九的可用性提升意味着减少数十万至数百万的故障损失。
MTTR 对 SRE 的四大核心价值:
- 可用性直接驱动因素: 从可用性公式可知,MTTR 与 MTBF 共同决定系统可用性。在 MTBF 难以快速提升时,降低 MTTR 是更现实的优化路径。
- 用户体验的晴雨表: 故障恢复速度直接影响用户感知。长 MTTR 意味着更长的服务中断时间,直接导致用户流失和品牌信誉损失。
- 运维效率的度量标尺: MTTR 反映了团队故障响应、诊断和修复的综合能力。低 MTTR 代表高效的运维流程和成熟的自动化体系。
- 自愈能力建设的核心目标: 自愈剧本和自动恢复流程设计的根本目的就是压缩 MTTR,将人工干预时间降至最低,实现故障的秒级/分钟级自动恢复。
SRE 最佳实践: 建议将 MTTR 拆解为 检测时间(TTD)、诊断时间(TTI)、修复时间(TTF) 三个子指标分别度量。自愈剧本设计的核心就是通过自动化压缩这三个子时间,实现 MTTR 的整体压降。