Prometheus监控系统(8)Alertmanager配置实例

本文介绍了如何配置Prometheus与Alertmanager实现监控告警。首先修改Prometheus配置文件,开启与Alertmanager的连接并设置告警规则文件。接着创建告警规则文件,定义了CPU使用率的高低阈值告警。然后配置Alertmanager的邮件发送设置,包括SMTP服务器信息和接收人。当告警触发时,邮件将根据定义的标签分组发送。
摘要由CSDN通过智能技术生成

关于Alertmanager的安装可以参考上篇文章,这里直接使用一个配置示例进行效果演示:

1、修改Prometheus主配置文件,打开与Alertmanager的通信与告警规则文件路径指定

vi /usr/local/prometheus/prometheus.yml 
global:
  scrape_interval:     15s
  evaluation_interval: 15s 

alerting:
  alertmanagers:
  - static_configs:
    - targets:
       - 192.168.145.198:9093

rule_files:
   - "rules/node.yml"

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['192.168.145.198:9090']

  - job_name: 'node'
    static_configs:
    - targets: ['192.168.145.198:9100','192.168.145.199:9100']
      labels:
       service: node

  - job_name: 'mysql'
    static_configs:
    - targets: ['192.168.145.198:9104']
      labels:
       service: db

  - job_name: 'alertmanager'
    static_configs:
    - targets: ['192.168.145.198:9093']

2、创建告警规则文件,路径需要和rule_files中指定的一致,生产中建议配置多个告警文件,比如node.yml、db.yml,这样同类型的报警会整合在一个邮件中 

vi rules/node.yml
groups:
- name: node_status 
  rules:
  - alert: "CPU Alert low"  #定义监控项1
    expr: 100 - (avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) by (instance) * 100) > 30
    for: 30s
    labels:
      severity: Low  #这里定义了一个severity标签,可以根据该标签的值来进行分组
    annotations:
      summary: " {{ $labels.instance }} CPU使用率>30%"  #可以使用变量让报警内容更直观

  - alert: "CPU Alert high" #定义监控项2
    expr: 100 - (avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) by (instance) * 100) > 50
    for: 30s
    labels:
      severity: High
    annotations:
      summary: " {{ $labels.instance }} CPU使用率>50%"

3、修改alertmanager配置文件,配置告警收发、分组或者抑制等规则信息 

vi alertmanager.yml
global:
  resolve_timeout: 5m
  smtp_smarthost: 'smtp.qq.com:465'
  smtp_from: '13841276@qq.com'
  smtp_auth_username: '13841276'
  smtp_auth_password: 'mtdvgvofyfgybaxe' # 这个密码需要生成,非QQ密码
  smtp_require_tls: false
route:
  group_by: [severity]  #根据规则文件中定义的severity标签进行分组
  receiver: 'email'
receivers:
- name: 'email'
  email_configs:
  - to: '13841276@qq.com'

4、当规则触发后并满足持续时间时,邮箱里可以收到告警邮件,并且根据前面的group_by对邮件进行了分组发送 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值