1. 课程导论:什么是 SLO 驱动服务目录,为什么变更失败率是核心指标
1.1 从静态资产清单到动态可靠性契约
传统服务目录通常是一份静态的 Excel 表格或 CMDB 记录,包含服务名称、负责人、技术栈等基础信息。这种目录在微服务架构和 DevOps 实践中迅速失效——它无法回答“这个服务当前是否健康”“它的可靠性是否满足业务预期”等动态问题。
SLO 驱动服务目录(Service Level Objective Driven Service Catalog)将服务目录从静态资产清单升级为动态可靠性契约平台。每个服务在目录中不仅记录元数据,还绑定一组明确的 服务等级目标(SLO),并通过实时监控数据持续评估 SLO 达成状态。
核心转变: 服务目录从“记录有什么”进化为“承诺做到什么”。SLO 成为服务之间、服务与平台之间、服务与业务之间的共同语言。
1.2 为什么变更失败率是核心指标
在 Google 的 DevOps 研究与评估(DORA) 报告中,四个关键指标被用来衡量软件交付效能:
| 指标 | 定义 | 衡量维度 |
|---|---|---|
| 部署频率 | 单位时间内向生产环境部署的次数 | 交付速度 |
| 变更前置时间 | 从代码提交到生产部署的耗时 | 交付速度 |
| 变更失败率 | 部署导致服务降级或故障的比例 | 交付稳定性 |
| 故障恢复时间 | 从故障发生到服务恢复的耗时 | 恢复能力 |
变更失败率之所以成为 SLO 驱动服务目录的核心指标,原因有三:
- 稳定性与速度的平衡器:部署频率和变更前置时间衡量“多快”,变更失败率衡量“多稳”。没有变更失败率约束,高速部署将直接侵蚀服务可靠性。
- 变更质量的直接度量:可用性和延迟 SLO 反映的是稳态运行质量,而变更失败率直接度量变更过程本身的质量——这是平台工程团队最可控的环节。
- 门禁策略的量化依据:在服务目录中设定变更失败率 SLO 后,平台可以自动阻止超过阈值的服务继续发布,形成真正的变更安全门禁。
实践建议: 初始阶段将变更失败率 SLO 设定为 ≤ 5%(对应 DORA 高绩效组织标准),随着自动化测试和灰度能力提升,逐步收紧至 ≤ 2%。
1.3 课程目标与受众
本课程面向以下角色,提供从理论到可操作配置的完整知识体系:
| 受众角色 | 核心痛点 | 课程收益 |
|---|---|---|
| SRE 工程师 | 变更频繁导致可靠性波动,缺乏量化门禁 | 掌握变更失败率 SLO 的配置、监控和告警方法 |
| 平台工程团队 | 服务目录停留在静态记录,无法驱动变更管控 | 学会将 SLO 嵌入服务目录,构建变更安全门禁 |
| DevOps 负责人 | 团队交付速度与稳定性难以平衡 | 获得基于数据的变更质量评估框架 |
| 技术管理者 | 缺乏跨服务的可靠性统一视图 | 理解 SLO 驱动目录的决策支持能力 |
1.4 课程核心内容预览
本课程共 30 章,覆盖以下知识模块:
- 基础篇(第 1-6 章):SLO 驱动服务目录概念、变更失败率定义与计算、指标采集方案
- 配置篇(第 7-15 章):变更失败率 SLO 参数配置、阈值设定、窗口期选择、排除规则
- 集成篇(第 16-22 章):与 CI/CD 流水线集成、变更门禁实现、告警与升级策略
- 进阶篇(第 23-28 章):多服务聚合 SLO、错误预算策略、变更失败率与容量规划
- 实战篇(第 29-30 章):完整案例演练、常见陷阱与最佳实践
前置要求: 本课程假设学员已具备基本的 SRE 概念认知(如 SLI/SLO/SLA 的区别),并拥有至少一种可观测性平台(如 Prometheus、Datadog、Grafana)的使用经验。第 1-3 章会快速回顾核心概念,但不会从零讲解。