Files
nexus/wiki/concepts/SRE.md
2026-04-29 00:02:51 +08:00

2.7 KiB
Raw Blame History

title, type, tags, last_updated
title type tags last_updated
SRE concept
SRE
Site-Reliability-Engineering
DevOps
Automation
Cloud-Transformation
2026-04-28

Definition

SRE (Site Reliability Engineering站点可靠性工程) 是一种通过软件工程思维解决运维问题的方法论。其核心理念是打破传统运维与产品开发之间的壁垒通过自动化、可靠性测量和系统性方法提高服务质量。SRE 起源于 Google现已被广泛应用于云原生和企业 IT 环境。

Core Principles

1. 将错误视为学习机会

SRE 将故障和错误视为改进系统的机会,而非单纯追究责任。通过 Post-mortem 和 CAPA 流程从事故中提取根本原因。

2. 拥抱风险

SRE 接受服务存在固有风险,通过 Error Budget 和 SLO 量化可接受的可靠性水平,在创新速度与稳定性之间取得平衡。

3. 消除 toil重复性手工劳动

Toil 是指那些手动、重复性、可自动化、缺乏持久价值且随规模线性增长的工作。SRE 团队应将 toil 控制在 50% 以下,其余时间用于系统性改进和功能开发。

4. 自动化一切可自动化的

通过 IaC基础设施即代码和 CI/CD Pipeline 将变更实现完全自动化,减少人工审批环节和出错概率。

5. 可测量性优先

所有系统行为都需要可观测性指标支撑SLI/SLO/SLA通过监控和告警实现问题的早期发现。

SRE Team Collaboration Model

SRE 团队在云转型项目中与产品团队在三个阶段协作:

阶段 说明 SRE 职责
Build构建 产品基础设施搭建阶段 定义技术架构、共享 IaC 模块、定义 SLO/SLR
Early Live Support早期上线支持 Build 与 BAU 之间的过渡阶段 完成 Go-Live Checklist监控覆盖、支持模型、事件响应流程
BAU日常运维 持续运营阶段 周/双周/月度指标汇报、持续改进

Key Metrics

  • SLI (Service Level Indicator):服务等级指标,直接测量的系统指标(如可用性、延迟)
  • SLO (Service Level Objective)服务等级目标SLI 的目标值(如 99.9% 可用性)
  • Error Budget错误预算SLO 允许范围内的错误配额,用于指导发布节奏
  • Toil:重复性手工劳动,应控制在 50% 以下

Relationship with DevOps

SRE 是 DevOps 理念的具体实现形式之一。DevOps 强调打破开发与运维的边界SRE 则通过量化指标Error Budget、SLO和自动化工具将这一理念落地。

Sources