SRE体系02----常见术语

拓朴流星
• 阅读 258

MTBF

平均无故障运行时间(即从开始运行到出现故障所经历的时间),通俗的讲时间越长,说明系统的稳定性和可靠性越好

MTTR

平均故障修复时间(即从系统发生故障到恢复正常所经历的时间),通俗的讲就是当业务系统故障时,修复系统所花费的时间。时间越短,说明我们的修复和维护工作越高效,也可从侧面说明该业务系统的自愈合能力和抗灾害能力越强
SRE体系02----常见术语

可靠性与可用性

可靠性是从故障出现的次数或频率来判断的,出现故障的次数越少则可靠性越好

可用性是从总的故障时长来判断的,故障总时间越短则可用性越好

SLI

服务水平指示器,直译不好理解。通俗的讲就是用来评价我们服务质量的指标,例如:

  • 磁盘存储的可靠性:98%
  • 网站访问的延迟:<40ms
  • 2xx状态请求占比: 99.92%
  • 服务的可使用时间: 98.75%

SLO

服务水平目标。用来描述SLI的目标值,通常指我们在服务时间内(如月度,季度,年度)需要达到的服务目标,SLO可以理解为考核值,而SLI是实际值

服务指标(年度)SLISLO服务目标达成情况
磁盘存储的可靠性98%99.999%未达成
网站访问的延迟<40ms<30ms未达成
2xx状态请求占比99.92%99.999%未达成
服务的可使用时间99.75%99%达成

SLA

服务水平协议。和用户签订的服务条款,通常是指一些赔付条款。例如通过监控SLI值,并和SLO对比,如果未达成SLO,需要如何为客户提供赔偿

示例

奥得彪在AWS上购买了一台弹性云服务器EC2,用来搭建香蕉零售网站。结果AWS的非洲数据中心多次发生了故障,影响了奥德彪的EC2,一年宕机了共计320个小时,根据计算EC2的年度可用性指标仅仅为96.35%(SLI)。

奥德彪很生气,因为AWS的销售人员承诺他,EC2的年度可用性指标是99.75%(SLO),即故障时间小于22小时。

然而实际情况是SLI<SLO,说明AWS提供的服务质量明显没达标。于是奥德彪打开了和AWS签署的用户协议(SLA),上面写着对于额外故障时间,每小时赔付用户10美元。根据此协议,AWS为奥德彪赔偿了2980美元

说明:

从上面的例子我们理解了SLI,SLO,SLA这几个概念,设计这几个概念的初衷在于量化我们的服务质量,管理客户的预期。例如客户总是抱怨网站访问慢,但“慢”是一种很难量化的相对的心里感受状态,并不能直观反映服务质量。

我们可以告诉用户:你使用的共享实例延迟小于80ms(SLO),价格10元/天,而独享实例延迟<20ms(SLO),价格100元/天, 你可以选择独享实例来提升速度。而用户通过直观的数据,对服务质量和价格有了量化的比较,再看看钱包,也许就不觉的慢了。。。。。。

SLO的设定要合理,(SLI - SLO)的差值波动越小越好,不要给用户越级体验和预期,这对工作并无益处

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
Java日期时间API系列31
  时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总毫秒数,是所有时间的基础,其他时间可以通过时间戳转换得到。Java中本来已经有相关获取时间戳的方法,Java8后增加新的类Instant等专用于处理时间戳问题。 1获取时间戳的方法和性能对比1.1获取时间戳方法Java8以前
Wesley13 Wesley13
3年前
Linux时间与系统时间相差8小时的解决办法
Linux时间与系统时间相差8小时的解决办法2018年07月05日08:52:17小牛CKX(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fme.csdn.net%2Fqq_27664167)阅读数:2736版权声明:本文为博
Stella981 Stella981
3年前
Python之time模块的时间戳、时间字符串格式化与转换
Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。 time.struct_time(tm_y
Stella981 Stella981
3年前
HIVE 时间操作函数
日期函数UNIX时间戳转日期函数: from\_unixtime语法:   from\_unixtime(bigint unixtime\, string format\)返回值: string说明: 转化UNIX时间戳(从19700101 00:00:00 UTC到指定时间的秒数)到当前时区的时间格式举例:hive   selec
Stella981 Stella981
3年前
OpenTSDB在HBase中的底层数据结构设计
0.时序数据库时间序列(TimeSeries):是一组按照时间发生先后顺序进行排列的数据点序列,通常一组时间序列的时间间隔为一恒定值(如1秒,5分钟,1小时等)。时间序列数据可被简称为时序数据。实时监控系统所收集的监控指标数据,通常就是时序数据。时序数据具有如下特点:每一个时间序列通常为某一固定类型的数值
Wesley13 Wesley13
3年前
Oracle Data Guard 的角色转换(Failover)
OracleDataGuard的角色转换\日期:20130618\来源:Linux社区 作者:newhappy\字体:大中小\二、Failover一旦主数据库发生Crash(比如异常掉电、硬件故障),短时间内无法恢复运行,这时为了尽快的把业务恢复正常,通常需要执行fa
Stella981 Stella981
3年前
Linux查看用户信息
查看用户信息ww显示信息的含义  JCPU:以终端代号来区分,该终端所有相关的进程执行时,所消耗的CPU时间会显示在这里  PCPU:CPU执行程序耗费的时间  WHAT:用户正在执行的操作  loadaverage:分别显示系统在过去1、5、15分钟内的平均负载程度  FROM:显示用户从何处登陆系统,
京东云开发者 京东云开发者
7个月前
代码之美-代码整洁之道
作者:京东零售刘仲伟一、开篇引言京东零售从9月开始对技术风险系统性地跟踪汇报,以故障数、监控发现率、故障发现时间、故障恢复时间等多个指标进行统计和跟踪汇报,相比于之前线上小故障杖责二十、大故障发配宁古塔,有了向惩前毖后、治病救人方向的转变。我也有机会参与到
提高IT运维效率,深度解读京东云AIOps落地实践(异常检测篇(二))
时间序列异常检测识别故障对系统的正常运行颇为重要,准确率高的异常检测对系统的稳定性具有重要意义。时间序列的异常检测已经研究了几十年,业界提出了各种有效检测方法。我们提出了一种基于深度学习的时间序列异常检测模型。
【稳定性】关于缩短MTTR的探索 | 京东物流技术团队
一、什么是MTTR?当系统出现系统故障时,我们需要通过一些指标来衡量故障的严重程度和影响范围。其中MTTR(MeanTimeToRepair名为平均修复时间)是一个非常重要的指标,它可以帮助我们了解修复系统所需的平均时间。花费太长时间来修复系统是不可取的,
云容灾关键技术点简介
备份是为防止系统出现操作失误或系统故障导致数据丢失,而将全系统或部分数据集合从应用主机的硬盘或阵列复制到其他存储介质的过程。备份是数据高可用的最后一道防线。容灾是当灾难发生时,在保证生产系统的数据尽量少丢失的情况下,保持生产系统的业务不间断地运行。容灾必须通过系统冗余、灾难检测和系统迁移等技术来实现。