ALERTING OVERVIEW (概述)
Prometheus 告警分为两部分。Prometheus 服务器中的告警规则会向Alertmanager发送告警。
然后,Alertmanager 处理这些告警信息,包括沉默,禁止,聚合和发送到电子邮件、PagerDuty和HipChat等。
设置告警和通知的主要步骤是:
设置并配置Alertmanager
配置Prometheus和Alertmanager通信
在Prometheus中创建告警规则
----------------------------------------------------------------------------------------------------------------------------------------------------
ALERTMANAGER
Alertmanager处理客户端应用程序(如Prometheus服务器)发送的警报。
它负责重复数据删除,分组并将它们路由到正确的接收方集成,例如电子邮件,PagerDuty或OpsGenie。 它还处理警报的沉默和抑制。
以下介绍Alertmanager实现的核心概念。 请参阅配置文档以了解如何更详细地使用它们。
Grouping
(分组)
分组将相似性质的警报分类为单个通知。
在由系统服务器单节点宕机导致成百上千台服务器同时触发告警的时候,这个功能非常有用。
示例:你的群集中有数十或数百个服务实例运行在同一个网络区域。一半的服务实例无法访问数据库。
Prometheus中的警报规则被配置为在每个服务实例无法与数据库通信时发送警报。结果有数百个警报被发送到Alertmanager。
作为用户,只希望获取一个告警信息,同时仍然能够准确查看哪些服务实例受到了影响。
因此,可以将Alertmanager配置为按照群集和警报名称对警报进行分组,以便发送单个紧凑型通知。
告警的分组,分组通知的时间以及这些通知的接收者可以通过修改配置文件中的路由树配置来实现。
Inhibition
抑制
抑制是一个概念,如果某些其他警报已经触发,则抑制某些警报的通知。
示例:警报触发,通知整个群集无法访问。
如果该特定警报正在触发,警报管理器可以配置为关闭与该群集有关的所有其他警报。
这可以防止数百或数千个与实际问题无关的触发警报的通知。
禁止通过Alertmanager的配置文件进行配置。
Silences
沉默
沉默是简单地将警报静音给定时间的简单方法。
沉默是基于匹配器配置的,就像路由树一样。
传入的警报会检查它们是否与主动沉默的所有相等或正则表达式匹配器匹配。
如果他们这样做,则不会发送通知来发送该警报。
Alertmanager的Web界面中配置了静音。
Client behavior
Alertmanager对客户的行为有特殊要求。 这些仅适用于普罗米修斯不用于发送警报的高级用例。
High Availability
Alertmanager支持网状配置以创建高可用性群集。 这可以使用-mesh- *标志进行配置。
重要的是不要平衡普罗米修斯和其警报管理者之间的流量,而应将普罗米修斯指向所有警报管理员名单。
----------------------------------------------------------------------------------------------------------------------------------------------------
CONFIGURATION