RabbitMQ + Prometheus

<< Click to Display Table of Contents >>

Navigation:  Linux - Ubuntu 24.04 > RabbitMQ >

RabbitMQ + Prometheus

Installation des Prometheus-Plugin

Damit Prometheus Daten von RabbitMQ abfragen kann, muss das entsprechende Plugin aktiviert werden:

 

sudo rabbitmq-plugins enable rabbitmq_prometheus

 

 

Nachdem RabbitMQ die Konfigurationsdatei neu gelesen hat, steht unter dem Port 15692 die Informationen über RabbitMQ fpr Prometheus zur Verfügung - oder halt über localhost:15692.

Die Konfigurationsdatei unter Prometheus muß entsprechend angepasst werden:

 

- job_name: 'rabbitmq'

    static_configs:

      - targets: ['localhost:15692', ..... ]

 

 

Mögliche Absicherungen

Es kann eventuell nicht gewollt sein, daß die Abfrage auf die Statistiken frei ist - dann muß man das absichern.

Internes Interface

Das Plugin lauscht nur auf der internen Adresse. Dazu legt man einen Eintrag in der Konfigurationsdatei "rabbitmq.conf" an:

 

prometheus.tcp.ip = 127.0.0.1

 

Firewall-Regel

Wenn von extern darauf zugegriffen werden muß (weil RabbitMQ nicht lokal bei Prometheus läuft), dann kann man mit Firewall-Regeln den Zugriff erlauben:

 

ufw allow from <prometheus-ip> to any port 15692 proto tcp

 

Abfrage über Proxy

Zuerst muß man die KOnfiguration im Apache vornehmen in der Art:

 

<VirtualHost *:443>

    ServerName www.deine-domain.de

    # ... deine bestehende Konfiguration, SSLCertificateFile etc. bleibt wie sie ist ...

 

    <Location "/rabbitmq-metrics">

        AuthType Basic

        AuthName "RabbitMQ Metrics"

        AuthUserFile /etc/apache2/prometheus.htpasswd

        Require valid-user

 

        ProxyPass        http://127.0.0.1:15692/metrics

        ProxyPassReverse http://127.0.0.1:15692/metrics

    </Location>

</VirtualHost>

 

 

Und danach muß man entsprechend auch die Konfiguration in der Promtheus Konfiguration anpassen:

 

scrape_configs:

  - job_name: 'rabbitmq'

    scheme: https

    basic_auth:

      username: prometheus

      password: <passwort>

    static_configs:

      - targets: ['www.deine-domain.de']

    metrics_path: /rabbitmq-metrics