1、VALET 定义

1.1 容量(流量,Volume)
- 服务可以处理多少业务量?
- 处理的记录数量
1.2 可用性(Availability)
- 服务是否在需要时可用?
- 在一定时间内完成工作的频率(百分比)
1.3 延迟(Latency)
- 在使用服务时,它是否快速响应?
- 任务运行所需的时间
1.4 错误(Errors)
- 在使用服务时,是否会出错?
- 无法处理的记录
1.5 工单(Tickets)
- 该服务请求是否需要人工干预才能完成?
- 操作员必须手动修复数据和重新处理任务的次数
1.6 SRE改进步骤
- 建立统一语言 VALET
- 各服务自动数据收集数据源
- 建设仪表盘,大屏看板实时监控数据趋势
- 写入开发负责人的OKR
- 管理批处理任务的SLO目标
2、SLO 落地

2.1 列出关键用户旅程
列出关键用户旅程,并根据业务影响对其进行排序。业务列出相关上下游核心调用链,可以借助相关平台工具查询调用链信息。
(关键用户旅途( critical User Journey)又称为用户旅程,是指用户从首次接触直至下单以及享受产品或服务期间,用户与企业产品或者平台互动的全过程。)

2.2 确定服务水平指标(SLI)
确定哪些指标可用作服务水平指标(SLI),以最准确地跟踪用户体验。在业务确定的核心调用链中确定核心的指标,可以参考4个黄金指标:延迟、流量、错误、饱和度。

所以,SLI 为100表示一切正常,为零表示一切损坏。
使用尽可能少的 SLI 来准确表示给定服务的容忍度,太多的SLI会引发太多的误报,通常,一个服务应该具有 2 到 6 个 SLI,如果 SLI 太少,可能会错过有价值的信号。如果 SLI 过多,SRE团队就要跟踪太多东西,但边际附加效用有限。经验所得衡量SLI的比较好的指标是请求延迟和错误率。
2.3 确定SLO目标和SLO度量周期
确定SLO目标和SLO度量周期,例如:每月 99.99% 的 HTTP 请求成功返回“200 OK”,假定一个月内有10,000个HTTP请求,而只有9,999个请求根据SLI返回成功响应,则表示该月的可用性为9,999 / 10,000或99.99%。

2.4 创建SLI、SLO和错误预算控制台及dashboard监控
创建SLI、SLO和错误预算控制台(管理)及dashboard监控。作为SRE,我们需要能够随时查看服务状态,那么意味着需要创建监控仪表板,开发一套SLI、SLO和错误预算的图表。

2.5 创建SLO警报
创建基于SLO警报,尽管使用哪种阈值都有不同的首选项,但作为SRE,建议使用基于错误预算记录的警报。

3、 demo







本文介绍VALET框架的概念及其在服务级别目标(SLO)中的应用,包括如何定义服务容量、可用性、延迟等指标,并通过实际案例展示如何实施SLO以提高服务质量。
42





