告警OnCall事件中心建设方法白皮书
备的监控可能采用的 Zabbix,Kubernetes 的监控可能 用的 Prometheus(Kubernetes 可能有多套,以至于 Prometheus 可能有多套)或者 Nightingale, 日志的监控可能用的 Elastalert,如果上云了,可能还会有多套不同的云监控(尤其是多云场景下)。 监控系统的重心,通常是采集、存储、可视化、生成告警事件,但通常都不具有完备的事件后续处理能 这种产品,一定程度上是可以解决一些告警过多的问题,但如果能从告警规 则的源头做好优化,自然是事半功倍。很多公司的告警规则配置没有原则可循,每次故障复盘先看告警是 否漏报,一线工程师为了不背锅,自然是尽量多地提高告警覆盖面,但这么做的后果,就是告警过多,无 效告警占多数,长此以往,工程师疲惫不堪。 那么告警规则的配置应该遵照一个什么原则呢?虽然每个公司业务不同,总有一些通用的原则可循吧?的 1、根据时间做收敛 把告警中心收到的所有告警,按照时间维度做收敛,比如按照分钟颗粒度,一分钟内所有告警收敛成一个 故障,下一分钟所有告警收敛成另一个故障。显然,一个故障内的多个告警相互之间可能没有关联关系, 所以这种收敛方法不是太好。 2、根据时间 + 标签做收敛 除了时间维度,再加上某个标签作为收敛维度,比如机器标签,某个时间段内所有 A 机器的告警收敛成 一个故障,所有0 码力 | 23 页 | 1.75 MB | 1 年前3B站统⼀监控系统的设计,演进 与实践分享
devops • 热爱新技术,热爱开源 • ⼩小宅男 故事的开始 B站炸了了.舆情监控(括弧笑脸) 我们的挑战 • 技术栈多 • 产品模块复杂 • 业务爆发式增⻓长 • 运维要求⾼高 当前情况: • 覆盖率低 • 误报,漏漏报多 • 告警⻛风暴暴 监控问题爆发: 重新定义的监控系统 ✦ 完整的监控体系 ✦ 科学的告警策略略 ✦ 统⼀一的告警中⼼心 完整的监控体系 metric数据特征 选型原则 • 基于开源⽅方案,⼆二次开发 • 具备现代时间序列列数据库的特性 • 活跃项⽬目,具有成熟的⽣生态环境 结论 • prometheus • ⽀支持任意维度label • cncf基⾦金金会 metric • 40w+/s的指标采集 • 10k+ 监控⽬目标 • 10+ prometheus节点 现状: • 性能 • ⾼高可⽤用 target target IDC_2 获取 监控⽬目标 告警规则 web push rule push rule 获取监控数据 获取监控数据 推送告警 1. 降低编写规则的成本 2. 降低多idc维护成本 规则管理理⻚页⾯面 例例⼦子 - 业务监控 稿件 账号 Feed PAAS托管 服务树 container http server sdk 注册 获取target0 码力 | 34 页 | 650.25 KB | 1 年前3PromQL 从入门到精通
分别统计clickhouse和canal的机器的内存可用 率,可以使用by关键字指定分组统计的维度(与by相反的是without): avg(mem_available_percent{app=~"clickhouse|canal"}) by (app) 函数 Prometheus 函数非常多,具体文档参考:https://prometheus.io/docs/prometheus/latest/ 分位值,这个是否个问题? 笔者看来,这是个问题,但是这个问题不是特别严重,如果要求全局的90分位值,可以把所有 实例的90分位值取个平均,虽然不是那么准确,也凑合能用。而实际上,对于一个服务部署多 个实例的场景,通常这多个实例是负载均衡的,查看其中一个实例的分位值和查看总体的分位值 理论上差不太多。而且,如果某个机器有问题,比如某个机器磁盘故障,导致部署在上面的实例 异常,延迟变高,其他0 码力 | 16 页 | 2.77 MB | 1 年前31.6 利用夜莺扩展能力打造全方位监控系统
的关键工具。故障处理过程的首要原则是『止损』,因此,过程中的『发现』和『定位』都是面向尽快『止损』来 实现。 监控痛点:全面完备、跨云 第二部分 端上、链路、资源、组件、应用多维度跨云监控,不管哪个 环节出问题都能及时感知 产品要求 01.端上、链路、资源、组件、应用多维度跨云监控 端上 卡顿 崩溃 链路 连通性 链路质量 服务端 硬件资源 组件服务 业务应用 夜莺介绍:国产开源监控系统 第三部分0 码力 | 40 页 | 3.85 MB | 1 年前3
共 4 条
- 1