【问题标题】:Kubernetes ingress nginx grafana dashboard prometheus data was emptyKubernetes 入口 nginx grafana 仪表板 prometheus 数据为空
【发布时间】:2019-02-15 10:37:39
【问题描述】:

我刚刚使用本教程 https://kubernetes.github.io/ingress-nginx/user-guide/monitoring/ 完全设置了 prometheus 和 grafana 仪表板。

我尝试在 prometheus 中查询一些东西,它成功地绘制了图表。但是当我通过连接到 prometheus 数据访问我的 Grafana 仪表板时,它会返回如下图所示的空图表。

我是否遗漏了步骤中的某些内容?

【问题讨论】:

  • 您是否看到数据已填充到 promethues 数据库中?
  • 如何查看? Exec -it 到容器中?
  • 你能在浏览器中查看prometheus url吗
  • 是的,它工作正常。
  • 你的 grafana 是否显示其他指标(不是 ngnix)?

标签: kubernetes grafana prometheus nginx-ingress


【解决方案1】:

您可能没有在导入仪表板之前在 Grafana 中创建数据源。手册中没有指定,但没有它仪表板将无法正常工作。

如何在 Grafana 中创建数据源:

  1. 打开配置(齿轮)-> 数据源
  2. 按“添加数据源”
  3. 选择普罗米修斯
  4. 指定 Prometheus 服务器 URL:(例如:http://10.22.0.3:32150/
  5. 按“保存并测试”
  6. 查看通过测试的确认信息。

现在,在从JSON 导入 Nginx Ingress Dashboard 期间,从下拉列表中选择现有数据源。仪表板的 URL 对我不起作用,所以我只是复制粘贴了整个 JSON 内容,除了两个带有 cmets 的第一行。

对于现有仪表板,您可以更改数据源:

  1. 打开仪表板 -> 管理
  2. 点击“Nginx 入口控制器”
  3. 打开其设置(齿轮图片在顶部)
  4. 选择“JSON 模型”
  5. 将所有带有“datasource”的行:“old_data_source_name”更新为所需的名称
  6. 按“保存更改”
  7. 按左侧“设置”下的绿色“保存”按钮

或者,您可以编辑仪表板上的每个元素并从下拉列表中选择所需的数据源。不是很方便的方式,所以我宁愿再次导入仪表板。

【讨论】:

  • 我已经做了,但还是空的。我还公开了指标。
  • 能否尝试编辑 CPU 使用率图表并检查是否选择了正确的数据源?您是否有可能在导入新仪表板后查看旧仪表板?
  • 好的,我先试试。
  • @JustinusHermawan 你解决过这个问题吗?
  • @dvdblk 还没有。
【解决方案2】:

检查注释是否应用于 metrics 服务 对象:prometheus.io/scrape: "true"

我遇到了和你一样的问题,这为我解决了。我正在使用 helm 部署我的 nginx-ingress。我有以下设置使这项工作:

.controller.metrics.enabled: true

.controller.metrics.serviceMonitor.enabled: true

.controller.metrics.service.annotations.prometheus.io/scrape: true

【讨论】:

  • 嗨!我也有同样的问题,但我对 Helm 和 Grafana 生态系统也很陌生。您能否告诉,也许添加一些屏幕截图,如何执行在 Grafana 中设置 NginX Ingress 仪表板所需的所有步骤?
猜你喜欢
  • 2019-08-25
  • 1970-01-01
  • 2020-11-30
  • 1970-01-01
  • 2019-12-10
  • 2021-10-16
  • 2018-04-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多