繁体   English   中英

如何为mesos和HAProxy进程编写prometheus警报规则。

[英]How to write prometheus alert rules for mesos and HAProxy process down.?

我正在进行一项任务,我需要配置和验证prometheus alertmanager.User应该在mesos进程和HAProxy进程关闭时发出警报,我试图在互联网上找到这些警报规则,但没有找到正确的。 任何人都可以告诉我如何编写这些警报规则。 基本上需要条件条款。

这取决于您监控事物的方式。 我们以HAProxy为例,说你正在使用HAProxy Exporter( https://github.com/prometheus/haproxy_exporter )来监控它。 HAProxy Exporter包含一个名为haproxy_up的指标,它指示它是否成功地haproxy_up HAProxy(当Prometheus反过来刮掉了导出器时)。 如果无法haproxy_up HAProxy,则haproxy_up的值为0 ,您可以对此发出警报。 假设您的HAProxy Exporter的Prometheus作业名称为haproxy-exporter 然后,您可以编写如下警告规则:

ALERT HAProxyDown
  IF haproxy_up{job="haproxy-exporter"} == 0
  FOR 5m
  LABELS {
    severity = "page"
  }
  ANNOTATIONS {
    summary = "HAProxy {{ $labels.instance }} down",
    description = "HAProxy {{ $labels.instance }} could not be scraped."
  }

如果任何HAProxy实例无法被刮过超过5分钟,这将发送警报。

如果您想知道导出器 (而不是HAProxy本身)是否已关闭,您可以使用表达式up{job="haproxy-exporter"} == 0来查找任何向下的HAProxy Exporter实例。 可能你会想要实际检查两者。

我不能说Mesos及其出口商,因为我对它们没有任何经验,但我想它会有类似的东西。

同样对于导出mesos指标,您应该使用mesos-exporter。 https://github.com/prometheus-junkyard/mesos_exporter https://hub.docker.com/r/prom/mesos-exporter/它还有mesos_up指标。 您的警报应该与HaProxy警报相同:

ALERT MesosMasterDown
  IF mesos_up{job="mesos-master-exporter"} == 0
  FOR 5m
  LABELS {
    severity = "page"
  }
  ANNOTATIONS {
    summary = "Mesos master {{ $labels.instance }} down",
    description = "Mesos master {{ $labels.instance }} could not be scraped."
  }

ALERT MesosSlaveDown
  IF mesos_up{job="mesos-slave-exporter"} == 0
  FOR 5m
  LABELS {
    severity = "page"
  }
  ANNOTATIONS {
    summary = "Mesos slave {{ $labels.instance }} down",
    description = "Mesos slave {{ $labels.instance }} could not be scraped."
  }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM