rabbitMQ监控

使用prometheus-operator监控RabbitMQ集群

1、插件式

使用 RabbitMQ 内置 Prometheus 插件(适用于 3.8.0+ 版本)

1.1 启用插件

rabbitmq-plugins enable rabbitmq_prometheus

1.2 验证指标接口

访问 http://<RabbitMQ-Service>:15692/metrics 确认指标暴露正常

2 部署 Exporter

独立部署 RabbitMQ Exporter(通用版本)
使用 Helm 或 YAML 文件部署 rabbitmq_exporter,示例 Deployment 配置:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: rabbitmq-exporter
spec:
  template:
    spec:
      containers:
      - name: exporter
        image: kbudde/rabbitmq-exporter
        env:
        - name: RABBIT_URL
          value: "http://<RabbitMQ-Service>:15672"
        - name: RABBIT_USER
          value: "premonitor"
        - name: RABBIT_PASSWORD
          value: "<密码>"

需替换实际 RabbitMQ 服务地址和凭证28。

3、配置 Prometheus 服务发现

3.1 创建 Service 和 ServiceMonitor

# Service 定义(针对 Exporter 或原生接口)
apiVersion: v1
kind: Service
metadata:
  name: rabbitmq-monitor
  labels:
    app: rabbitmq-monitor
spec:
  ports:
  - name: metrics
    port: 15692  # Exporter 默认端口 或 15692(内置插件)
  selector:
    app: rabbitmq  # 或 RabbitMQ Pod 标签
---
# ServiceMonitor 定义(Prometheus Operator)
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: rabbitmq-monitor
  namespace: monitoring
spec:
  endpoints:
  - port: metrics
    interval: 30s
    scheme: http
  selector:
    matchLabels:
      app: rabbitmq-monitor
  namespaceSelector:
    matchNames:
    - default # - <rabbitmq 监控 service所在命名空间>

通过 ServiceMonitor 实现自动指标抓取。

4、验证与可视化

4.1 检查 Prometheus Targets

在 Prometheus UI 的 Targets 页面确认 rabbitmq-monitor 状态为 UP。

4.2 导入 Grafana 仪表板

使用模板 ID 15210 导入预置的 RabbitMQ 监控大盘,关联 Prometheus 数据源27。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容