1. 前言
接上一篇Prometheus+Grafana监控部署,环境已经安装完成,本篇进行学习使用Alertmanager告警配置。
2. 告警概述
Alertmanager是一个独立的告警模块,接收Prometheus等客户端发来的警报,之后通过分组、删除重复等处理,并将它们通过路由发送给正确的接收器。
Prometheus的警报分为两个部分。Prometheus服务器中的警报规则将警报发送到Alertmanager。该Alertmanager 然后管理这些警报,包括沉默,抑制,聚集和通过的方法,如电子邮件发出通知,对呼叫通知系统,以及即时通讯平台。
设置警报和通知的主要步骤:
1) 设置并配置Alertmanager;
2) 配置Prometheus对Alertmanager访问;
3) 在普罗米修斯创建警报规则;
分组:分组将类似性质的警报分类为单个通知。当许多系统同时发生故障并且可能同时触发数百到数千个警报时,此功能特别有用。警报的分组,分组通知的时间以及这些通知的接收者由配置文件中的路由树配置
沉默:一种简单的特定时间静音提醒的机制。一种沉默是通过匹配器来配置,就像路由树一样。传入的警报会匹配RE,如果匹配,将不会为此警报发送通知。可通过Alertmanager的Web界面中配置沉默。
抑制:抑制是指当警报发出后,停止重复发送由此警报引发其他错误的警报的机制。抑制机制可以通过Alertmanager的配置文件来配置。
Alert的三种状态:
1) pending:警报被激活,但是低于配置的持续时间。这里的持续时间即rule里的FOR字段设置的时间。改状态下不发送报警。
2) firing:警报已被激活,而且超出设置的持续时间。该状态下发送报警。
3) inactive:既不是pending也不是firing的时候状态变为inactive
prometheus触发一条告警的过程:
prometheus--->触发阈值--->超出持续时间--->alertmanager--->分组|抑制|静默--->媒体类型--->邮件|钉钉|微信等。
3. Alertmanager安装部署
3.1 下载