prometheus 与 alertmanager 结合 发送邮件报警
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了prometheus 与 alertmanager 结合 发送邮件报警相关的知识,希望对你有一定的参考价值。
Alertmanager与Prometheus是相互分离的两个组件。Prometheus服务器根据报警规则将警报发送给Alertmanager,然后Alertmanager将silencing、inhibition、aggregation等消息通过电子邮件、微信、等发送信息,安装部署 alertmanager
下载软件包
wget https://github.com/prometheus/alertmanager/releases/download/v0.20.0/alertmanager-0.20.0.linux-amd64.tar.gz
解压安装
tar zxvf alertmanager-0.16.0.linux-amd64.tar.gz && cd alertmanager-0.16.0.linux-amd64
启动 alertmanager
./alertmanager --config.file=alertmanager.yml
配置 prometheus 与alertmanager 通信
修改 prometheus.yml 配置文件
配置 与alertmanager 通信
alerting:
alertmanagers:
- static_configs:
- targets:
- x.x.x.x:9093
增加报警规则,监控主机服务,默认正常是1
#Load rules once and periodically evaluate them according to the global ‘evaluation_interval‘.
rule_files:
- "rules/*.yml"
groups:
- name: generals.rules
rules:
- alert: InstanceDown
expr: up == 0
for: 1m
labels:
severity: error
annotations:
summary: "Instance {{ $labels.isinstance }} down"
description: "{{ $labels.instance }} down more than 1 minutes"
重载配置文件 kill -hup $pid 或者重启 prometheus 服务
查看配置的报警规则
触发报警
报警规则已创建 ,设置邮件通知报警,已qq 邮箱为示列,qq 邮箱需要开启smtp ,
smtp_require_tls 默认为true ,这里需要修改为false,否则邮件触发不成功, smtp_auth_password 填写授权玛
global: 全局配置,包括报警解决后的超时时间、SMTP 相关配置、各种渠道通知的 API 地址等等。
route: 用来设置报警的分发策略,它是一个树状结构,按照深度优先从左向右的顺序进行匹配。
receivers: 配置告警消息接受者信息,例如常用的 email、wechat、slack、webhook 等消息通知方式。
global:
resolve_timeout: 5m
smtp_smarthost: ‘smtp.qq.com:465‘
smtp_from: ‘xxx@qq.com‘
smtp_auth_username: ‘xxx@qq.com‘
smtp_auth_password: ‘xxx‘
#smtp_auth_secret: false
smtp_require_tls: false
smtp_hello: ‘qq.com‘
route:
group_by: [‘alertname‘]
group_wait: 10s
group_interval: 10s
repeat_interval: 1h
receiver: ‘mail‘
receivers:
- name: ‘mail‘
email_configs:
- to: ‘xxx@qq.com‘
send_resolved: true
触发报警,手动关闭,es 服务,几分钟后收到邮件报警
以上是关于prometheus 与 alertmanager 结合 发送邮件报警的主要内容,如果未能解决你的问题,请参考以下文章
linux(centos8):prometheus使用alertmanager发送报警邮件(prometheus 2.18.1/alertmanager 0.20.0)
linux(centos8):prometheus使用alertmanager发送报警邮件(prometheus 2.18.1/alertmanager 0.20.0)