繁体   English   中英

未发现目标的 Prometheus 警报规则

[英]Prometheus Alert Rule for Absent Discovered Target

我在使用prometheus/kube-prometheus-stack 25.1.0配置监控模块时收到警报。

警报

[FIRING:1] KubeProxyDown - critical
Alert: Target disappeared from Prometheus target discovery. - critical
 Description: KubeProxy has disappeared from Prometheus target discovery.
 Details:
  • alertname: KubeProxyDown
  • prometheus: monitoring/prometheus-kube-prometheus-prometheus
  • severity: critical

我认为这是kube-prometheus-stack 25.xx中的新默认规则。 它不存在于prometheus/kube-prometheus-stack 21.xx中。

EKS 和 minikube 中也出现了同样的问题。

KubeProxyDown规则

alert: KubeProxyDown
expr: absent(up{job="kube-proxy"}
  == 1)
for: 15m
labels:
  severity: critical
annotations:
  description: KubeProxy has disappeared from Prometheus target discovery.
  runbook_url: https://runbooks.prometheus-operator.dev/runbooks/kubernetes/kubeproxydown
  summary: Target disappeared from Prometheus target discovery.

我该如何解决这个问题?

如果有人能帮助我,我将不胜感激

这在 AWS EKS 集群 v1.21 中对我有用:

$ kubectl edit cm/kube-proxy-config -n kube-system
---
metricsBindAddress: 127.0.0.1:10249 ### <--- change to 0.0.0.0:10249
$ kubectl delete pod -l k8s-app=kube-proxy -n kube-system

注意,配置 map 的名称是kube-proxy-config ,而不是kube-proxy

kube-proxy中的metrics-bind-address发生了变化。 此处此处此处发布的问题之后。 我可以提出以下建议。 kube-proxy ConfigMap 更改为不同的值:

$ kubectl edit cm/kube-proxy -n kube-system
## Change from
    metricsBindAddress: 127.0.0.1:10249 ### <--- Too secure
## Change to
    metricsBindAddress: 0.0.0.0:10249
$ kubectl delete pod -l k8s-app=kube-proxy -n kube-system

之前的两个答案都是正确的,但是如果您要升级到 eks 1.22,则只能将 kube-proxy 插件升级到 v1.22.11-eksbuild.2(当前版本),cm 将自动更新

metricsBindAddress: 127.0.0.1:10249

metricsBindAddress: 0.0.0.0:10249

无需手动更新

您可以从https://docs.aws.amazon.com/eks/latest/userguide/managing-kube-proxy.html查看 AWS kube-proxy 插件文档

暂无
暂无

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

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