生产环境服务器邮箱告警测试环境服务器企业微信告警

 Docker部署Prometheus+Grafana+Alertmanager企业微信机器人告警

根据项目需求在之前的的告警上进行修改

1.修改Alertmanager配置文件
# vim /data/alertmanager/alertmanager.yml
# 添加以下内容

global:                        # 指定了全局配置
  resolve_timeout: 5m          # 表示在警报解决之前等待的最长时间为5分钟
  smtp_smarthost: 'xxxxxxx.qq.com:123'  # SMTP 服务器和端口
  smtp_from: 'xxxxxxx@qq.com'  # 发件人邮箱
  smtp_auth_username: 'xxxxxx@qq.com'  # SMTP 认证用户名
  smtp_auth_password: 'asdfasdfzi6V5'  # SMTP 认证密码
  smtp_require_tls: false  # 是否要求使用 TLS
  smtp_hello: 'qq.com'  # SMTP 服务器的 HELO 名称


route:                         # 定义告警发送规则
  group_by: ['alertname']      # 按照alertname进行分组,也就是相同警报名称的警报将会被分到一组。
  group_wait: 10s              # 表示在同一组内等待来自不同实例的所有警报。
  group_interval: 10s          # 表示在发送多个通知之间等待的时间。
  repeat_interval: 5m          # 表示对于未解决的警报,重复发送通知的间隔。
  receiver: 'web.hook'         # 表示接收到的警报将会被发送到名为web.hook的接收者


  routes:
  - receiver: 'web.hook'  # 测试环境使用 webhook
    match_re:
      environment: 'test'
  - receiver: 'email.alert'
    match_re:
      environment: 'pro'

receivers:                     # 接收通知的配置
  - name: 'email.alert'
    email_configs:
      - to: 'xxxxx@qq.com'  # 收件人邮箱
        headers:
          Subject: "告警"  # 邮件主题
        send_resolved: true  # 发送解决告警通知
  - name: 'web.hook'             # 定义接收者名称为web.hook
    webhook_configs:             # 定义了 webhook 目标的配置
      - url: 'http://192.168.1.202:8080/adapter/wx'   # 指定了目标地址
        send_resolved: true        # 表示在警报解决时也发送通知。

inhibit_rules:                 # 降低告警收敛,减少报警,发送关键报警。
  - source_match:  
      severity: 'critical'
    target_match:
      severity: 'warning'
    equal: ['alertname', 'dev', 'instance']
2.修改prometheus配置文件
global:
  scrape_interval: 15s 
  evaluation_interval: 15s 

alerting:
  alertmanagers:
  - static_configs:
    - targets:
      - 192.168.1.202:9093
# 配置alertmanagers的IP和端口

rule_files:
   - "rules/*.yml" 
# 文件夹rules需要和prometheus.yml在同级目录,这里存放告警触发规则文件


scrape_configs:

  - job_name: prometheus
    static_configs:
      - targets: ['localhost:9090']
        labels:
          instance: prometheus
# 配置Prometheus的主机地址,默认端口9090
# 云服务器部署ip填写内网ip


  - job_name: node-exporter
# 此处添加了多台主机,每台主机都要安装node-exporter
    static_configs:
      - targets: ['192.168.1.202:9100']
        labels:
          instance: localhost
          group: 项目1             # 根据项目经行分组
          environment: test        #根据服务器环境添加,此处为测试环境

      - targets: ['192.168.1.193:19100']
        labels:
          instance: 192.168.1.193
          group: 项目1
          environment: pro

      - targets: ['192.168.1.181:9100']
        labels:
          instance: 192.168.1.181
          group: 项目2
          environment: test

      - targets: ['192.168.1.182:9100']
        labels:
          instance: 192.168.1.182
          group: 项目3
          environment: pro

      - targets: ['192.168.1.203:9100']
        labels:
          instance: 192.168.1.203
          group: 项目3
          environment: test

  - job_name: 'alertmanager_exporter'
    static_configs:
      - targets: ['192.168.1.202:9093']

 3.修改告警规则,所有告警规则都要修改
groups:
- name: CPU报警规则
  rules:
  - alert: CPU使用率告警
    expr: 100 - (avg by (instance)(irate(node_cpu_seconds_total{mode="idle"}[5m]) )) * 100 > 90
    for: 1m
    labels:
      severity: warning
      environment: '{{ $labels.environment }}'    #添加环境,可对照之前文章进行修改
    annotations:
      summary: "CPU使用率正在飙升 - {{ $labels.environment }}"
      description: "{{ $labels.environment }}的CPU使用率超过90%(当前值:{{ $value }}%)"
4.重启所有服务

# docker-compose restart

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值