栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

prometheus告警记录持久化(历史告警保存与统计)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

prometheus告警记录持久化(历史告警保存与统计)

前段时间碰到一个需求:将Prometheus的历史告警进行持久化保存,一遍进行分析统计。在尝试了一些工具后,最终选用了alertsnitch+grafana的方案。

alertsnitch: https://gitlab.com/yakshaving.art/alertsnitch

简单介绍一下这个工具的原理,alertsnitch实现了一个webhook,通过在alertmanager中配置receiver为alertsbnitch webhook将告警发送给alertsnitch,alertsnitch对数据进行处理后存入Mysql/Postgre,详细介绍可参考其gitlab主页。

下面简单介绍一下使用方法(k8s安装,数据库使用Mysql)

1、Mysql创建alertsnitch所用数据库及对应账户,略。

2、安装alertsnitch,修改下面alertSNITCH_DSN的值

# alertsnitch-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: alertsnitch
  namespace: alertmanager
spec:
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: alertsnitch    
  template:
    metadata:
      labels:
        app.kubernetes.io/name: alertsnitch
    spec:
      containers:
      - image: registry.gitlab.com/yakshaving.art/alertsnitch
        name: alertsnitch
        ports:
        - containerPort: 9567
          name: http
        env:
        - name: alertSNITCH_BACKEND
          value: mysql
        - name: alertSNITCH_DSN
          value: ${MYSQL_USER}:${MYSQL_PASSWORd}(${MYSQL_IP}:${MYSQL_PORT})/{$MYSQL_DATAbase}
        readinessProbe:
          httpGet:
            path: /-/ready
            port: 9567
          initialDelaySeconds: 30
          periodSeconds: 10
        livenessProbe:
          httpGet:
            path: /-/health
            port: 9567
          initialDelaySeconds: 60
          periodSeconds: 10
apiVersion: v1
kind: Service
metadata:
  name: alertsnitch
  namespace: alertmanager
spec:
  ports:
  - name: http
    port: 9567
    targetPort: http
  selector:
    app.kubernetes.io/name: alertsnitch

3、配置alertmanager

    route:
      receiver: all
      routes:
      #所有告警收集
      - receiver: all
        continue: true

--------------------

    receivers:
    #alertsnitch
    - name: 'all'
      webhook_configs:
      - url: 'http://alertsnitch.alertmanager.svc:9567/webhook'
        send_resolved: true

4、可以使用grafana来进行历史告警的展示和统计,做一个现成的供参考

https://grafana.com/grafana/dashboards/15833

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/751945.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号