如何启用 Prometheus/Grafana 来显示我的 rabbitmq 指标?目前没有显示数据
Posted
技术标签:
【中文标题】如何启用 Prometheus/Grafana 来显示我的 rabbitmq 指标?目前没有显示数据【英文标题】:How do i enable Prometheus/Grafana to show my rabbitmq metrics ? It currently shows no data 【发布时间】:2021-07-04 11:51:00 【问题描述】:我正在使用 prometheus-community 堆栈。
我有一个 rabbitmq pod 在我的 K8s 集群中运行,我在 pod 中启用了 rabbitmq_prometheus,所以我可以从 localhost:15692 看到我的 rabbitmq 的时间序列数据。我还在 grafana(enter link description here)中安装了一个仪表板,以便能够看到这些数据。但是,我的 RabbitMQ 仪表板中没有显示任何数据。如下所示。 .
我还安装了 prometheus-community/prometheus-rabbitmq-exporter,将值文件保存在本地以便我可以对其进行更改,目前如下所示
prometheus:
monitor:
enabled: true
additionalLabels:
interval: 15s
namespace: []
rules:
enabled: false
additionalLabels:
我已将值文件应用到我的 helm 版本,但是当我对其进行检查时,我仍然得到 enabled: false 我不确定我遗漏了什么或做错了什么。
如何在 grafana 中显示我的 rabbitmq 指标?
【问题讨论】:
你是如何安装prometheus的?如果通过 helm,您可以为此共享值文件。你是怎么安装rabbitmq的?你是如何启用 rabbitmq_prometheus 的? 是的,通过 helm 我已经启用了 rabbitmq_prometheus @rock'nrolla 您能否分享一下 prometheus 和 rabbitmq 的配置/值文件以及您用来启用 rabbitmq_prometheus 的命令?它是寻找任何可能的错误配置并重现错误。 @rock'nrolla 启用 rabbitmq 指标,我运行命令 rabbitmq-plugins enable rabbitmq_prometheus 这让我可以看到端口 15692 上的指标 @rock'nrolla 还有我用 Helm 安装的 prometheus 来自 Prometheus-Community github 频道,所以配置仍然是默认值。 【参考方案1】:我并不真正了解您为使其工作而采取的步骤,但我了解您的问题是无法在 Prometheus 中导入 RabbitMQ 指标。所以这是解决方案。
1.使用kube-prometheus-stack
helm chart部署prometheus。由于 helm chart 带有“prometheus operator”,因此最好使用 PodMonitor 和/或 ServiceMonitor CRD,因为它们提供了更多的配置选项。 Here's 一些相关文档。
为大多数东西保留默认值(因为目的只是为了导入 RabbitMQ 指标),除了将 "prometheus.prometheusSpec.serviceMonitorSelector.matchLabels"
设置为标签值。像这样的
serviceMonitorSelector:
matchLabels:
monitoring-platform: core-prometheus
2. 使用 bitnami rabbitmq helm chart 部署 RabbitMQ。同样,由于此处的目的只是公开指标以供 prometheus 抓取,因此您可以在其中大部分使用默认值。这是值文件:
## Prometheus Metrics
metrics:
enabled: true
plugins: 'rabbitmq_prometheus'
podAnnotations:
prometheus.io/scrape: 'true'
prometheus.io/port: ' .Values.service.metricsPort '
## Prometheus Service Monitor
## ref: https://github.com/coreos/prometheus-operator
serviceMonitor:
enabled: true
interval: 30s
additionalLabels:
monitoring-platform: core-prometheus
因此使用serviceMonitor
标签(与prometheus 的标签serviceMonitorSelector
匹配)Prometheus 将RabbitMQ 识别为目标。
【讨论】:
@ife labolz :这对您来说仍然是个问题吗?以上是关于如何启用 Prometheus/Grafana 来显示我的 rabbitmq 指标?目前没有显示数据的主要内容,如果未能解决你的问题,请参考以下文章
如何在prometheus + grafana中显示零而不是最后一个值
使用 Thanos+Prometheus+Grafana 打造监控系统
如何使用 Spring Boot + Prometheus + Grafana 确定时间范围内的准确请求计数