Files
nexus/wiki/entities/Alertmanager.md
2026-04-22 04:03:04 +08:00

2.5 KiB
Raw Blame History

title, type, aliases, tags, date
title type aliases tags date
Alertmanager entity
Prometheus Alertmanager
Alertmanager OSS
alerting
prometheus
notification
devops
observability
2025-11-11

Alertmanager

Overview

Alertmanager 是 Prometheus 生态系统中的告警分发和路由组件。当 Prometheus 的告警规则触发时,告警被发送给 Alertmanager由 Alertmanager 负责抑制inhibition、分组grouping、静默silencing和路由routing到最终的通知通道邮件、Slack、PagerDuty、WeChat 等)。

Key Characteristics

  • 告警分组:将相似告警合并为一条通知,避免告警风暴
  • 抑制机制:当一个严重告警触发时,自动抑制相关的次要告警
  • 静默规则:基于时间窗口的告警静默,支持重复告警抑制
  • 多通道路由邮件、Slack、WeChat、Telegram、PagerDuty、Webhook
  • 重复间隔:未解决的告警按可配置间隔重复发送

Prometheus Configuration

# prometheus.yml
alerting:
  alertmanagers:
    - static_configs:
        - targets: ['alertmanager:9093']

Alertmanager Configuration

# alertmanager/config.yml
global:
  resolve_timeout: 5m

route:
  receiver: default
  group_wait: 10s          # 新告警等待 10s 再发送(收集同组告警)
  group_interval: 5m       # 告警组更新间隔
  repeat_interval: 3h      # 重复告警间隔

receivers:
  - name: default
    email_configs:
      - to: "youremail@example.com"
        from: "monitor@example.com"
        smarthost: "smtp.example.com:587"
        auth_username: "monitor@example.com"
        auth_password: "yourpassword"
    # Slack 配置示例
    slack_configs:
      - api_url: 'https://hooks.slack.com/services/xxx'
        channel: '#alerts'

Alertmanager vs Grafana Alerting

维度 Alertmanager Grafana Alerting
数据源 Prometheus 原生 多数据源
告警规则 Prometheus YAML Grafana UI / YAML
通知通道 原生多通道 原生 + 插件扩展
告警历史 需额外存储 内置告警历史
适用场景 标准化告警 仪表盘联动告警
  • Prometheus — 告警规则源和发送方
  • Grafana — 可替代 Prometheus Alerting 的告警方案