kubernetes - Kubernetes/Prometheus指标不匹配

标签 kubernetes prometheus

我有一个在Kubernetes(Azure AKS)中运行的应用程序,其中每个Pod包含两个容器。我还设置了Grafana,以显示各种度量标准,其中一些来自Prometheus。我正在尝试解决一个单独的问题,在这样做时,我注意到某些指标似乎在数据源之间不匹配。

例如,kube_deployment_status_replicas_available返回值30,而kubectl -n XXXXXXXX get pod列出100个都在运行,而kube_deployment_status_replicas_unavailable返回值0。此外,如果我使用kubectl进行部署,我会看到期望值。

$ kubectl get deployment XXXXXXXX
NAME       DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
XXXXXXXX   100       100       100          100         49d

同一集群中还有其他所有值正确关联的应用程序(命名空间),因此我不确定故障可能出在哪里,或者不确定是否有办法确定哪个值正确。任何指导将不胜感激。谢谢

最佳答案

基于获得kube_deployment_status_replicas_available指标,我假设您已从Prometheus中从kube-state-metrics抓取指标。听起来它的部署有些古怪。它可能是:

  • 缓存的指标数据
  • 和/或根本无法从kube-apiserver
  • 中提取当前指标

    我会:
  • 检查kube-state-metrics正在运行的版本,并查看它是否与K8s版本兼容。
  • 重新启动kube-state-metrics Pane 。
  • 检查日志kubectl logs kube-state-metrics`
  • 检查Prometheus日志
  • 如果看不到任何内容,请尝试使用--log.level=debug标志启动Prometheus。

  • 希望能帮助到你。

    关于kubernetes - Kubernetes/Prometheus指标不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56154162/

    相关文章:

    docker - 如何保护普罗米修斯数据?

    go - 如何使用go客户端查询kubernetes自定义api(networking.gke.io/v1beta1)?

    kubernetes - 检查我正在部署到正确的 kubernetes 集群的脚本

    prometheus - 在grafana中左加入普罗米修斯指标?

    prometheus - 在普罗米修斯的一项工作中注册多个黑盒导出器

    prometheus - AlertManager 停机警报,除非 429(多个请求)HTTP 状态代码

    kubernetes - 在gci镜像上启用Stackdriver Monitoring代理Google容器引擎集群

    docker - Flink 1.7.0仪表板不显示任务统计信息

    json - 如何使用 --set 为 Prometheus 图表设置值?

    python - Django:在 Docker 容器中运行时找不到模块