当前位置:   article > 正文

Prometheus+Grafana新手友好教程:从零开始搭建轻松掌握强大的警报系统_grafana配合prometheus配置告警

grafana配合prometheus配置告警

一、预警方案

Prometheus+Grafana 实现邮件报警的方案主要有以下两种:

方案一:使用 Prometheus 的 Alertmanager 组件

Prometheus 的 Alertmanager 组件是一个专门用于告警的组件,它可以将告警发送到多种通知渠道,包括邮件。要使用 Alertmanager 实现邮件报警,需要在 Alertmanager 的配置文件中添加邮件通知配置。以下是邮件通知配置的示例:

  1. receivers:
  2. - name: "mail"
  3. email_configs:
  4. - to: "user@example.com"
  5. from: "alertmanager@example.com"
  6. server: "smtp.example.com"
  7. port: 25
  8. username: "user"
  9. password: "password"

在 Grafana 中,可以创建告警规则,并将告警规则与 Alertmanager 的邮件通知配置关联起来。

方案二:使用 Grafana 的 Alert Notification

Grafana 的 Alert Notification 功能可以让您直接在 Grafana 中配置邮件通知。

要使用 Grafana 的 Alert Notification 实现邮件报警,需要在 Grafana 的配置文件中添加邮件通知配置。以下是邮件通知配置的示例:

  1. alerts:
  2. - name: "CPU usage is too high"
  3. alert_rules:
  4. - alert_rule_id: "1"
  5. notification_channels:
  6. - name: "mail"
  7. email_configs:
  8. - to: "user@example.com"
  9. from: "alertmanager@example.com"
  10. server: "smtp.example.com"
  11. port: 25
  12. username: "user"
  13. password: "password"

在 Grafana 中,可以创建告警规则,并将告警规则与 Grafana 的邮件通知配置关联起来。

方案三:使用第三方告警组件

除了 Prometheus 和 Grafana 自带的告警功能外,还可以使用第三方告警组件来实现邮件报警。例如,OneAlert 是一个开源的告警组件,它可以将告警发送到多种通知渠道,包括邮件。要使用 OneAlert 实现邮件报警,需要在 OneAlert 的配置文件中添加邮件通知配置。以下是邮件通知配置的示例:

  1. alerts:
  2. - name: "CPU usage is too high"
  3. alert_rules:
  4. - alert_rule_id: "1"
  5. notification_channels:
  6. - name: "mail"
  7. email_configs:
  8. - to: "user@example.com"
  9. from: "alertmanager@example.com"
  10. server: "smtp.example.com"
  11. port: 25
  12. username: "user"
  13. password: "password"

在 Grafana 中,可以创建告警规则,并将告警规则与 OneAlert 的邮件通知配置关联起来。

二、搭建预警

环境准备

以下是本文所需的环境:

  • 一台运行 Linux 的服务器(建议使用 CentOS 或 Ubuntu)
  • Docker环境
  • Prometheus
  • Node Exporter

Grafana安装

修改配置文件

vim /data/grafana/grafana.ini

复制以下内容

  1. ###SMTP / Emailing ###
  2. [smtp]
  3. enabled = true
  4. host = smtp.exmail.qq.com:465 #这里换成自己的smtp及端口
  5. user = xx.qq.com #这里换成自己的邮箱地址
  6. password = xx #这里换成自己的邮箱密码
  7. ;cert_file =
  8. ;key_file =
  9. ;skip_verify = false
  10. from_address = xx.qq.com #一般与上面的邮箱地址一致
  11. from_name = Grafana
  12. ehlo_identity =
  13. startTLS_policy =
  14. [emails]
  15. welcome_email_on_sign_up = true
  16. templates_pattern = emails/*.html, emails/*.txt
  17. content_types = text/html

除了注明要改的其它的都可以不变,然后启动docker

  1. docker run -d --name=grafana -p 3000:3000 \
  2. -v /data/grafana/grafana.ini:/etc/grafana/grafana.ini \
  3. grafana/grafana

基本设置

打开grafana的控制台:http://xx.xx.xx.xx:3000/ 用户名、密码:admin/admin

设置数据源,如果设置过的可以跳过。

保存就可以了,接下来我们来设置预警。

Contact points(创建告警渠道)

进入后选择Contact points->New contact points

设置完成后可以试试邮件是否设置成功,点击Test

弹出的窗体点击

这样就说明邮件设置成功,如果有异常这里也会红色的提示。

这是收到的测试邮件效果

没问题后就保存

Notification policies(创建告警通道匹配规则)

Alert rules(配置告警策略)

Folder下拉没有东西,可以随便填个名称:

填写时会在下拉列表出现Create:的效果

在这栏

的最下面会多出一条

我们选择一个变量,并设置它的预警规则

当最近的F值(可用内存值)高于3时就会预警。

条件就是上面的G表达式不用变,下面的时间可以调整一下,每30秒进行一次规则检查,如果符合报警条件,延迟5分钟进行报警。

Add details for your alert,这里填写一个信息就可以保存。

等待 30s - 1min之后,观察是否可以接收到告警

如果发现这些按钮的地址都是localhost想修改的话

可以vim grafana.ini增加

  1. [server]
  2. protocol = http
  3. http_port = 3000
  4. domain = 10.9.2.50

然后docker restart grafana

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/618752
推荐阅读
相关标签
  

闽ICP备14008679号