Prometheus告警处理详解:从Alertmanager部署到告警实战 📅 发布时间:2026/7/8 2:47:30 👁️ 浏览次数: 一、Alertmanager介绍Prometheus 内置了一个报警模块——Alertmanager它负责接收来自 Prometheus 的告警信息并支持对告警进行去重、降噪、分组、路由同时具备丰富的通知渠道集成能力是一款高效的告警通知系统。告警流程架构在 Prometheus 中告警功能分为两部分Prometheus定义告警规则并周期性计算触发告警后发送给 Alertmanager。Alertmanager接收告警并按照配置进行后续处理与通知。下图展示了告警流程架构二、部署AlertmanagerAlertmanager 使用 Go 编写无第三方依赖支持跨平台部署。1. Linux安装步骤1下载安装包bashwget https://github.com/prometheus/alertmanager/releases/download/v0.26.0/alertmanager-0.26.0.linux-amd64.tar.gz2创建配置文件解压后默认配置文件为alertmanager.yml主要内容如下yamlroute: group_by: [alertname] group_wait: 30s group_interval: 5m repeat_interval: 1h receiver: web.hook receivers: - name: web.hook webhook_configs: - url: http://127.0.0.1:5001/ inhibit_rules: - source_match: severity: critical target_match: severity: warning equal: [alertname, dev, instance]3启动Alertmanagerbash./alertmanager支持启动参数--config.file指定配置文件路径--storage.path指定数据存储路径4查看运行状态访问http://IP:9093可进入Alertmanager控制台。2. Docker安装步骤bashmkdir -p /etc/alertmanager/ mkdir -p /etc/alertmanager/template vim /etc/alertmanager/alertmanager.yml # 内容同上 docker run -d -p 9093:9093 \ -v /etc/alertmanager:/etc/alertmanager \ -v /etc/localtime:/etc/localtime \ prom/alertmanager三、配置Receiver接收告警信息Alertmanager 支持多种通知方式包括邮件、Slack、Webhook、PagerDuty 等。集成QQ邮箱告警示例1. 申请QQ邮箱授权码参考QQ邮箱授权码申请指南2. 配置alertmanager.ymlyamlglobal: resolve_timeout: 5m smtp_smarthost: smtp.qq.com:465 smtp_from: 276****211qq.com smtp_auth_username: 276****211qq.com smtp_auth_password: xxxxxxxxx # 授权码非QQ密码 smtp_require_tls: false templates: - /etc/alertmanager/template/*.tmpl route: group_by: [service,alertname,cluster] group_wait: 30s group_interval: 10s repeat_interval: 5m receiver: email receivers: - name: email email_configs: - to: 276****211qq.com send_resolved: true html: {{ template email.html . }} inhibit_rules: - source_match: severity: critical target_match: severity: warning equal: [alertname, dev, instance]3. 创建自定义邮件模板bashvim /etc/alertmanager/template/email.tmpl模板内容如下支持Go模板语法go{{ define email.html }} {{ range $i, $alert :.Alerts }} 监控报警br 告警状态{{ .Status }}br 告警级别{{ $alert.Labels.severity }}br 告警类型{{ $alert.Labels.alertname }}br 告警应用{{ $alert.Annotations.summary }}br 告警主机{{ $alert.Labels.instance }}br 告警详情{{ $alert.Annotations.description }}br 触发阀值{{ $alert.Annotations.value }}br 告警时间{{ ($alert.StartsAt.Add 28800e9).Format 2006-01-02 15:04:05}}br endbr {{ end }} {{ end }}注意StartsAt为UTC时间需加28800e9转换为北京时间2006-01-02 15:04:05为Go语言固定时间格式四、启用Alertmanager模块与Rules告警规则1. 配置Prometheus连接Alertmanager编辑prometheus.yml添加以下内容yamlglobal: scrape_interval: 5s evaluation_interval: 5s alerting: alertmanagers: - static_configs: - targets: - 192.168.3.100:9093 rule_files: - /etc/prometheus/rules/*.rules重启Prometheus后访问http://IP:9090/config确认配置生效。2. 创建告警规则文件示例规则CPU与内存使用率告警bashmkdir -p /etc/prometheus/rules vim /etc/prometheus/rules/alerts.rules内容如下yamlgroups: - name: hostStatsAlert rules: - alert: hostCpuUsageAlert expr: (1 - avg(irate(node_cpu_seconds_total{modeidle}[5m])) by (instance))*100 85 for: 1m labels: severity: critical annotations: summary: Instance {{ $labels.instance }} CPU usage high description: {{ $labels.instance }} CPU usage above 85% (current value: {{ $value }}) - alert: hostMemUsageAlert expr: (1 - (node_memory_MemAvailable_bytes{} / (node_memory_MemTotal_bytes{})))* 100 70 for: 1m labels: severity: critical annotations: summary: Instance {{ $labels.instance }} MEM usage high description: {{ $labels.instance }} MEM usage above 70% (current value: {{ $value }})重启Prometheus后可通过以下地址查看规则与告警状态规则列表http://127.0.0.1:9090/rules告警状态http://127.0.0.1:9090/alerts3. 模拟告警触发测试创建CPU负载脚本bashvim load_cpu.sh #!/bin/bash while true; do : done chmod x load_cpu.sh ./load_cpu.sh运行后观察Prometheus 检测到CPU使用率 85%告警状态先变为PENDING持续1分钟后触发FIRING状态并发送至AlertmanagerAlertmanager 根据路由发送邮件通知总结本文完整介绍了从 Alertmanager 部署、配置邮件接收、编写Prometheus告警规则到模拟告警测试的全过程。通过合理配置路由、抑制规则与通知模板可构建一套稳定、易用的监控告警系统。后续可继续扩展集成企业微信、钉钉、Slack等通知配置告警分级与静默规则使用Webhook对接自愈系统
基于布谷鸟算法优化Tsallis熵图像分割附Matlab代码 ✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 🍎 往期回顾关注个人主页:Matlab科研工作室 👇 关注我领取海量matlab电子书… 2026/5/17 3:29:37
“我们数据太少,做不了风控?”——这可能只是个借口 “我们数据太少,做不了风控。”在金融科技行业多年,我听过太多团队用这个理由解释产品迭代缓慢、风控效果不佳。有意思的是,说这话的团队往往已经积累了数万甚至数十万用户。这真的只是个数据量问题吗? 文章目录 一、数据量≠数据价值 二、小数据也能做大风控 1 内部数据金… 2026/7/7 4:52:48
改进粒子群算法的RSSI定位附matlab代码 ✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和… 2026/5/17 3:29:35
云教务如何设计线上教学机构对接classin及多校区管理 【今日个性改造方案分享】 划分多层级校区管理架构,与ClassIn、腾讯会议、Zoom、Teams平台的链路打通,支持纯线上教学机构、单校(或多校)区面授与线上课混合教学机构;区分各校区独立数据边界. 各校区可自主完成自身授课… 2026/7/8 2:43:32
hw-buaa-lab贡献指南:三步教你成为开源项目参与者 hw-buaa-lab贡献指南:三步教你成为开源项目参与者 【免费下载链接】hw-buaa-lab This reposiroty will provide the content of Huawei BUAA Joint Laboratory. 项目地址: https://gitcode.com/openeuler/hw-buaa-lab 前往项目官网免费下载:https… 2026/7/8 2:41:32
2026百度网盘不限速新版工具评测:速度直飙80MB/s,到底是不是噱头? 说实话,作为一名整天和服务器、代码打交道的后端开发,私底下我也是个不折不扣的数字囤积控,手头攒了差不多好几十个 T 的各种技术资料和媒体资源。经常有同行在社区里跟我吐槽,说现在用大厂的客户端同步数据,那速度慢得… 2026/7/8 2:41:32
2026降AI率工具红黑榜:降AIGC平台怎么选?实测才敢推! 千笔AI、ThouPen、豆包位列红榜,适配国内高校AI率检测规范,效果稳定;黑榜需避开低质免费工具、无正规检测对接、改写痕迹生硬的平台;选择时应优先匹配三维模型:降AI效果 - 学术合规性 - 使用成本。 一、红榜࿱… 2026/7/8 2:39:29
# QNX JSON 库参考 概述 libjson 库允许应用程序解码和编码 JSON 数据,用于读取和解释复杂数据或在系统之间传输数据。 库提供三大功能领域: 解码器 (Decoder):读取 JSON 数据,导航对象和数组,读取和获取各个值的元数据编码器 (Encode… 2026/7/8 2:39:29
Java Lambda 类型安全查询是怎么实现的?从字节码层面拆一遍 你可能写过 wrapper.eq(User::getName, "tom") 这种代码,但你有没有想过:一个方法引用,是怎么变成 SQL 里的列名的?今天从 JVM 层面拆到底。 一、字符串列名到底有什么问题 大部分 Java 数据库框架的条件构造器&#x… 2026/7/8 2:37:28
BetterNCM安装器:高效管理网易云插件的最佳选择 BetterNCM安装器:高效管理网易云插件的最佳选择 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer 还在为网易云音乐插件的繁琐安装流程而烦恼吗?BetterNCM安装器是… 2026/7/8 0:02:48
运动控制系统安全设置对比:ECI3808的3种限位保护与急停逻辑实现 运动控制系统安全机制深度解析:限位保护与急停逻辑的设计哲学在精密制造与自动化领域,运动控制系统的安全设计绝非简单的功能堆砌,而是一套融合了机械工程、电气原理和软件算法的防御体系。当一台数控机床以每分钟数万转的速度运转࿰… 2026/7/8 0:06:48
AI大模型应用开发:小白也能抓住的红利风口,收藏这篇入门指南! 文章指出,虽然微软等科技巨头在裁员,但英伟达等公司却在积极扩招AI相关人才,尤其是具身智能、仿真等领域。AI行业正在经历结构性调整,传统岗位被淘汰,而大模型应用开发等新岗位需求旺盛。对于想转行或学习AI的普通人来… 2026/7/8 0:10:49
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/7 11:26:57
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/7 11:26:57
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/7 11:26:58