SRE-Google运维解密随记-2-服务目标质量

2023-05-16

服务质量指标(SLI)、服务质量目标(SLO),服务质量协议(SLA)
这三项分别是指该服务最重要的一些基础指标、这些指标的预期值,以及当指标不符合预期时的应对计划。事先选择好合适的指标有助于在故障发生时帮助SRE进行更好地决策,同时也为SRE团队判断系统是否正常工作提供帮助。

SLI 服务质量指标:
该服务的某项服务质量的一个具体量化指标。
大部分服务都将请求延迟——处理请求所消耗的时间——作为一个关键的SLI。其他常见的SLI也包括错误率(请求失败的百分比)、系统吞吐量(每秒请求数量)等。这些质量通常是汇总过的;在某一个度量时间范围内将原始数据收集起来,计算速率、平均值、百分比等汇总数据。

理想情况下,SLI应该直接度量某一个具体的服务质量。但是很多时候,直接度量信息 可能非常难以获取,或者无法观测,我们只能用某种指标来替代。例如,客户端的延迟数据经常是最直接的用户指标,但是由于条件限制可能只能监控服务器端的延迟数据。

对数据存储系统来说,持久性数据能够完整保存的时间也是一个重要指标。虽然100%的“可用性”是不可能实现的,但是接近100%的可用性指标是  可以实现的一个目标。运维行业经常用9的数量来描述可用程度。例如,99%可用性被  称为“2个9”,99.999%被称为“5个9”。目前Google云计算服务公开的可用性指标是“3.5 个9”—— 99.95%可用。

目标

SLO是服务质量目标(Objective):服务的某个SLI的目标值,或者目标范围。SLO的 定义是SLI≤目标值,或者范围下限≤SLI≤范围上限

协议

SLA是服务质量协议(Agreement):指服务与用户之间的一个明确的,或者不明确的协议,描述了在达到或者没有达到SLO之后的后果。这些后果可以是财务方面的退款或者罚款,也可能是其他类型的。区别SLO和SLA的一个简单方法是问“如果 SLO没有达到时,有什么后果?”如果没有定义明确的后果,那么我们就肯定是在讨论 一个SLO,而不是SLA 。 

SRE通常不会参与SLA的书写,因为SLA是与业务产品的决策紧密相关的。但是, SRE确实会参与帮助避免触发SLA中的惩罚性条款。同时,SRE会参与制定具体的 SLI:很明显,提供一个客观的方式来度量SLO是很重要的,否则大家就会产生分歧。

在讨论SLA的大部分时候,实际上是在讨论SLO。如果某个人说道“违反SLA”,实际是指没有达到SLO,真实的“违反SLA”可能会触发一次违反合约的法律诉讼!

目标的选择

选择目标SLO不是一个纯粹的技术活动,因为这里还涉及产品和业务层面的决策,SLI和SLO(甚至SLA)的选择都应该直接反映该决策。同样的,有时候可能可以牺牲某些产品特性,以便满足人员、上线时间、硬件可用性,以及资金的限制。

1、保持简单

SLI中过于复杂的汇总模式可能会掩盖某种系统性能的变化,同时也更难以理解。

2、避免绝对值

3.SLO越少越好

应该仅仅选择足够的SLO来覆盖系统属性, 一定要确保每一个SLO都是必不可少的: 如果我们无法针对某个SLO达标问题说服开发团队,那么可能这个SLO就是不必要的。

4.不要追求完美

可以随着时间流逝了解系统行为之后优化SLO的定义。刚开始可以以一个松散 的目标开始,逐渐收紧。这比一开始制定一个困难的目标,在出现问题时放松要好得多。

如 果 S R E 团 队 无 法 说 服 研 发 团 队 接 受 任 何 一 个 S L O , 那 么 这 个 产 品 可 能 压 根 不需 要 S R E 团 队 的 支 持 。

控制手段

SLI和SLO在决策系统运维时也非常有用:

1. 监控并且度量系统的SLI。

2. 比较SLI和SLO,以决定是否需要执行操作。

3. 如果需要执行操作,则要决定究竟什么操作需要被执行,以便满足目标。

4. 执行这些操作。

琐事小结

如果我们都致力于每一周通过工程工作消除一点琐事,就可以持续性地整顿服务。我们 就可以将更多的力量投入到扩大服务规模的工程工作上去,或者是进行下一代的服务的 架构设计,又或者是建立一套跨SRE使用的工具链

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SRE-Google运维解密随记-2-服务目标质量 的相关文章

  • 做网络赚钱成功的诀窍

    作者 芊蓝小编 日期 2010年07月30日 来源 互联网 1 不要把网络看得多么深奥难懂 它只是你挣钱的一个工具而已 2 问10个人 不如你自己动脑和手真正解析一件事情 3 不要试图掌握网络上的每个知识 谁都不可能学得完 学会跟你工作最相
  • PDF 的各种操作,我用 Python 来实现(附网站和操作指导)

    导言 PDF 处理是日常工作中的常见需求 包括 PDF 合并 删除 提取等 更复杂的任务如 将 PDF 转换成 图像 下面通过几个简单的例子和一份代码 帮助大家解决上面的需求 操作非常简单 在文末我会提供一份源码和一个神奇的 PDF 处理网
  • Android Google maps的实现

    昨天和今天 都在搞Android平台下利用Google maps API实现Google maps 自己搞了一下 中间遇到不少问题 总结记录一下 1 要用Google maps的API 就要根据自己的MD5码在Google的官网上申请API
  • 谷歌技术"三宝"之BigTable

    谷歌技术 三宝 之BigTable 2006年的OSDI有 两篇google的论文 分别是BigTable和Chubby Chubby是一个分布式锁服务 基于Paxos算法 BigTable是一个用于管理结构化数据的分布式存储系统 构建在G
  • chrome启动参数设置

    chrome禁止本地浏览时加载本地其他文件 可以采用添加启动参数的方式来支持 添加参数为 allow file access from files 或者 disable web security Google Chrome 浏览器默认安装路
  • *** FATAL ERROR L232: APPLICATION CONTAINS TOO MANY RECURSIONS错误的解决方案

    最近一直在用KEIL写一个单片机的程序 遇到了一个很棘手的无法正常链接的问题 FATAL ERROR L232 APPLICATION CONTAINS TOO MANY RECURSIONS 在网上搜索了大量的文章 以及网页也没找到什么有
  • ARCore:ARCore开发的起步

    已经是第7章节了 终于可以开始正式接触到我们梦寐以求的ARCore了 相信大家应该都有一点点小激动了吧 那么下面我们就开始讲解如何进行ARCore的开发 一 Session简介 初看到Session 大家都摸不到头脑 最直接的解释 它是AR
  • Google亲儿子 Nexus/Pixel 手机刷机Root之旅

    简介 本文介绍的方法是针对Google亲儿子的教程 其他国内厂商请绕道 1 解锁 1 1 OEM解锁 想要做下面这些事 需要先在开发者选项里打开oem解锁 如果你的手机是V版 运营商定制版 请看这里 oem解锁选项灰色 1 2 进入boot
  • 大话西游灯谜答案

  • 整合google,51ditu和mapbar的地图API

    http blog 163 com goodluck lq 126 blog static 63285386201001994058213
  • Android控件之AutoCompleteTextView、MultiAutoCompleteTextView探究

    在Android中提供了两种智能输入框 它们是AutoCompleteTextView MultiAutoCompleteTextView 它们的功能大致一样 显示效果像Google搜索一样 当你在搜索框里输入一些字符时 至少两个字符 会自
  • 11款插件让你的Chrome成为全世界最好用的浏览器|Chrome插件推荐

    文章来源 知乎 收录于 风云社区 SCOEE 提供mac软件下载 更多专题 可关注小编 微学徒 查看我的文章 也可上 风云社区 SCOEE 查找和下载相关软件资源 一 综合类 新买苹果电脑 mac系统中小白应该了解哪些东西 Mac新手必看教
  • Python 绝对简明手册

    原文 简述 1 阅读须知 文中使用 gt gt gt 作为会命令行中的输出信息的前缀 对于不清楚用用途的函数可以在解释器下面输入 help 函数名 来获取相关信息 另外 自带的文档和google也是不可少的 2 基本语法 2 1 if el
  • word2vector学习笔记(一)

    word2vector学习笔记 一 最近研究了一下google的开源项目word2vector http code google com p word2vec 其实这玩意算是神经网络在文本挖掘的一项成功应用 本文是看了论文 Distribu
  • 各种虚拟机体验杂谈 --- 兼发布 google chrome os (chromiumos) vmware版本

    前两天赶时髦 把笔记本换上了win8 pro 换win8pro的原因 一个是价格真的很有诚意 另一个就是从DP版本开始就一直用 虽然兼容性问题多多 但作为宿主主机还行 而且xenclient也实在是让人窝火 号称裸机虚拟 其实硬盘速度慢如蜗
  • libspark,不懂日文怎么学……

    由于工作的需求 还有我未来的规划 决心研究 AR 这必然要研究 FLARToolKit 于是我找到了 libspark 接着我发现 这里面的东西太多了太强大了 而且是日本人的开源项目 所以里面很多源码注释都是日文的 于是我今天申请了goog
  • 以一个最简单的例子把OO的JavaScript说明白

    OO的JavaScript并不高深 麻烦就麻烦在google出来的国人介绍文章经常罗罗嗦嗦 而且之间的说法还各有不同 摆在一起就让人看了头大 这里重拾简单主义 以一个最简单的例子把OO Javascript说明白 1 一个颇为精简的例子 只
  • 众多Android 开源项目推荐,给力工作给力学习

    FBReaderJ FBReaderJ用于Android平台的电子书阅读器 它支持多种电子书籍格式包括 oeb ePub和fb2 此外还支持直接读取zip tar和gzip等压缩文档 项目地址 http www fbreader org F
  • 【历史上的今天】10 月 2 日:ENIAC 计算机退休;贝尔德发明电视;香港科技大学办学

    整理 王启隆 透过 历史上的今天 从过去看未来 从现在亦可以改变未来 今天是 2021 年 10 月 2 日 在历史上今天发生的科技关键事件不比昨天要少 举世闻名的通用电子计算机 ENIAC 便在今天退休 我国享誉世界的学府香港科技大学正式
  • 安装DirectXSDK时提示Error Code s1023

    向开发DirectX 3D游戏 就安装DirectX最新版 安装时遇到Error Code s1023 试了好多办法都不行 关掉所有程序还是不行 感谢伟大的Google在一个英文网站上提到如果安装了Microsoft Visual C 20

随机推荐

  • Qt第三方QCustomPlot的使用---kalrry

    Qt第三方QCustomPlot的使用 kalrry 一 参考博客End 例子 一 参考博客 QCustomPlot中图例的相关设置QCustomPlot使用手册QCustomPlot中图例的相关设置QCustomPlot更改图例legen
  • 【物联网树莓派毕设01】树莓派4B快速实现VNC连接

    一 前言 最近准备开始做毕设了 xff0c 想着找个地方记录一下遇到的问题 xff0c 怎么解决的 xff0c 希望能够给有需要的人一些帮助 xff0c 有什么问题还请指正 这次毕设选题是基于物联网技术的酒店管理系统 xff0c 其实是基于
  • 不忘初心牢记使命文化励志标语墙贴——个性一百剪纸

    不忘初心牢记使命手工剪纸 个性一百定制服务中心 xff0c 可快速定制各类家居家具用品 工艺礼品 图案造型 xff0c 提供从构思到设计到制作一条龙服务 xff0c 您敢想我们敢做 不忘初心牢记使命绘画贴纸 我们不局限于某种商品 xff0c
  • 动态建模——UML活动图

    1 活动图 xff1a 展示了动作或活动的执行步骤及结果 2 作用 xff1a xff08 1 xff09 描述在用例描述时 xff0c 用例的实例是如何让执行动作 xff0c 改变对象状态的 xff08 2 xff09 可以清晰的展示出活
  • 华为交换机常用命令(一)

    历史命名查询 display history command 配置主机名 sys sysname xxx 状态信息查询 display version display users 进入接口模式并查看信息 int g0 0 1 dis thi
  • NoSQL之 Redis配置与优化

    NoSQL之 Redis配置与优化 关系数据库与非关系型数据库关系型数据库和非关系型数据库区别 Redis简介Redis 安装部署Redis 命令工具Redis 数据库常用命令 Redis 高可用Redis 持久化RDB 持久化AOF 持久
  • MQ-2烟雾浓度传感器(STM32F103)

    本实验是通过串口调试助手显示STM32F103C8T6采集到MQ 2传感器的电压值 一 概述 1 简介 MQ 2可用于家庭和工厂的气体泄漏监装置 xff0c 适宜于液化气 丁烷 丙烷 甲烷 酒精 烟雾等的探测 它的优点是灵敏度高 响应快 稳
  • Java-异常

    什么是异常 xff1f 异常是指程序运行时 xff0c 导致正常流程被中断的事件 异常分类 可查异常 xff1a CheckedException xff08 要么try catch住 要么往外抛 xff0c 谁调用 xff0c 谁处理 如
  • 51单片机学习篇-- --蜂鸣器的使用

    开篇先说一句废话 本旺名字叫萨摩耶 xff0c xff0c Please 叫我旺财 xff0c xff0c xff0c 哈哈 xff0c 招财进宝嘛 xff01 蜂鸣器是个啥 蜂鸣器一般分为两种 xff0c 一种是无源蜂鸣器 xff0c 一
  • 51单片机学习篇-- --基于51单片机的串口通信协议

    开篇先说一句废话 本旺名字叫萨摩耶 xff0c xff0c Please 叫我旺财 xff0c xff0c xff0c 哈哈 xff0c 招财进宝嘛 xff01 开篇 计算机按照下行数据通信协议 xff0c 串口发送数据 xff0c 地址为
  • 卸载rancher出现的问题

    卸载rancher出现如下报错 error unable to retrieve the complete list of server APIs custom metrics k8s io v1beta1 the server is cu
  • docker审计日志过大导致磁盘IO

    问题 xff1a 节点发生磁盘io 节点审计日志量较大 xff0c 由于操作系统内核缺陷 xff0c 会低概率出现io卡主 影响版本 xff1a v1 15 11 v 1 17 9 查看节点是否有问题 1 登录节点 2 如果有类似下图的回显
  • linux 环境命令随记

    sh steve bourne bash bourne again shell gpl centos和ubuntu 默认使用 csh c shell C语言风格 tcsh ksh xff1a korb shell aix默认shell zs
  • sed命令的使用

    sed命令 格式 sed 选项 脚本命令 文件名 选项 n 使用安静silent模式 在一般sed的用法中 xff0c 所有来自stdin的内容一般都会被列出到屏幕上 但如果加上 n参数后 xff0c 则只有经过sed特殊处理的那一行 或者
  • docker安装和info信息

    docker 容器的历史 xff1a 1 Chroot Jail 就是我们常见的 chroot 命令的用法 它在 1979 年的时候就出现了 xff0c 被认为是最早的容器化技术之一 它可以把一个进程的文件系统隔离起来 2 The Free
  • docker镜像管理

    docker镜像管理 镜像结构和原理 镜像就是创建容器的模版 xff0c 含有容器启动所需要的文件系统及所需要的内容 xff0c 因此镜像主要用于方便和快速创建启动容器 镜像结构 xff1a 一个典型的 Linux文件系统由 bootfs
  • 容器操作基础命令随记

    容器操作基础命令 命令周期 一次性启动容器docker run 一次性运行容器 xff0c 退出后立即删除 xff0c 用于测试 root 64 localhost docker run rm alpine cat etc issue We
  • SRE-Google运维解密随记-1

    雇佣系统管理员 sysadmin 运维复杂的计算机系统 xff0c 是行业内一直以来的普遍做法 这些系统管理员负责将现成的软件组件部署于生产环境中 xff0c 对外提供某种业务服务 系统管理员的主要工作在于应对系统中产生的各种需要人工干预的
  • SpringCloud-Netflix并没有闭源、Eureka1.X也没有闭源

    网上流行的说法 xff1a Netflix的Eureka 闭源了 xff08 不实 xff09 引起一些人的焦虑 恐慌 xff0c SpringCloud Netflix是不是就不能用了 xff0c 没人维护了 真相 xff1a 1 Spr
  • SRE-Google运维解密随记-2-服务目标质量

    服务质量指标 SLI 服务质量目标 SLO 服务质量协议 SLA 这三项分别是指该服务最重要的一些基础指标 这些指标的预期值 xff0c 以及当指标不符合预期时的应对计划 事先选择好合适的指标有助于在故障发生时帮助SRE进行更好地决策 xf