SRE核心理念:SLI、SLO与错误预算
概述 SRE(站点可靠性工程)的核心理念是:用工程方法管理可靠性。其中最关键的工具就是 SLI、SLO 和错误预算。 SLI:服务等级指标 SLI 是衡量系统可靠性的量化指标。常见的 SLI 包括: 可用性:成功请求数 / 总请求数 延迟:P99 响应时间 < 200ms 吞吐量:QPS > 10000 正确性:数据一致性校验通过率 选择 SLI 的关键原则:从用户视角出发。用户不关心你的 CPU 使用率,只关心请求是否成功、是否够快。 SLO:服务等级目标 SLO 是 SLI 的目标值。例如: slo: availability: target: 0.999 # 99.9% 可用性 window: "30d" latency: target: 200 # P99 < 200ms window: "30d" 99.9% 的可用性意味着每月允许约 43.8 分钟 不可用。 错误预算 错误预算是 SRE 最精妙的设计: SLO 设为 99.9% → 错误预算 = 0.1% 预算未耗尽:可以发布新功能、做激进变更 预算耗尽:冻结发布,专注稳定性改进 这个机制让"稳定性 vs 迭代速度"不再是口角之争,而是可量化的工程决策。 实践建议 从核心服务开始:不要试图一次性定义所有服务的 SLO 先粗糙后精细:初始 SLO 可以基于历史数据粗略设定,逐步迭代 定期回顾:每月 review SLO 达成情况,调整不合理的指标 自动化告警:基于错误预算消耗速率设置告警,而非固定阈值 总结 SLI/SLO/错误预算构成了 SRE 的度量基石。没有度量就没有管理——这正是 SRE 区别于传统运维的核心。