45 lines
1.6 KiB
Markdown
45 lines
1.6 KiB
Markdown
---
|
||
id: error-budget
|
||
title: "Error Budget(错误预算)"
|
||
type: concept
|
||
tags: [sre, reliability, availability]
|
||
last_updated: 2026-04-19
|
||
---
|
||
|
||
## Definition
|
||
Error Budget(错误预算)是系统在不影响客户的前提下可以不可靠的最大时间量。它弥合了开发与运维之间的鸿沟,将失败正常化为开发过程的一部分。
|
||
|
||
## Calculation
|
||
```
|
||
Error Budget = 1 - 可用性 SLO
|
||
```
|
||
|
||
例如:
|
||
- 99.9% SLO → 0.1% Error Budget
|
||
- 99.99% SLO → 0.01% Error Budget
|
||
|
||
完美可用性是 100%,Error Budget 落在 SLO 和 100% 之间。
|
||
|
||
## Usage
|
||
- **在预算内**:开发者可以承担更多风险,快速交付功能
|
||
- **超出预算**:开发者必须做出更保守的选择,优先保证稳定性
|
||
|
||
## Measurement
|
||
- [[SLI(服务等级指标)]]:可靠性的可量化度量指标
|
||
- [[SLO(服务等级目标)]]:服务应该达到的性能/可靠性目标
|
||
- [[SLA(服务等级协议)]]:客户级别的正式协议
|
||
|
||
## Importance
|
||
1. **监控能力**:快速显示 Error Budget 是否未充分利用或已超出
|
||
2. **小幅度变更**:小迭代变更和充分测试的部署是管理 Error Budget 的关键
|
||
3. **混沌工程**:通过故意引发故障测试系统韧性,确保满足 NFR
|
||
|
||
## Relationship
|
||
- [[SRE]] ← uses ← Error Budget
|
||
- Error Budget ← derives ← [[SLO(服务等级目标)]]
|
||
- [[SLO(服务等级目标)]] ← measures ← [[SLI(服务等级指标)]]
|
||
|
||
## References
|
||
- [[CTP Topic 41 NFR's and Error Budgets]] — Error Budget 概念详解
|
||
- [[Brendan Standing]] — Micro Focus SRE 负责人
|
||
- [[NFR(非功能需求)]] — Error Budget 服务的目标 |