Service Level Indicator 服务水平指示器,服务水平,简称SLI。对于业务来说是最重要的指标。比如,对于网站来说,一个常见的SLI是请求得到正常响应的百分比。
Service Level Object 服务水平目标,是围绕SLI构建的目标。通常是一个百分比,并与一个时间范围挂钩。比如,月度、季度、年度等。通常用一连串9来度量。如果脱离了时间的度量,SLO的意义就不大了。
90%(1个9的正常运行时间):这意味着10%的停机时间,也就是说在过去的30天里停机了3天。
Service Level Agreement 服务水平协议,是企业围绕SLO发布的协议。它要求在不满足SLO时向客户补偿的协议。
假如我有一个网站http://eample.com,我对这个网站的监控指标是请求正常响应数,从2021年1月1号上线到今天2021年3月18号,请求数据如下:
1月,总请求数500,错误响应20;
2月,总请求数600,错误响应10;并因为故障宕机10分钟;
3月1号-3月18号,总请求数400,错误响应15;
那么我计算出来的SLI、SLO,SLA是多少呢?
SLI:1 -(20+10+15)/ (500+600+400) = 97%
SLO:1 - ( 10 / 79天 * 24 * 60 )= 99.991%
SLO:假如我们是给第三方做的网站,并签订了协议SLO达不到99.999%,就赔偿多少钱,那么根据我上面的这个SLO,再根据签订的SLA协议,算出补偿的金额。
如果你要面试运维专家岗/运维架构师/运维经理/运维总监,面试中必然会问到的一个问题就是:“你能保障什么样的SLA?如何去实现你所保障的SLA?”
SLA,SLO大家也许也都听说过,也知道几个9的含义,但是细致的去了解服务质量目标以及如何实现,做得人应该很少。上面的问题,很多人都很难以回答,或者说只会说空话,这个会让面试官一下就能感觉出来你的经验缺乏和能力不行。所以,下面的这篇文章希望你好好看,总结出自己的回复思路,也加深对运维这个工作的感悟。