news 2026/4/20 18:36:25

VMAlert告警规则与动态配置详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
VMAlert告警规则与动态配置详解

一、功能描述

VMAlert负责执行告警规则、生成告警事件,并将告警推送给 Alertmanager 或 Webhook,同时还能计算 Recording Rule 并写入存储。

在 集群模式下, VictoriaMetrics 具有独立的写入和读取路径组件 。vminsert写入组件用于执行规则表达式,读取vmselect组件用于持久化记录规则结果和警报状态。集群模式可以包含多个写入和读取组件。vmselectvminsertvminsertvmselect

vmalert配置标志:

1. 执行 Alerting Rules(告警规则)

从 Prometheus / VictoriaMetrics 数据源查询数据,周期性评估告警:

alert: HighErrorRate expr: rate(http_errors_total[5m]) > 10 for: 1m

当条件满足 → 触发告警

当条件恢复 → 发送恢复

2. 发送告警通知(Alert notifications)

支持两种方式发送告警:

发送给 Alertmanager(推荐)

走 Alertmanager,再由 Alertmanager 路由到不同通知渠道(Slack、钉钉、飞书、Webhook 等)

直接发送 Webhook(不经过 Alertmanager)

适合自定义告警系统或你这种需要直接推送到接口的情况。

3. 执行 Recording Rules(记录规则)

计算新的时序数据并写入 VictoriaMetrics(remote write):

record: job:http_requests:rate5m expr: rate(http_requests_total[5m])

Recording rules 的好处:

  • 查询速度更快

  • 降低 VictoriaMetrics 计算压力

  • Dashboards 用录制好的指标更顺畅

4. 动态加载规则(不需要重启)

VMAlert 支持:

  • ConfigMap 动态挂载规则

  • 随时 reload,而不重启 Pod

5. 提供 UI 查看规则状态

  • 当前规则执行情况

  • 告警触发状态

  • 执行错误

  • 数据查询结果

二、多个alert实例

需要增加下面参数,用来去重

VM单点模式下

insert和select 增加:dedup.minScrapeInterval: 10s

VM-Cluster 模式下

storage 需要增加 dedup.minScrapeInterval: 15s

select 需要增加 dedup.minScrapeInterval: 15s

数据延迟配置

extraArgs: loggerLevel: INFO rule.evalDelay: "30s" #默认值需要和search.latencyOffset 设置为一致 数据有延迟的时候需要配置

三、监控看板

https://grafana.com/grafana/dashboards/24513-victorialogs-vlagent/

四、全量配置:

apiVersion: operator.victoriametrics.com/v1beta1 kind: VMAlert metadata: name: custom-alert namespace: monitoring spec: replicaCount: 1 imagePullSecrets: - name: uhub-registry datasource: url: "http://vm-victoria-metrics-cluster-vmselect.monitoring:8481/select/0/prometheus" remoteWrite: url: "http://vm-victoria-metrics-cluster-vminsert.monitoring:8480/insert/0/prometheus" remoteRead: url: "http://vm-victoria-metrics-cluster-vmselect.monitoring:8481/select/0/prometheus" maxConnections: 4 image: repository: vmalert tag: v1.128.0 pullPolicy: Always externalLabels: cluster: xxx-prod environment: cn-beijing notifier: url: "http://vmalertmanager-custom-alertmanager.monitoring.svc:9093" timeout: 10s maxConnections: 5 #alertmanager: # enable: true #alertmanagerConfigSelector: # matchLabels: # vmamcfg: custom-webhook #notifier: # alertmanager: # enable: true # selector: # matchLabels: # app.kubernetes.io/name: alertmanager resources: limits: cpu: 2 memory: 4Gi requests: cpu: "100m" memory: "128Mi" #ExternalURL: "https://victoria-alert.xxx.cn" #external: # url: "https://victoria-alert.xxx.cn" extraArgs: loggerLevel: INFO rule.evalDelay: "30s" #默认值需要和search.latencyOffset 设置为一致 数据有延迟的时候需要配置 external.url: "https://victoria-alert.xxx.cn" # 可以将rules存到s3 # rule: s3://bucket/dir/alert.rules serviceMonitor: enabled: true interval: 30s tolerations: - effect: NoSchedule key: service operator: Equal value: sre-victoria-metrics affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: business operator: In values: - sre selectAllByDefault: true evaluationInterval: "30s" scrapeConfigSelector: {} serviceScrapeSelector: {} ruleNamespaceSelector: {} podScrapeSelector: {} nodeScrapeSelector: {} staticScrapeSelector: {} probeSelector: {} ruleSelector: {}

参考文档

https://docs.victoriametrics.com/victoriametrics/vmalert/

https://docs.victoriametrics.com/operator/resources/

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 19:58:23

VictoriaMetrics集群架构与工作流解析

一、VictoriaMetrics 组件总体架构图 Operator 工作流程图 二、它们是如何协同工作的(工作流) 1. 数据采集链路 vmagent 发现 targets → 拉取 metrics → 本地缓存/限流 发送给 vminsert vminsert 接收数据 → 校验 → 压缩 → 根据租户/seriesID 分…

作者头像 李华
网站建设 2026/4/20 8:29:56

【银河麒麟】桌面操作系统-dpkg命令的常见用法

【 概 述 】银河麒麟桌面系统的包管工具dpkg在实际的生产、办公或是排障中有很大用处,下面笔者将结合案例展现dpkg命令的一些常见用法,文末拓展了一个实用的包提取工具 【 常见用法 】 1、# dpkg -l | grep 包名查看是否安装了某个软件包,gr…

作者头像 李华
网站建设 2026/4/18 0:18:31

10 个AI论文工具,专科生轻松搞定毕业写作!

10 个AI论文工具,专科生轻松搞定毕业写作! AI 工具如何成为论文写作的得力助手 对于专科生来说,毕业论文写作常常是学业中最棘手的一环。从选题到开题,再到撰写和降重,每一个环节都可能让人感到压力山大。而随着 AI 技…

作者头像 李华
网站建设 2026/4/18 8:37:23

Java函数入门:5分钟学会编写你的第一个函数

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个简单的Java入门教程项目,包含以下基础函数示例:1)打印Hello World的函数,2)两数相加的函数,3)判断数字奇偶的函数&#xff0…

作者头像 李华
网站建设 2026/4/17 14:16:20

电商主图救星!3个AI换背景技巧,0设计感也能出高点击图

打造爆款电商主图真的太难了!搭场景和找美工定制费钱耗时,自己抠图换背景还容易边缘粗糙、光影违和,反而掉档次。那么当下有什么AI工具可以轻松打造爆款主图呢,以下这个工具可以解决这个问题。其中包含3种商品更换背景方法&#x…

作者头像 李华
网站建设 2026/4/18 3:40:41

RGBA入门指南:从零开始学颜色表示

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个交互式RGBA学习平台,包含:1) RGBA基础知识讲解 2) 可视化颜色编辑器 3) 实时编码练习区 4) 小测验功能。要求界面友好,有分步引导&#…

作者头像 李华