SLA、SLO、SLI 有什么区别?(附写好 SLA 的 5 个建议)

SLA 是服务商与客户的协议,SLO 是协议里的具体目标,SLI 是衡量目标达成情况的实际数值。本文讲清三者关系、各自的常见坑、企业到底要不要 SLA,以及服务商写好 SLA 的 5 条实操建议。

最佳实践
SLO 与可用性主题插画

三句话先讲清三者关系:

  • SLA(服务等级协议):服务商与客户之间的正式协议,写明服务承诺。例如"月度可用性不低于 99.99%,工作日客服 24 小时内响应";
  • SLO(服务等级目标):SLA 里的每一项具体承诺就是一个 SLO。99.99% 可用性是一个 SLO,24 小时响应是另一个 SLO;
  • SLI(服务等级指标):SLO 的实际达成数值。本月目标是 99.99%,第一周实测可用性 99.90%——这个 99.90% 就是 SLI。SLI 不达标,等于违约。

SLA:一纸有赔偿条款的合同

SLA 覆盖服务商对产品性能和功能的承诺。可用性是最常见的条款,违约后果通常是服务抵扣金(Service Credit)——按比例返还下月账单,也可能是直接赔偿或延长服务期。

一份标准 SLA 的结构:

  1. 服务范围:提供什么服务;
  2. 义务条款:有效期内必须达成哪些 SLO;
  3. 度量方式:用哪些 SLI 衡量、如何测量、报告频率与颗粒度;
  4. 时效:协议有效期、审计与重新谈判的时间点;
  5. 罚则:不达标时双方承担什么后果。

SLA 的两个常见坑

  • SLO 定义含糊:什么叫"宕机"?页面完全打不开算宕机,那慢到无法正常工作算不算?定义不清,出纠纷时各说各话;
  • 条款脱离真实用户:SLA 往往是法务、销售、采购、技术多方妥协的产物,而大多数参与制定的人根本不会用这个服务。制定 SLA 必须让最终使用者的需求占主导地位。

SLO:协议里的每一项具体承诺

SLO 是 SLA 的组成单元,是客户可以指望的水准,也是服务团队要自我考核的靶子。

SLO 的最大问题:定义细节

"月度可用性 ≥ 99.95%"好写,"可用性到底怎么算"难定。真实案例:Google Earth 的 SLA 规定,只有连续 10 分钟以上、超过 10% 的请求返回 HTTP 500 的时段才计入宕机——也就是说 502 错误不算、8% 错误率不算、9 分钟的中断也不算。这就是为什么要用大白话把每个 SLO 的精确口径写死。

SLI:目标的实测值

SLI 就是 SLO 的实际测量结果。SLI 持续低于 SLO,服务商即构成违约,面临罚则。SLI 本身没什么独立的坑——它的麻烦全部继承自 SLO 的定义质量。SLO 口径含糊,SLI 的测量必然扯皮。

SLA 到底要不要有?

**不是必需品。**很多广泛使用的企业级软件根本没有 SLA。分视角看:

对服务商:要不要提供 SLA 主要看客户体量。大客户有采购部门和硬性采购规范,没 SLA 单子签不下来;而年费几千块的小单子(刷公司卡就买了)通常不需要 SLA。

对采购方:别被罚则条款迷了眼。评估 SLA 要花法务、财务、DevOps 多方时间;带 SLA 的采购流程也更长。更重要的是——有些厂商 SLA 平平但服务极其稳定,有的厂商 SLA 漂亮但故障频发。你要的是可用的服务,不是抵扣券。买之前翻对方状态页上的历史可用性记录,比研究罚则条款有用得多。大额、长约、新供应商这三种情况,SLA 的确定性价值才真正显现。

写好 SLA 的 5 个建议(给服务商)

  1. 围绕客户痛点写:对开发团队,"可用性"是服务器响应、验证码服务等 5 个组件的组合;对客户,"可用性"只意味着"能用/不能用"。把复杂的后端口径收敛成客户视角的简单结果指标,客户看得懂,开发团队的责任边界也更清晰;
  2. 用简单的语言:抛弃法律腔,用大白话写。语言越简单,未来扯皮越少;
  3. 别把能测的指标都塞进去:客户真正在乎的就那几个。能测不等于要写进协议——无关紧要指标只会稀释重点、增加违约面;
  4. SLI 承诺留有余量:承诺值要保守,低于你的实际能力。把内部目标定在 99.95%,对外承诺 99.9%,留出缓冲带,别顶着极限签协议;
  5. 把不可控因素写成例外条款:例如客服响应时效,如果需要客户提供排查信息后才能处理,这类等待时间必须明确排除在 SLA 计时之外,否则响应时长永远说不清。

用数据支撑 SLA 的签与守

SLA 的底气来自测量能力。观测云**可用性监测(云拨测)**从用户视角持续测量可用率与故障时长,产出可审计的 SLI 数据;监控器与事件时间线记录每次故障的起止与响应过程,既是内部 SLO 的考核依据,也是面对客户时证明 SLA 履约的凭证。 1 2

常见问题(FAQ)

Q:SLO 和 SLA 必须先有哪个?
先有 SLO。SLA 只是把内部已经在追的目标对外承诺化。没跑过 SLO 就签 SLA,等于闭眼签欠条。

Q:内部 SLO 和对外 SLA 数值一样吗?
不一样,内部 SLO 应该更严格。常见做法是对外 99.9%、对内 99.95%,内松外紧是事故隐患,内紧外松才留得出容错空间。

Q:SLI 用什么工具测才算数?
关键不是工具而是口径:从用户视角测(外部拨测)、测量点与客户体验一致、双方事先认可测量方法。这些写进 SLA 的"度量方式"章节。

Q:客户要求我们赔偿 SLA 里没有的项目怎么办?
SLA 的意义就在于边界清晰。协议外的诉求按商务关系处理,但不应开"SLA 外赔偿"的先例——那会让 SLA 本身失去意义。

参考资料

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台