《监控和可观测性的异同究竟是什么.docx》由会员分享,可在线阅读,更多相关《监控和可观测性的异同究竟是什么.docx(3页珍藏版)》请在优知文库上搜索。
1、近期交流很多人都在讲可观测性,所以就何r个间世:监控和可观窝性的异同是什么?这个问SS也让不少人借圈。监控和可观测性一样吗?似乎也不样?区别是什么?往往又说不清楚,从词义上理解,监控是一种使用额外的手段和措旅采集、展示和跟踪被监控对象的运行状态、指标、历史状况等方法:可观测性则是一种可观测对象从内向外主动暴露其运行状态、指标和数据等的方法.可以说,Emil性的知UUI和方式是不一样,影响也是不一样的.监控和可观测性的思路和方法区分监控和可观测性的城基本方式就是看其实现思路和方法。很多人也提出了很多区别,比如说监捽是面向基础设施、面向运维、面向故障告警等的被动系统,而把可观测性当作是一个更大的远
2、远超越了传统监控所爱覆筱的范围的、一种新的采集和分析数据、以及利用数据进行收件研发协同的能力的主动系统,这都没有触及核心,虽说对监控和可观测性区别有了一定的认识,但没有从本质上区分监控和可观测性。监控往往是通过外部强制的手段来获取对象的运行状态、指标数据等.一个对象(可能是系统、平行、基础设施、中间件工具等)具备可观测性,一定不需要从外通过工具来采集数据,一个对象的可观测能力,体现了这个对象对外暴露信息的程度。监控和可观测性一个是去采集回来,类似于request-response方法,一个主动发布,有需要都可以接收并用来展示、跟踪、分析、计算等,类似于PUblish-SUbscribe方法.所
3、以监控和可观测性的实现思路和方式是有区别的,并不是简单的是新瓶阳酒.从外部采集监控数据,往往是局部的、表面的,因为对个监控对象来说,外都是很难对监控对象内部的结构有深入的认识,所以监控不能很好的解决体系化、笈杂系统的运行状况跟踪、分析问题,遇到异常问题时也比较难进行定位和解决。所以随着分布式系统的发展要求,监控的思路有了变化.我曾在f基于系统融合的统一监控平台设计也提出过由内向外发布系统的运行状态、运行指标、R志等的思路,可以说可观测性的提出是分布式笑条系统融合过程中的可见、可跟踪、被捷定位分析等的要求。对于展示、跟踪、分析、告警等系统来说,数据获取方式的不同,也会带来数据和影响的差别。用传统
4、监控采生方式,类似于定向Request-Response,采集什么样的数据完全是采集方决定的(但也可般采集不到,可能存在重包采集、抢夺黄海、影响监控对象运行的状况。而可观测方式,数据是被观测对象主动发布publish,由任何需要这些数据的接收潮(也可能是监控终环5)通过subscribe方式获取,收%而不是采,不会影峋到监控/观测对象的运行.不过获取的数据取决于可观测对象对外暴露的数据徙力.所以观测对象的可观测性是需要对您自身来实现的,体现J该对象的可观测性程度。可观测性面向整个体系单一一个应用或系统的可观测能力可能是不够的,特别在复杂的分布式集成体系或融合系统中,依然需要分层、分段、分角色权
5、限来实现数据的收集、关联、分析、计算、展示、下钻等能力.以前监控往往关注的是单体系统或者单一系统的状况,而可观测性通常需要实现自上到下、从左到右、从前到后整个体系全方位很多人把研发效能指标等都纳入可观测性.我觉得都没问三5.应用的可观测能力是需要在应用设计开发阶段考虑并实现.不过这跟研发效能指标是两回事.研发效能指标需要研发体系的支撞,应用的可观测性需要运维体系的支撞,这就覆盖率整个DevOps研发运维生命周期过程.可观测性关注的是应用本身,当然支撑应用的整个体系都需要具备可观测性。这样应用出现异常时才能快速知道是应用本身的问题,还是支撑应用的基础设施的问题.很多鼓吹DevOps已死的人就在于
6、把DevOps过程和DevOps支撑体系割裂开来看待.DevOps落地不顺利在于其支撑体系不完善,需要先建设基础的支撑平台(也就很多人鼓吹的平台工程),而可观测性就是这整个体系中指标、日志、链路等的可见、可分析、可跟踪、可响应等能力的集合.可观测性能力需要实现分析、计算、跟踪、响应等能力,但它并不是一个数据分析平台,它以重要的是运行时可见,包括运行状态、运行指标、运行日志、执行链路、运行趋势、膨响分析等.可观测性从业务运营视角关注的是业务运行的相关数据:从应用运维视角,关注的是系统运行数拉;:从研发视角,渐要同时关注运营和运维数据,确保业务应用在业务上和技术上的实现都是正确的。而这些数据的评估
7、和校脸则高要研发、运维整体的支撑,包括DevOps生命周期过程和支掠DevOps的平台工程体系,监捽和可观测性都是一个动态的过程,都需要体验良好的图形界面的展示和交互,所以在终端展示上可观测性和传统监控并没有太大区别,通过角色权限控制,也可以区分或限制用户的可见范围(这是一个碓点,特别在云上部署.跖多层系统调度调用,所以很多人也不提这点).研发人员也可通过终端解自己参与研发的系统的运行情况,这些数据也是研发效能的指标之一,协助研发人员完善应用功能、性能、可观测性能力等,养成良好的研发习惯,持续提升自己的研发能力.监控和可观测能力并行监控和可观测性的本质区别在于数据采集或收集的方式,也就是数据获
8、取的方式和思想不同了.至于说监控和可观测性的边界和范围,其实并不绝对.也不是说监控就一定面对资源、面向告警的,监控同样可以面向应用,以应用为中心实现监控体系.可观测能力的建设面临着庞大存盘系统的压力.数据用采笑或者收集还好处理些,存量系统的改造是个难题,很多新兴互联网公司具备后发新技术新理论优势,所以他们在建设可观测能力时相对更容易.也因此,对于很多老公司来说,适合采用新系统新方法,老系统老办法.对于新建系统,可在规划实施之前就考虑好可观测性能力,而对于需要集成的老系统,通常还是需要通过agent、探针等方法来采集相关数据,所以在相当长一段时间内,可能监控和可观测能力并行,但这并不方案企业级监控系统或可观测体系的构建,最终还是要实现企业内系统之间关系的实时动态可见、可关联、可分析、可响应等。可观测性并不是非要田新构建一专可观测系统,或者取代监控系统,而是在系统建设过程中调整监控或可观测数据的交取方式,融合相关的应用、应用支撑平台、基础设施等实现运行时可见、可控、可分析、可响应、可评价等能力,可以是从局部到整体建设的一个过程。