RabbitMQ Integration Prometheus & Grafana

320 views
Skip to first unread message

Pakr.hong

unread,
Aug 23, 2021, 4:12:17 AM8/23/21
to rabbitmq-users
HI~

RabbitMQ clustering was created with 2 ubuntu and 2 windows.

I would like to check this RabbitMQ on the dashboard through prometheus and grafana at once.

Rabbitmq is version 3.9.3 and erlang is version 24.0.5. There are four nodes in total.

I'm using the manual in the official document, and the data value in Grafana at docker-compose is shown as the value set in the overview. Which part of the docker-compose should I modify to float my nodes?
I'd appreciate your help.

[My RabbitMQ dashboard]
이미지 14.png

[Prometheus & Grafana]
이미지 15.png

이미지 16.png

[cluster status]
root@master:~# rabbitmq-diagnostics -q cluster_status

Basics

Cluster name: testing-prometheus

Disk Nodes

rabbit@slave
rabbit@windowslave

RAM Nodes

rabbit@master
rabbit@window

Running Nodes

rabbit@master
rabbit@slave
rabbit@window
rabbit@windowslave

Versions

rabbit@master: RabbitMQ 3.9.3 on Erlang 24.0.5
rabbit@slave: RabbitMQ 3.9.4 on Erlang 24.0.5
rabbit@window: RabbitMQ 3.9.3 on Erlang 24.0
rabbit@windowslave: RabbitMQ 3.9.3 on Erlang 24.0

Maintenance status

Node: rabbit@master, status: not under maintenance
Node: rabbit@slave, status: not under maintenance
Node: rabbit@window, status: not under maintenance
Node: rabbit@windowslave, status: not under maintenance

Alarms

(none)

Network Partitions

(none)

Listeners

Node: rabbit@master, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication
Node: rabbit@master, interface: [::], port: 15672, protocol: http, purpose: HTTP API
Node: rabbit@master, interface: [::], port: 15692, protocol: http/prometheus, purpose: Prometheus exporter API over HTTP
Node: rabbit@master, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0
Node: rabbit@slave, interface: [::], port: 15672, protocol: http, purpose: HTTP API
Node: rabbit@slave, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication
Node: rabbit@slave, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0
Node: rabbit@slave, interface: [::], port: 15692, protocol: http/prometheus, purpose: Prometheus exporter API over HTTP
Node: rabbit@window, interface: [::], port: 15672, protocol: http, purpose: HTTP API
Node: rabbit@window, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication
Node: rabbit@window, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0
Node: rabbit@window, interface: 0.0.0.0, port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0
Node: rabbit@windowslave, interface: [::], port: 15672, protocol: http, purpose: HTTP API
Node: rabbit@windowslave, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication
Node: rabbit@windowslave, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0
Node: rabbit@windowslave, interface: 0.0.0.0, port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0
Node: rabbit@windowslave, interface: [::], port: 15692, protocol: http/prometheus, purpose: Prometheus exporter API over HTTP

Feature flags

Flag: drop_unroutable_metric, state: enabled
Flag: empty_basic_get_metric, state: enabled
Flag: implicit_default_bindings, state: enabled
Flag: maintenance_mode_status, state: enabled
Flag: quorum_queue, state: enabled
Flag: stream_queue, state: enabled
Flag: user_limits, state: enabled
Flag: virtual_host_metadata, state: enabled

Michal Kuratczyk

unread,
Aug 23, 2021, 10:52:15 AM8/23/21
to rabbitm...@googlegroups.com
Hi,

I'm afraid I didn't understand your question/problem. Is it that Grafana reports 3 nodes instead of 4?

Either way, there are at least a few things that you should look into:
* RAM nodes are a rarely used feature and we just announced the intention to deprecate it: https://blog.rabbitmq.com/posts/2021/07/4.0-deprecation-announcements/
* running nodes on different platforms with different versions of RabbitMQ and Erlang is asking for trouble. Mixing Erlang/RabbitMQ versions is ok during a rolling upgrade but I'd recommend against this being the norm: https://www.rabbitmq.com/which-erlang.html#clusters

Best,

--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-user...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rabbitmq-users/cfe5c372-59de-4456-9893-a4f84d6323dan%40googlegroups.com.


--
Michał
RabbitMQ team

Pakr.hong

unread,
Aug 23, 2021, 9:35:37 PM8/23/21
to rabbitmq-users
I installed two RabbitMQs on the windpower server and two RabbitMQs on the ubuntu server. I couldn't afford to use the resources, so I chose two because it was hard to configure three HA units.

I installed prometheus and grafana according to the manual on RabbitMQ homepage.
(https://www.rabbitmq.com/prometheus.html)

I downloaded from git on the labbitmq-server and built metrics.yml and overview.yml with docker-compose. But I didn't modify the contents inside, so I got another node, not my RabbitMQ Node.

$ git clone https://github.com/rabbitmq/rabbitmq-server.git
$ cd rabbitmq-server/deps/rabbitmq_prometheus/docker

$ docker-compose -f docker-compose-metrics.yml up -d
$ docker-compose -f docker-compose-overview.yml up -d

I don't know which part my Rabbitmq Node will be modified.

I'd like to see all four node values in RabbitMQ Master Node Grafana.
( Please understand that my mother tongue is not English ..)

2021년 8월 23일 월요일 오후 11시 52분 15초 UTC+9에 mkura...@gmail.com님이 작성:

Pakr.hong

unread,
Aug 24, 2021, 1:40:19 AM8/24/21
to rabbitmq-users
Opss.. my mistake  

I solved it.

I was foolishly customizing the docker-compose file.
prometheus.You can modify yaml

Thank you
2021년 8월 24일 화요일 오전 10시 35분 37초 UTC+9에 Pakr.hong님이 작성:
Reply all
Reply to author
Forward
0 new messages