一、概念
1. 什么是监控?
监控采用黑盒化的方法,通过数据采集、检测、告警、展示等环节,以发现、解决和预防问题,最终达到维持业务稳定的目标。
如想了解Linux系统的负载状态,则可以使用top和sar工具。
2. 什么是可观测性?
可观测性采用白盒化的思路,采集分析指标(Metrics)、链路(Tracing)和日志(Logging)等数据,来监测系统内部的运行情况。
具体来说,这三类数据表达的含义,指标可以指出是否存在问题,并给出告警信息。链路指出问题出现在调用链路上哪个节点。而日志记录了该节点的详细信息。
所以,可观测性的核心价值在于快速排障(troubleshooting)。
2018 年,CNCF 将可观测性引入IT领域。被 Gartner 认定为“2023 年十大战略技术趋势”。
3. 监控与可观测性的关系
可观测性包含日志事件、分布式链路追踪和指标监控。所以,“监控”是“可观测性”能力的一部分。
监控能够发现问题,并给出告警信息。而可观测性可“更一进步”指出哪里出问题了。如某项服务访问速度慢,则可观测出调用链路上的节点关系与耗时。同时,也可以使用智能算法进行聚类分析,得出问题的根因。
二、可观测技术演进历程
单体应用架构中,监控技术采用Metrics(指标)和Logs(日志)。
SOA架构和微服务架构中,调用关系相对复杂,监控技术还需要进行链路追踪(Traces)技术。以应用性能管理软件APM的形式存在。
云原生系统的部署采用混合云架构,公有云中系统又有可能使用容器、Kubernetes部署。同时,不同的子系统有可能采用不同的开发语言。
可观测需要实现:全栈立体化统一监控与告警、前后端/多语言全链路追踪和跨云数据统一可视化。
参考资料
云原生可观测技术图谱:https://developer.aliyun.com/graph/observability?spm=a2c4g.11186623.0.0.2c675ee29eLyfe
https://hulining.gitbook.io/prometheus/introduction/overview
https://hulining.gitbook.io/prometheus/guides/cadvisor
原文始发于微信公众号(码农与软件时代):公有云:监控与可观测性
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/175976.html