服务质量目标(SLO)
2024-01-16 11:59:35 0 举报
AI智能生成
服务质量目标(SLO)是一种用于衡量服务性能和可用性的标准,它是服务提供商与客户之间达成的一致协议。SLO规定了在一定时间内成功交付服务的百分比,以及出现问题时所需的恢复时间。通过设定SLO,服务提供商可以确保提供稳定、可靠的服务,同时客户也可以根据这些标准来评估服务提供商的性能。SLO通常包括可用性、延迟和准确性等方面。
作者其他创作
大纲/内容
服务质量指标(SLI)、服务质量目标(SLO)、以及服务质量协议(SLA)。这三项分别是指该服务最重要的一些基础指标 ,这些指标的预期值,以及当指标不符合预期时的应对计划。
前言
SLI是指服务质量指标(indicator)该服务的某项服务质量的一个具体量化指标
处理请求所消耗的时间
请求延迟
请求处理失败的百分比
错误率
每秒请求数量
系统吞吐量
代表服务可用时间的百分比
可用性
常见的SLI指标
指标
SLO是服务质量目标(Objective):服务的某个SLI的目标值,或者目标范围。SLO的定义是SLI<目标值,或者范围下线< SLI< 范围上限。
目标
SLA是服务质量协议(Agreement):指服务与用户之间的一个明确的,或者不明确的协议,描述了在达到或者没有达到SLO之后的后果
SRE通常不会参与SLA的书写
SRE会参与制定具体的SLI:很明显,提供一个客观的方式来度量SLO是很重要的,否则大家就会产生分歧
协议
服务质量术语
只有理解用户对系统的真实需求才能真正决定哪些指标是否有用。
指标过多会影响对那些真正重要的指标的关注,而选择指标过少则会导致某些重要的系统行为被忽略。一般来说,四五个具有代表性的指标对系统健康程度的评估和关注就足够了。
用户可见的服务系统
存储系统通常强调:延迟、可用性和数据持久性
大数据系统:关心吞吐量和端到端延迟
所有的系统都应该关注:正确行。 正确性是系统健康程度的一个重要指标。但是它更关注系统内部的数据。而不是系统本身,所以这通常不是SRE直接负责的。
常见的服务,根据它们的SLI通常会归为以下几个大类
运维人员和最终用户各关心什么
利用监控系统或者日志分析系统
某些系统可以加入对客户端数据的收集,否则可能会错失一些不影响服务端指标,但是对用户产生影响的问题。
指标的收集
平均请求延迟可能看起来很简单,但是掩盖了一个重要的细节;很可能大部分请求都是很快的,但是长尾请求速度却很慢
用户研究显示,用户通常更喜欢速度较慢的系统,而不是一个请求速度抖动很厉害的系统
SRE团队更关注长尾部分,如果99.9%的系统行为都正常的话,50%部分就肯定也是正常的
汇总
汇总间隔:每1分钟汇总一次
汇总范围:集群中的全部任务
度量频率:每10秒一次
包含哪些请求:从黑盒监控任务发来的HTTP GET请求
数据如何获取:通过监控系统获取服务器端信息得到
数据访问延迟:从收到请求到最后一个字节被发出
常见指标SLI标准化
指标在实践中的应用
SLO应该具体指出它们是如何被度量的,以及其有效条件
批处理用户(关注吞吐量)以及在线交互式用户(关注延迟)
SLO不达标的频率可以用来与错误预算进行对比,利用这两个数值的差值可以指导新版本的发布
目标的定义
不要仅以目前的状态为基础选择目标
保持简单
避免绝对值
SLO越少越好
不追求完美
目标的选择
1.监控并且度量系统的SLI
2.比较SLI和SLO,以决定是否需要执行操作
3.如何需要执行操作,则要决定究竟什么操作需要被执行,以便满足目标
4.执行这些操作
控制手段
目标在实践中的应用
1.留出一定的安全区
2.实际SLO也不要过高
让用户拥有正确的预期
理解系统行为与预期的符合程度可以帮助决策是否需要投入力量优化系统,使其速度更快、更可用,或者更可靠。如何服务一切正常,可能力量应该花在其他的优先级上,例如消除技术债务、增加新功能,或者引入其他产品等。
SLO可以建立用户预期
SRE在这个过程中的作用是帮助这些部门理解SLA的SLO达标的概率和困难程度
协议在实践中的应用
服务质量目标
0 条评论
下一页