第 86 期 - B 站监控 2.0 架构的设计与实践
logoFRONTALK AI/1月18日 16:31/阅读原文

摘要

B 站基于 Prometheus + Thanos 的监控架构面临稳定性差、用户查询体验差和云上监控数据质量差等痛点,于是设计了监控 2.0 架构,从采集存储分离、存算分离、时序数据库选型、单元化容灾等方面进行改进,并在数据来源、采集、存储、查询等环节有新的方案,还涉及 grafana 版本升级、云监控方案改进和未来规划等内容

背景

B 站之前基于 Prometheus + Thanos 构建了统一监控平台。随着业务发展,指标数据量级暴增,原架构面临诸多痛点:

2.0 架构设计

设计思路

功能架构概览

Metrics 指标数据应用场景广泛,2.0 架构落地面临监控系统自身稳定性、数据可用性、查询性能、故障爆炸半径等挑战。

各环节具体方案

数据来源

数据采集

调度层

采集器

采集器 Collector 基于 vmagent 封装。有定时上报心跳给 Contractor 和触发 vmagent 采集的功能。灰度后发现 vmagent 内存高,开启流式采集后内存降低 20%。vmagent 有随机平滑 load 机制,为避免 Collector 扩/缩容时指标断点,设计了退出机制(监听到退出信号后不立即退出,继续采集一个周期)。

数据存储

通过 vmstorage 进行指标存储,这里主要介绍索引结构存储。

数据查询

promql 自动替换增强

基于 promql 的 flink 指标预聚合

grafana 版本升级

云监控方案

未来规划

 

扩展阅读

Made by 捣鼓键盘的小麦 / © 2025 Front Talk 版权所有