Prometheus Alert 简介
PrometheusAlert是开源的运维告警中心消息转发系统,支持主流的监控系统Prometheus、Zabbix,日志系统Graylog2,Graylog3和数据可视化系统Grafana发出的预警消息,支持将收到的这些消息发送到钉钉,微信,腾讯短信,腾讯电话,阿里云短信,阿里云电话,华为短信等。
PrometheusAlert 特性
- 支持多种消息来源,目前主要有Prometheus,Zabbix,Graylog2,Graylog3,Grafana。
- 支持多种类型的发送目标,支持钉钉,微信,腾讯短信,腾讯语音,阿里云短信,阿里云语音,华为短信。
- 针对Prometheus增加了告警级别,并且支持按照不同级别发送消息到不同目标对象。
- 简化Prometheus分组配置,支持按照具体消息发送到单个或多个接收方。
- 增加手机号码配置项和号码自动轮询配置,可固定发送给单一个人告警信息,也可以通过自动轮询的方式发送到多个人员且支持按照不同日期发送到不同人员。
- 增加Dashboard
- 增加代理支持
安装部署PrometheusAlert
PrometheusAlert 可以部署在本地和云平台上,支持windows、linux、公有云、私有云、混合云、容器和kubernetes。你可以根据实际场景或需求,选择相应的方式来部署 PrometheusAlert:
使用容器部署
1 | #clone项目源代码 |
在linux系统中部署
1 | #clone项目源代码 |
在windows系统中运行
1 | #clone项目源代码 |
在kubernetes中运行
1 | #Kubernetes中运行可以直接执行以下命令行即可 |
使用helm部署
1 | #clone项目源代码 |
PrometheusAlert接口说明
PrometheusAlert 目前提供以下几类接口,分别对应各自接入端,负责解析各自接口传入或者传出的消息。
prometheus接口
1 | /prometheus/alert 处理Prometheus告警消息转发到默认接口 |
zabbix接口
1 | /zabbix/alert 处理Zabbix告警消息转发默认接口 |
grafana接口
1 | /grafana/phone 处理Grafana告警消息转发到腾讯云电话接口(v3.0版本将废弃) |
graylog2接口
1 | 特别说明: graylog2接口针对 graylog版本 <= 3.0.x |
graylog3接口
1 | 特别说明: graylog3接口针对 graylog版本 >= 3.1.x |
语音短信回调接口
1 | /tengxun/status 处理腾讯云语音短信回调接口,负责失败后重试 |
接入配置
Prometheus 接入配置
在 Prometheus Alertmanager 中启用 Webhook,可参考如下模板:
1 | global: |
Prometheus Server 的告警rules配置,可参考如下模板:
1 | groups: |
PrometheusAlert配置文件说明
PrometheusAlert配置文件中定义了丰富的配置项,默认配置即可满足开箱即用。并且配置文件中每项配置都加入了详细的注释,非常明确的指出了每个配置项的功能和定义。
1 | #---------------------↓全局配置----------------------- |
更多配置请参考PrometheusAlert项目github