美文网首页
Prometheus的告警配置

Prometheus的告警配置

作者: skiler | 来源:发表于2020-07-14 15:01 被阅读0次

一、 prometheus告警机制

告警机制是由Alertmanager与Prometheus两个组件共同实现的。Prometheus应用根据报警规则计算并触发报警发送给Alertmanager。Alertmanager对告警进行处理,包括屏蔽(silencing)、抑制(inhibition)、聚合(aggregation),通过电子邮件等方式发送告警。

二、配置和触发告警分三步

1. 在Prometheus配置告警规则

  • 在prometheus配置文件加上rule_files,即告警规则路径


    image.png
  • 在告警规则路径里加上告警规则
ALERT <alert name> # 告警规则名
  IF <expression>  # promQL表达式
  [ FOR <duration> ]  # 阈值持续时间
  [ LABELS <label set> ] # 可以添加标签
  [ ANNOTATIONS <label set> ] # 备注信息,可以使用模板

文件样例

groups:
    - name: rules-group
      rules:
      - alert: NodeMemoryHigh
        expr: (node_memory_MemTotal_bytes - (node_memory_MemFree_bytes+node_memory_Buffers_bytes + node_memory_Cached_bytes)) / node_memory_MemTotal_bytes * 100 > 50
        for: 1m
        labels:
          team: node
        annotations:
          summary: "{{ $labels.instance }}:High Memory Usage detected"
          description: "{{ $labels.instance }}: Memory usage us avive 50% (current value is :: {{ $value }})"

可以使用工具检查自己写的rule文件是否异常,基于go语言命令行工具
go get github.com/prometheus/prometheus/cmd/promtool
promtool check rules /path/to/example.rules.yml

  • 重启prom服务,就可以看到相关的数据


    alerts显示
    rules显示

2. 启动和配置Alertmanager

Alert的配置文件详细可以参考官方文档

  • 全局配置,主要包含SMTP邮件相关配置、Slack、微信等配置
  • templates用户自定义的模板
  • route:告警分发路由配置
  • receivers:告警接受配置
  • inhibit_rules:告警抑制相关配置
global:
  resolve_timeout: 5m
  smtp_from: '123456789@qq.com'
  smtp_smarthost: 'smtp.qq.com:465'
  smtp_auth_username: '123456789@qq.com'
  smtp_auth_password: 'odggumkcwskybfgb'
  smtp_require_tls: false
  smtp_hello: 'qq.com'
route:
  group_by: ['alertname']
  group_wait: 5s
  group_interval: 5s
  repeat_interval: 5m
  receiver: 'email'
receivers:
- name: 'email'
  email_configs:
  - to: '123456789@qq.com'
    send_resolved: true
inhibit_rules:
  - source_match:
      severity: 'critical'
    target_match:
      severity: 'warning'
    equal: ['alertname', 'dev', 'instance']

3. 配置Prometheus和Alertmanager通信

相关文章

网友评论

      本文标题:Prometheus的告警配置

      本文链接:https://www.haomeiwen.com/subject/ksqxhktx.html