08|如何用 Nightingale 解决 Prometheus 的告警管理问题?
夜莺简介
- 深入了解
- 翻译
- 解释
- 总结
Nightingale 是一个开源的告警管理工具,旨在解决 Prometheus 的告警管理问题。它提供了一体化全方位的云原生监控解决方案,通过整合多种能力,为用户提供开箱即用的监控系统。Nightingale 的架构包括监控数据采集器、Server、时序库和Webapi模块,支持多种采集器的数据采集方式。部署 Nightingale 可以通过 Docker compose 或 Kubernetes 和 Helm 完成。Nightingale 的告警管理功能包括规则管理、规则配置、告警屏蔽、告警订阅和历史告警存档。它引入了业务组的概念,使得每一条规则都归属于某一个业务组,实现了更好的协同管理。此外,Nightingale 还提供了丰富的告警规则配置、历史事件存档、活跃事件聚合查看等增强功能,使得告警管理更加直观和灵活。 Nightingale 的告警管理方式类似于 Datadog,每个团队配置自己的告警规则,发给自己这个团队,不需要把告警规则和接收规则拆到两个地方分别配置,更加直观。总的来说,Nightingale 提供了一种更加灵活、直观的告警管理方式,适用于大规模团队协同操作的监控系统。 Nightingale 的告警管理功能包括活跃告警聚合、告警自愈和失联告警。活跃告警功能支持自定义聚合规则,方便分类查看未恢复的告警。告警自愈功能支持自动触发恢复动作,通过脚本执行实现告警自愈,同时需要权限管控和业务组机制支持。失联告警功能通过自动解析监控数据标识实现机器失联的监控,大大简化了配置管理。对于已经使用 Prometheus Yaml 文件管理的规则,可以不用迁移,而新规则可以使用 Nightingale 管理。总的来说,Nightingale 提供了灵活、直观的告警管理方式,适用于大规模团队协同操作的监控系统,是解决 Prometheus 告警管理问题的有效工具。
《运维监控系统实战笔记》,新⼈⾸单¥59
全部留言(16)
- 最新
- 精选
- 骁毅“因为 Prometheus 的 Yaml 文件管理方式不太方便做公司级协同管理。Grafana 和夜莺都可以解决这个问题,” grafana可以对prometheus的yaml进行管理么?
作者回复: 不能,grafana是自己实现了告警引擎,用grafana自己的告警机制就可以了
2023-02-19归属地:天津22 - Geek_1a3949尝试回答下课后问题: 告警表达式是带判断的PromQL,查询到值表示触发了阈值,查询不到表示未触发; 而告警恢复的时候,PromQL表达式返回空值,故没有$value。
作者回复: 👍🏻
2023-01-29归属地:上海32 - KEIO老师 请教一下 可以对比一下Grafana和Altermanager的告警管理能力吗?
作者回复: Grafana是个单点,如果告警规则很多,可能会有瓶颈;其次是Grafana的告警规则配置我是感觉真难用,不知道其他人怎么看。alertmanager不负责告警规则管理,只负责告警事件的后续,对于告警事件的后续处理,包括分组、屏蔽、抑制,还是比较齐全的,不过alertmanager更多的是给一个团队使用,如果很多团队都使用一个alertmanager来管理告警,就容易混乱,需要制定良好的规范,需要制定良好的规范,需要制定良好的规范,重要的事情说三遍
2023-01-28归属地:重庆32 - 隆哥快猫的采集器我觉得很好,基本覆盖了常用服务的数据采集,只需要修改配置一下就可以了。但是我有一个疑惑,比如我监控几百台服务器,每台服务器有可能有不同的服务需要被采集,如果这样子的话,快猫服务采集的那些配置文件如何管理呢?用表格来做扁平化管理嘛。
作者回复: 配置管理这块,建议是ansible、puppet之类的工具,telegraf、datadog-agent这些目前也都是修改配置文件的方式,后面也有考虑在Nightingale里开放agent的配置管理能力,不过还没有时间搞
2023-01-31归属地:福建1 - Amosヾ原生k8s支持告警自愈吗?webhook的方式
作者回复: 这个问法欠妥,K8s本身是可以处理节点故障自动迁移pod的,从这个角度来讲,是有告警自愈的能力的。webhook是prometheus、nightingale等这种监控系统的职能,产生告警之后通过webhook调用第三方的系统,prometheus、nightingale、zabbix等都可以做
2023-01-25归属地:江苏1 - peter请教老师几个问题: Q1:server与Redis之间的心跳有什么作用? Q2:webapi没有界面吗? “Webapi 模块提供 HTTP 接口,与前端 JavaScript 交互”,从这句话看,好像webapi没有界面。 “浏览器访问 nwebapi 提供的 18000 端口就能看到登录页面”,从这句话看,好像webapi有界面。 Q3:架构图中,agents和exporter都采集数据,有什么区别? Q4:Prometheus和Nightingale都可以处理告警,采用Nightingale后,就禁掉Prometheus自身的告警功能,是这样吗?
作者回复: 1,server使用redis心跳,这样所有的server就都知道活着的server的列表,然后就可以做分片逻辑,每个server只处理一部分告警规则 2,界面是js、css、html渲染的,这些静态资源文件可以使用nginx来serve,也可以使用webapi来serve,js拉取数据是走的webapi的接口 3,agent是推,exporter是拉 4,是的
2023-01-25归属地:北京1 - stray现在使用的是peometheus的采集器,想改成categraf,如何能实现平滑变更,变更完后监控图表等都不变,减少对客户的影响。
作者回复: 其实图表方面已经用了 Exporter,已经用了 Grafana 完全不用迁移,夜莺比较擅长的是告警管理,看图完全可以继续使用 Grafana 的
2024-03-12归属地:北京 - 机智的路易老师你好,我们公司最近在调研夜莺,请问边缘侧server端拉prometheus,如果server挂了怎么办,server需要保证高可用吗?
作者回复: 夜莺v6边缘部署的是n9e-edge模块,n9e-edge可以部署多个实例组成集群,挂了一个不影响
2023-11-22归属地:江苏 - 祥贵夜莺分为开源版和企业版,开源版能解决这些问题?
作者回复: 可以
2023-06-11归属地:四川 - 云韵docker 部署的方式不支持Mac的arm64架构吗
作者回复: v6.0.0.ga.3 应该是支持的,我是macbook m1,是可以的
2023-04-12归属地:浙江2