Prometheus部署AlertManager告警(附邮件和微信示例)

Prometheus是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB),使用Go语言开发,比Heapster功能更完善、更全面,其性能也足够支撑上万台规模的集群。

AlertManager主要用于接收Prometheus发送的告警信息,支持丰富的告警通知渠道,例如邮件、微信、钉钉、Slack等常用的沟通工具,而且很容易实现对告警信息进行去重、降噪、分组等,是一款非常好用的告警通知系统。

部署AlertManager

下载

访问Prometheus官方下载页面,下载对应的版本。

配置

AlertManager的默认配置文件是alertmanager.yml,配置如下(自带webhook告警):

启动

配置开机自启

创建/etc/systemd/system/alertmanager.service,添加以下内容:

重载服务并设置开机启动:

配置Prometheus

修改prometheus.yml启动告警系统:

告警规则

创建一个告警规则rules/node_exporter.yml,并加载至prometheus.yml中。

告警状态

状态 说明
inactive 表示当前报警信息即不是firing状态也不是pending状态
pending 表示在设置的阈值时间范围内被激活的
firing 表示超过设置的阈值时间被激活的,此时将正式发送告警通知至接收者

示例

因为AlertManager支持丰富的告警通知渠道,因此参数配置远不止默认配置那么简单,至少包含email_config、hipchat_config、pagerduty_config、pushover_config、slack_config、opsgenie_config、victorops_config,本文以配置邮件和微信告警为例,详细讲述相应参数:

模板

在启动AlertManager时,会自动加载在配置文件中由templates模块指定的模板。

邮件告警模板示例template/email.tmpl

微信告警模板示例template/wechat.tmpl

原创文章禁止转载:技术学堂 » Prometheus部署AlertManager告警(附邮件和微信示例)

精彩评论

8+3=

感谢您的支持与鼓励

支付宝扫一扫打赏

微信扫一扫打赏