13|可观测性(一):如何监控一个复杂的分布式系统?
陈现麟
该思维导图由 AI 生成,仅供参考
你好,我是陈现麟。
通过学习“雪崩”系列的内容,我们掌握了构建一个稳定的分布式系统所需的四大方法:熔断、限流、降级和扩容,再也不用担心由于一个局部的小问题,导致整个系统出现重大的故障了。
在“雪崩”系列课程中,我们曾经提到需要基于系统内部的运行状态,来进行相应的降级和扩容操作,特别是在扩容机制中,需要通过服务过载的信息来进行相应的扩容,可是我们应该如何来获得系统内部的运行状态呢?
其实这就是分布式系统中的可观测性问题,那么从这节课开始,我们将用 2 节课的时间来讨论,如何通过分布式系统的可观测性,来解决系统监控与告警的问题。在这一节课中,我们先讨论需要监控的原因,然后分析监控与可观测性之间的关系,接着介绍搭建一个可观测性系统涉及的开源组件,最后,重点讨论对于一个大规模的分布式系统,设计监控系统应该遵循的经验和原则。
为什么需要监控
如果一辆汽车没有仪表盘,我们就不知道汽车当前的速度,只能凭着感觉开,很容易出现超速甚至意外,另外由于不知道当前还有多少汽油或者电量,一不小心就会因为能源耗尽抛锚在路上。监控之于分布式系统,更甚于仪表盘之于汽车,因为分布式系统的内部更加复杂,更容易出现意外的情况。那么对于“为什么需要监控”的这个问题,我们就从监控有哪些作用的角度来回答。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文深入探讨了分布式系统监控与可观测性的重要性及其关系。首先从监控的必要性出发,比喻了没有监控就像开车没有仪表盘一样危险。监控的作用包括规则设置、构建监控大盘、长期趋势分析、实时变更追踪和故障定位。随后,文章介绍了监控与可观测性的关系,指出可观测性是监控的扩展和进化,强调了可观测性的主动发现能力和对系统内部状态的关注。文章还从五个层级划分了可观测性能力,并阐述了排错、剖析和依赖分析的重要性。此外,文章还介绍了可观测性系统的开源组件,包括日志、链路和指标的采集、计算和展示,以及监控系统的设计经验,包括分层设计、精简内容和选择合适的度量方法和采样频率。总的来说,本文全面介绍了监控与可观测性的重要性和关系,为读者提供了对分布式系统监控与可观测性的全面认识。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《深入浅出分布式技术原理》,新⼈⾸单¥59
《深入浅出分布式技术原理》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(6)
- 最新
- 精选
- 不吃辣👾5层级为什么是呈现三角形呢?
作者回复: 数据量从下到上是越来越少的。
2022-03-302 - 不吃辣👾感觉overview就是各类大屏
作者回复: 是的!
2022-03-301 - peter请教老师三个问题: Q1:确认一下对SpringCloud微服务系统的可观测性理解 一个采用SpringBoot/SpringCloud开发的微服务系统,根据文章内容,对其可观测性理解如下: A 目前没有一个组件(或框架)能够提供完整的“logs”、“trace”、“Metrics”功能。 B 完整的可观测性需要通过三个不同的外部组件来完成:(1) SpringBoot集成ELK来完成“logs”功能;(2)SpringBoot集成jaeger(或sleuth+zipkin)来完成“trace”功能;(3)SpringBoot集成Prometheus+grafana来完成“metrics”功能。 C 可以根据情况在这三个部分之上做一次综合处理,提供统一信息。 我的理解是否对? Q2:整个微服务系统的饱和度怎么确定? 在饱和度方面,文中以Redis为例进行讲解,从其多个指标中选取一个关键指标来定义饱和度。但是,微服务系统包括很多组件,比如Nginx、Redis、rocketMQ、网关、微服务所在机器等等。那么,对于整个微服务系统,该怎么定义其饱和度?选取其中的一个关键组件吗? Q3:对于“trace”,jaeger和sleuth哪个更好?2022-02-252
- hanjc链路追踪的话 Jaeger和skywalking哪个好呢?2022-12-23归属地:广东
- 张申傲关于 Google 的 Four Golden Singles 可以参考:https://sre.google/sre-book/monitoring-distributed-systems/2022-08-17归属地:北京
- 花花大脸猫最大的痛点就是每段数据都在不同的系统里面,比如链路调用延时统计,系统资源相关的在pinpoint里面,但是业务出现问题,定位原因又需要去具体的pod或者日志中心去查看对应日期的日志信息,如果出现了链路调用的问题,得挨个服务查看,缺少老师说的cncf给定的大一统的方案!!2022-06-16
收起评论