如何评估IT领域中的可观测性技术?

简介: 在IT领域中,简单而言,可观测性就是为复杂IT系统寻求白盒监控能力。随着业务系统不断上云,容器、微服务、持续发布等云原生技术被广泛采用,从而为IT系统的可控性带来了全新挑战。为保障云原生应用的稳定性(控制的目的就是稳定),可观测技术被越来越多的企业所采用。可观测技术的本质,是通过系统的外部数据,分析系统的内部状态,从而做出控制指令。

IT领域的可观测性,源自自动控制领域。

控制领域中,研究可观测性的目的是提供基于系统内部状态(白盒),而非系统外部输出(黑盒)进行控制的理论依据。

在IT领域中,简单而言,可观测性就是为复杂IT系统寻求白盒监控能力。

随着业务系统不断上云,容器、微服务、持续发布等云原生技术被广泛采用,从而为IT系统的可控性带来了全新挑战。为保障云原生应用的稳定性(控制的目的就是稳定),可观测技术被越来越多的企业所采用。

可观测技术的本质,是通过系统的外部数据,分析系统的内部状态,从而做出控制指令。针对于IT系统,尤其是面相云原生应用,可观测技术应包含如下需求:

1)零侵扰:传统APM/NPM等工具,要么需要应用程序中打桩插码,要么需要基础设施中分光镜像,均会对IT系统进行侵扰。可观测技术使用外部数据做分析,因此采用零侵扰的方式获取监控数据,无需打桩插码、分光镜像,而是通过开放系统架构直接获取监控数据。零侵扰的另一方面是要求低功耗,不能因为采集数据而影响应用或基础设施性能,通常采集点功耗不能超过业务功耗的1%。

2)多维度:要保障云原生应用稳定运行,可观测技术必须包含多维度数据分析能力。具体来说,要将应用的API、容器、主机、网络等监控数据进行全栈关联分析。传统的APM工具,可以定位代码层问题,却无法追踪容器或主机网络服务引起的故障。而传统的NPM工具,又不能关联应用的TraceID从而追踪穿越NAT、LB等网元的流量。因此,多维度的全栈数据分析,是可观测平台的第二个需求。

3)实时性:自动控制中,过大的传感器反馈时延,会导致系统震荡而不可控。与之类似,云原生应用的动态性要求可观测平台必须具备实时性。如果应用的升级/扩容在分钟级完成,那么监控系统就必须提供秒级的反馈能力。注意,这里的反馈需要对海量指标/追踪/日志数据进行查找分析,因此对可观测平台的海量数据实时处理能力提出了极高要求。

那么,如何简单评一个可观测平台在上述三点需求中有效性呢?这里提供三个简单判据,供诸位参考:

1)零侵扰判据:是否无需应用休改代码、重启,是否无需网络分光镜像,是否消耗不超过云主机1%的CPU;

2)多维度判据:是否同时提供应用层数据、网络层数据,基础设施层数据的全景视图(Single Pane of Glass);

3)实时性判据:是否提供对PB及指标、追踪、日志数据的秒级检索。

除此之外,可观测平台的技术架构,也是评判其先进性的重要方面。领先的可观测平台,包括云杉网络DeepFlow、Datadog、阿里云ARMS等,均采用了基于eBPF的数据采集技术以及基于OLAP的实时数仓技术

相关文章
|
Linux
在Linux中使用rsync进行备份时如何排除文件和目录?
在Linux中使用rsync进行备份时如何排除文件和目录?
876 1
在Linux中使用rsync进行备份时如何排除文件和目录?
|
Java Spring 数据格式
使用Feign实现Form表单提交
原文:http://www.itmuch.com/spring-cloud-sum/feign-form-params/ 之前,笔者写了《使用Spring Cloud Feign上传文件》。
4643 0
|
存储 分布式计算 资源调度
Hadoop入门基础(三):如何巧妙划分Hadoop集群,全面提升数据处理性能?
Hadoop入门基础(三):如何巧妙划分Hadoop集群,全面提升数据处理性能?
|
监控 Java
JavaGuide知识点整理——线程池的最佳实践
总之,合理使用和配置线程池是提高 Java 程序性能和稳定性的重要手段。遵循最佳实践,可以更好地发挥线程池的作用,提升系统的运行效率。同时,要不断地进行监控和优化,以适应不同的业务需求和环境变化。
612 63
|
监控 Java API
深入解析 Spring Cloud Sentinel:分布式系统流量控制与熔断降级的全面指南
深入解析 Spring Cloud Sentinel:分布式系统流量控制与熔断降级的全面指南
575 0
深入解析 Spring Cloud Sentinel:分布式系统流量控制与熔断降级的全面指南
|
安全
什么是医院安全不良事件管理系统?
医院安全不良事件管理系统可快速上报医疗差错、护理事故等不良事件,实现事件的分类、分析、处理及反馈,并推动持续改进。系统优势包括高效上报(2-3分钟完成)、即时反馈、集中管理、详尽统计分析以及支持自定义配置和审核流程。同时,借助RCA分析工具和闭环管理模式,系统助力医疗机构建立非惩罚性安全文化,减少不良事件重复发生,全面提升医疗服务质量。
340 0
|
前端开发 安全 Swift
【教程】React Native 应用中的代码混淆与安全性管理
【教程】React Native 应用中的代码混淆与安全性管理
366 0
|
Kubernetes 网络协议 容器
k8s搭建集群报错汇总—202302【更新】
k8s搭建集群报错汇总—202302【更新】
406 0
|
安全 Java 编译器
单例模式的4种实现方式
单例模式的4种实现方式
374 0
|
运维 Java Shell
Docker(四) 通过DockerFile自定义镜像
Docker(四) 通过DockerFile自定义镜像
438 0