1 组件

根据prometheus的架构图,主要组件如下:

2 prometheus配置文件

prometheus.yml配置文件主要包含以下三个部分:

prometheus期望targe暴露的metric的URL上下文为/metrics

3 altermanager

prometheus的告警分成了两部分:

2.1 altermanager

altermanager处理由客户端程序如prometheus server发送过的告警信息。altermanager会对告警 信息进行去重,分组,或路由的管理。还可以对告警进行silencing和inhibition处理

2.1.1 Grouping

将相似的告警信息进行分组到不通类别。这在大量系统同时故障并产生大量告警信息的场景是非常 有用的。

例如:当由于网络故障,集群几十台甚至上百台的机器发生故障,大量服务不能访问到数据库时。 但prometheus设置的是每个服务实例在不能访问数据库时都会发送一个告警。这样会导致大量的 告警信息发送到altermanager.

此时作为告警处理管理员希望看到的是这些告警都分到一类中,而不想看到每个服务实例的告警。 此时就可以配置altermanager使用集群或告警名称,发送一条简化版的告警通知。