基于可观测性建设面临的主要挑战,以及云观测工具在观测粒度、观测广度与观测成本等方面的选择考量,天旦提出了以BPC产品为基础的、业务可观测的落地之道。
以业务为中心
鉴于观测指标与观测意图的差异,观测类产品一般被分为两类。一类被称作“自下而上”式:通过监控各种不同来源的数据,从中发现一系列离散的事件信息,然后基于已知的算法规则,生成一定的知识见解,最后基于这些知识见解推断出可能的故障洞察。由于底层数据量大、信噪比高,不易排查定位业务影响,因此“自下而上”式的告警既耗时又不够精准。
另一类则被称作“自上而下”式:最上层是我们的业务,我们期望通过服务状态板能直观呈现业务是否正常,一旦业务出现异常;我们进入到第二层,通过摘要出来的第二层特征知识,比如数据库状态、外围系统状态等判断异常的大致方向;基于这些大致方向,我们进入到第三层去跟踪不同的指标信息,包括各类统计指标、链路指标,收敛我们的问题域;最后基于这些数据特征定位到具体配置、代码的问题。“自上而下”式的观测理念可以在系统或服务发生故障的瞬间快速告警,确定业务影响范围,在以业务为中心的运维体系架构中显得尤为重要。
知识层级图
日常运维过程中,我们大多数时间在第一、二层工作,一旦业务出现问题,首先通过多维分析,快速定位故障方向;然后通过切流、重启等第一时间恢复业务;最后才会从各种蛛丝马迹中定位根本原因,避免下次故障发生。
业务是运维人员和业务运营人员都能听懂的共同语言,天旦BPC正是基于这种自上向下的理念进行设计,以业务服务为中心,通过端到端的监控覆盖,拥有从宏观到微观的洞察能力,打通运维与运营的屏障,统一监控与业务视角,打通运维与运营的屏障。
可观测三角的最优解
云原生时代可观测面临三大挑战:环境多样(云上、云下并存)、动态变化(资源销毁、弹性扩缩)、规模巨大(微服务拆分)。随着组织的可观测性建设不断推进,我们又面临着新的挑战,如何选择观测工具、观测信号,非常考验组织的判断力。有没有一种观测信号和观测工具,能达到可观测三角的平衡,完美兼顾Logs的详细和Metric的精简?
经过多年的实践验证,互联数据是这一命题的最优解。我们通过旁路方式采集系统的网络交互流量,经过天旦BPC流数据引擎处理,最终获得的结构化数据即为互联数据(wiredata)。互联数据是真实的业务调用,既可以全真还原业务,又没有任何多余的信息,真正体现了互联数据不采样、全过程、高实时的特点,同时我们将所有业务调用按照不同时间颗粒度聚合生成Metric信号,既能做到全量单笔交易的追踪,又能提供不同时间颗粒度的Metric聚合,兼顾了Logs和Metric优点。因此天旦BPC在观测粒度选择上,达到均衡。
在观测广度上,只要有对外交互的各类软硬组件,天旦BPC均支持监控,我们认为一个系统最重要的功能是对外提供服务,系统内部的问题一定会反应在对外交互上,因此旁路网络流量是足够的、恰当的。网络流量是客观的且没有人为干预的数据源,不需要任何业务的改造适配,能够快速落地实施,也因此天旦BPC在观测广度上,恰到好处。
最后是观测成本,天旦另辟蹊径选择的互联数据方案,天然具有性能高、资源利用少的特点,我们对部分客户做过测算,在同等覆盖条件下,Logs工具是BPC工具硬件消耗的5-10倍,BPC工具是Metric工具硬件消耗的的3-5倍。而在券商等对性能极致追求的场景下,不论是Logs、APM、eBPF均无法满足资源消耗要求,BPC由于旁路特点,用最少的资源消耗,实现了极致场景下的业务可观测。BPC产品经过多年使用打磨,产品稳定可靠,易用性高,维护成本低。因此天旦BPC在观测成本上,综合成本有显著优势。
天旦BPC云原生可观测价值分享
从宏观到微观的洞察
统一运维与业务视角:从业务视角来看,每个业务都对应很多只交易码,每只交易码产生大量的调用,每一次调用对应一笔交易。天旦BPC通过服务路径图勾画业务访问关系,通过多维统计实现交易码的多维解析聚合,通过交易追踪记录每一笔交易,完全契合业务视角。同样地与运维视角相对应,每一个服务代表一组不同AZ的相同deployment,每一只交易码代表一只接口,每一笔交易代表一次请求。
天旦BPC拥有从宏观到微观的洞察能力,可实现端到端的监控覆盖。
场景化告警
天旦BPC归纳总结不同业务的特征,提炼出六大告警场景。在颗粒度上,支持服务、维度、单笔级别告警;在业务特征上,支持周期性、小交易、关键字类告警;在规则上,支持组合、前置条件、故障定位告警。通过不断打磨完善告警场景,BPC已经能覆盖大多数场景下的业务性能问题,满足客户观测告警需求。接下来BPC也将在告警智能化和告警批量管理方面进行提升。
场景化告警
云上联合运维
可观测性体系建设是一个持续迭代的过程,既需要兼容已有的产品,也需要支持云原生的发展,因此多种工具并存是常态。由于不同厂商的工具无法互通,导致数据的关联性差,也无法释放数据的价值。天旦BPC专注于云原生业务可观测领域,基于互联数据的业务价值,采用开放联合运维的方式,将多种工具竖井联通,满足了客户对开放互联的期待。天旦BPC互联数据同时具有业务和系统信息,向上通过业务流水号等可以关联到业务,向下可以通过trace ID等定位到系统调用,使得各个系统开放互联,充分发挥了数据的价值。
天旦BPC的捷径跳转功能,可以通过配置的方式联通第三方系统,实现不同系统的互联互通,我们支持在多维统计、交易追踪页面携参跳转到云上APM系统,减轻使用者在不同系统间的跳转压力。天旦BPC作为运维入口实时洞察业务状态,同时支持通过多种方式跳转到不同专业工具联合运维,实现共赢。此外天旦BPC还支持推式和拉式数据互联,天旦BPC通过forwarder引擎支持主动外推数据,支持向多种第三方实时发送数据;其次我们提供标准的RESTful API,供第三方调用,共同打造开放运维生态。
第三方平台调用
"神奇化易是坦途,易化神奇不足提",业务可观测性建设需要化繁为简,天旦BPC以业务为中心,通过端到端业务链路覆盖,帮助客户实现云原生业务的可观测体系建设。