有方法论提导,在技战术方面才不会偏离目录。

使用服务级别作为关键语,召示着承诺和责任。

https://www.circonus.com/2018/06/comprehensive-container-based-service-monitoring-with-kubernetes-and-istio/

==================================

服务级别目标

这个服务级别目标的简要概述将为我们如何衡量我们的服务健康状况奠定基础。服务级别协议(SLA)的概念已经存在了至少十年。但就在最近,与服务级别目标(SLO)和服务级别指标(SLI)相关的在线内容数量迅速增加。

除了著名的 Google SRE书以外,两本关于 SLO 的新书即将发布。“站点可靠性工作手册”有关于 SLO 的专门章节,Seeking SRE 有关于由 Circonus 创始人兼首席执行官 Theo Schlossnagle 定义 SLO 目标的章节。我们还建议观看Seth Vargo 和 Liz Fong Jones 的 YouTube 视频 “SLI,SLO,SLA,哦,我的!”,以深入了解 SLI,SLO 和 SLA 之间的差异。

总结一下:SLI 驱动 SLO,通知 SLA。

服务级别指标(SLI)是衡量服务健康状况的指标。例如,我可以有一个 SLI,它表示在过去 5 分钟内,我的第95 个百分点的主页请求延迟应小于 300 毫秒。

服务级别目标(SLO)是 SLI 的目标或指标。我们采用 SLI,并扩展其范围以量化我们期望我们的服务在战略时间间隔内执行的情况。使用前面例子中的 SLI,我们可以说,我们希望满足 SLI 为后续年份窗口的 99.9% 设置的标准。

服务级别协议(SLA)是企业与客户之间的协议,定义了未能满足 SLO 的后果。一般来说,您的 SLA 所依据的SLO 将比您的内部 SLO 更宽松,因为我们希望我们的内部面向的目标比我们的外部目标更为严格。

RED 仪表板

SLI 的哪些组合最适合量化主机和服务健康?在过去几年中,出现了一些新兴的标准。最高标准是 USE 方法,RED方法和 Google SRE 手册中讨论的“四个金色信号”。

Brendan Gregg 介绍了USE 方法,该方法旨在根据利用率,饱和度和错误指标量化系统主机的健康状况。对于像CPU 这样的产品,我们可以为用户,系统和闲置百分比使用常见的利用率指标。我们可以使用平均负载量和运行队列进行饱和度的判定。UNIX perf 分析器是测量 CPU 错误事件的好工具。

Tom Wilkie 几年前介绍了 RED方法。用 RED。我们监控请求率,请求错误和请求持续时间。Google SRE 手册讨论了如何使用延迟,流量,错误和饱和度指标。这些“ 四个金色信号 ”以服务健康为目标,与 RED 方法类似,但他添加了饱和度指标。在实践中,可能难以量化服务饱和度。

那么,我们如何监控容器?容器是短期实体。直接监视它们以辨别我们的服务健康状况会出现许多复杂的问题,例如高基数问题。综合监控这些容器的服务输出会更容易和更有效。如果服务是健康的,我们不在乎一个容器是异常。有可能我们的编排框架无论如何都会收获这个容器,并用新的框架取而代之。

让我们考虑如何最好地将 Istio 的 SLI 作为 RED 仪表板的一部分进行集成。为了组成我们的 RED 仪表板,我们来看看 Istio 提供的遥测记录:

  • 请求按响应代码计数
  • 请求时长
  • 请求大小
  • 响应大小
  • 连接收到的字节
  • 连接发送字节
  • 连接时间
  • 基于模板的元数据(度量标签)

Istio 提供了有关它收到的请求,产生响应的延迟和连接级别数据的几个指标。请注意上面列表中的前两项; 我们希望将它们包含在我们的 RED 仪表板中。

Istio 还赋予我们添加度量标签的能力,这就是所谓的尺寸。因此,我们可以通过主机,集群等来分解遥测 。我们可以通过获取请求计数的一阶导数来获得每秒请求的速率。我们可以通过请求不成功的请求计数的派生来获得错误率。Istio 还向我们提供每个请求的请求延迟,因此我们可以记录每个服务请求完成的时间。

IT设备服务监控的方法论的更多相关文章

  1. php特级课---4、网站服务监控

    php特级课---4.网站服务监控 一.总结 一句话总结:这些是架构师的知识 网络流量监控:cacti,mrtg 邮件报警系统:postfix 压力测试工具:Apache压力测试软件-ab,Mysql ...

  2. 直播技术:从性能参数到业务大数据,浅谈直播CDN服务监控

    线上服务的有效监控和数据收集,一直是后端服务离不开的话题.直播作为一种经典的分布式系统,监控以及数据收集更是必不可少的工作.如何对海量的服务集群有效的监控和保活,又如何抓取集群中的碎片数据中来优化服务 ...

  3. Java实现Android,iOS设备实时监控

    Java实现Android设备实时监控 设计思路: 第一,启动一个实时截图线程,负责实时截取Android设备屏幕,保存到本地路径. 第二,在JSP页面,定义一个img对象,实时更换img对象的src ...

  4. 运维架构服务监控Open-Falcon

    一. 介绍 监控系统是整个运维环节,乃至整个产品生命周期中最重要的一环,事前及时预警发现故障,事后提供翔实的数据用于追查定位问题.监控系统作为一个成熟的运维产品,业界有很多开源的实现可供选择.当公司刚 ...

  5. wamp 服务监控和启动

    近日我的 wamp 莫名其妙的崩溃重启,apache 能自动起来, mysql 却悲剧了. 于是有了下面的wamp服务监控和启动的批处理文件 @echo off rem define loop tim ...

  6. SpringCloud系列七:Hystrix 熔断机制(Hystrix基本配置、服务降级、HystrixDashboard服务监控、Turbine聚合监控)

    1.概念:Hystrix 熔断机制 2.具体内容 所谓的熔断机制和日常生活中见到电路保险丝是非常相似的,当出现了问题之后,保险丝会自动烧断,以保护我们的电器, 那么如果换到了程序之中呢? 当现在服务的 ...

  7. 如何做自己的服务监控?spring boot 2.x服务监控揭秘

    Actuator是spring boot项目中非常强大一个功能,有助于对应用程序进行监视和管理,通过 restful api请求来监管.审计.收集应用的运行情况,针对微服务而言它是必不可少的一个环节. ...

  8. 如何做自己的服务监控?spring boot 1.x服务监控揭秘

    1.准备 下载可运行程序:http://www.mkyong.com/spring-boot/spring-boot-hello-world-example-jsp/ 2.添加服务监控依赖 <d ...

  9. 微服务监控zipkin+asp.net core

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 监控目录:微服务监控zipkin.skywalking以及日志ELK监控系列 一.zipkin介绍 zipkin是一种分布式跟踪系 ...

随机推荐

  1. R-FCN论文讲解(转载链接)

    总结一下一下R-FCN的思想:由于分类网络具有位置的“不敏感性”和检测网络具有“位置的敏感性”这两者之间的矛盾, 而ResNet论文中为了解决这个问题,做出了一点让步,即将RoI Pooling层不再 ...

  2. eMMC基础技术3:eMMC总线token

    1.前言 本文主要介绍eMMC 总线协议相关的内容,主要包括: (1)command token format (2)response token format (3)data packet form ...

  3. 【转】Java并发编程:Thread类的使用

    一.线程的状态 在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于对Thread类中的方法的理解. 线程从创建到最终的消亡,要经历若干个状态.一般来说,线程包括以 ...

  4. Linux基础知识之bashrc和profile的用途和区别

    使用终端ssh登录Linux操作系统的控制台后,会出现一个提示符号(例如:#或~),在这个提示符号之后可以输入命令,Linux根据输入的命令会做回应,这一连串的动作是由一个所谓的Shell来做处理. ...

  5. Linux下的进程结构

    Linux系统是一个多进程的系统,它的进程之间具有并行性.互不干扰等特点.也就是说,每个进程都是一个独立的运行单位,拥有各自的权利和责任.其中,各个进程都运行在独立的虚拟地址空间.因此,即使一个进程发 ...

  6. python结合pyvmomi 监控esxi的磁盘等信息

    1.安装python3.6.6 # 安装依赖,一定要安装,否则后面可能无法安装一些python插件 yum -y install zlib-devel bzip2-devel openssl-deve ...

  7. 【原创】大叔经验分享(37)CM清理磁盘空间

    定期清理cloudera manager server的磁盘空间 1 停止Service Monitor和Host Monitor 2 删除日志 # /bin/rm /var/lib/cloudera ...

  8. class, extends和super es6语法

    摘自https://www.cnblogs.com/queende7/p/8668497.html,谢谢博主的分享!

  9. [HTTP]HTTP 中的 Transfer-Encoding 报文头

    一.背景: 持续连接的问题:对于非持续连接,浏览器可以通过连接是否关闭来界定请求或响应实体的边界:而对于持续连接,这种方法显然不奏效.有时,尽管我已经发送完所有数据,但浏览器并不知道这一点,它无法得知 ...

  10. springboot第一个项目【mybatis】

    1.resources下添加spring 添加spring-context.xml,设置controller的路径,以及引入数据库配置 <beans xmlns="http://www ...