使用Prometheus监控RabbitMQ

2017-11-16 阅读: RabbitMQ Prometheus

RabbitMQ的Monitoring文档中介绍了各种监控RabbitMQ的方式。 其中推荐了第三方的Prometheus Plugin, 这是一个第三方实现RabbitMQ的管理插件,可以作为Prometheus的RabbitMQ Exporter。

安装RabbitMQ Prometheus Plugin

这里RabbitMQ的版本为3.6.14,Erlang版本为Erlang R16B03-1,从Release for latest RabbitMQ 3.6.x versions这个链接中下载以下插件:

accept-0.3.3.ez
prometheus-3.4.0.ez
prometheus_httpd-2.1.4.ez
prometheus_process_collector-1.1.0.ez
prometheus_rabbitmq_exporter-v3.6.12.1.ez

将下载的插件拷贝到RabbitMQ的插件目录,rpm形式安装的RabbitMQ的插件目录位于/usr/lib/rabbitmq/plugins下。

启用插件:

rabbitmq-plugins enable accept
rabbitmq-plugins enable prometheus
rabbitmq-plugins enable prometheus_httpd
rabbitmq-plugins enable prometheus_rabbitmq_exporter
rabbitmq-plugins enable prometheus_process_collector

重启RabbitMQ,访问http://<ip>:15672/api/metrics可以得到RabbitMQ Exporter暴露的metrics。

配置Prometheus

Prometheus的配置文件中增加如下内容:

- job_name: 'rabbitmq'
    metrics_path: /api/metrics
    static_configs:
     - targets:
        - 192.168.1.3:15672
       labels:
         instance: s3
     - targets:
        - 192.168.1.4:15672
       labels:
         instance: s4
     - targets:
        - 192.168.1.5:15672
       labels:
         instance: s5
  • 注意metrics path为/api/metrics

Grafana配置

下载Grafana Dashboard https://raw.githubusercontent.com/deadtrickster/prometheus_rabbitmq_exporter/master/priv/dashboards/RabbitMQErlangVM.json

将上面的dashboar导入后需要做一些修改,加入host变量,并修改各个图表的PromQL加入host变量作为查询条件,通过下拉列表选择查看不同rabbitmq节点的Dashboard。

rabbitmq-grafana.jpg

参考

标题:使用Prometheus监控RabbitMQ
本文链接:https://blog.frognew.com/2017/11/use-prometheus-monitoring-rabbitmq.html
转载请注明出处。

目录