路由配置

路由(Route)配置是 Alertmanager 自定义资源的一部分,用于控制 Prometheus 触发的告警在到达接收器之前的分组和过滤方式。

当路由更改时,Prometheus Operator 会重新生成 Alertmanager 自定义资源以反映更改。

有关配置路由的更多信息,请参阅官方 Alertmanager 文档

路由配置 - 图1备注

本节参考假设你已经熟悉 Monitoring 组件的协同工作方式。有关详细信息,请参阅本节

路由限制

Alertmanager 根据接收器和路由树来代理 Prometheus 的告警,该路由树根据标签将告警过滤到指定接收器。

Alerting Drivers 为 Alertmanager 将告警代理到非原生接收器,例如 Microsoft Teams 和 SMS。

在配置路由和接收器的 Rancher UI 中,你可以配置有一个根的路由树,然后再配置一个深度,这样的树就有两个深度。但是如果在直接配置 Alertmanager 时使用 continue 路由,你可以让树更深。

每个接收器用于一个或多个通知提供商。因此,如果你需要将发送到 Slack 的每个告警也发送到 PagerDuty,你可以在同一个接收器中配置两者。

路由配置

标签和注释的注意事项

标签用于识别可能影响通知路由的信息。告警的标识信息可能包括容器名称,或应接收通知的团队的名称。

注释用于标识不影响告警接收者的信息,例如 Runbook URL 或错误消息。

接收器

路由需要引用一个已经配置好的接收器

分组

字段默认描述
分组依据N/A用于分组的标签列表。所有标签都必须是唯一的。如果提供了特殊标签“…”(由所有可能的标签聚合),标签必须在列表中是唯一的元素。接受字符串列表。有关详细信息,请参阅上游文档
组等待时长30s在发送之前,缓冲同一组告警的等待时间。
组间隔5m等待多长时间才发送已添加到告警组的告警,其中该告警组的初次通知已被发送。
重复间隔4h等待多长时间后,才重新发送已发送的告警。

匹配

Match 字段指一组相等匹配器,用于根据告警上定义的标签来识别要发送到指定路由的告警。在 Rancher UI 中添加键值对时,它们对应于以下格式的 YAML:

  1. match:
  2. [ <labelname>: <labelvalue>, ... ]

Match Regex 字段指一组正则表达式匹配器,用于根据在该告警上定义的标签来识别要发送到指定路由的告警。在 Rancher UI 中添加键值对时,它们对应于以下格式的 YAML:

  1. match_re:
  2. [ <labelname>: <regex>, ... ]