RabbitMQ ist die beliebteste kostenlose und quelloffene Message-Queueing- oder Message-Broker-Software. RabbitMQ hat ursprünglich das Advanced Message Queuing Protocol (AMQP) implementiert. Es unterstützt auch Protokolle wie STOMP (Streaming Text Oriented Messaging Protocol) und MQTT (Message Queuing Telemetry Transport).
Im Allgemeinen wird Message-Broker-Software zum Senden und Empfangen von Nachrichten zwischen verschiedenen Arten von verteilten Diensten, Systemen oder Anwendungen verwendet.
RabbitMQ, das in der Programmiersprache Erlang geschrieben wurde, hat die folgenden Funktionen:
- Unterstützung mehrerer Protokolle – AMQP, MQTT, STOMP, HTTP
- Unterstützung für Client-Schnittstellen und Bibliotheken für alle wichtigen Programmiersprachen
- Clustering/Hochverfügbarkeit
- Vielfältige Tools und Plugins
- Routing von Nachrichten zwischen Vermittlungsstellen und Warteschlangen
- Benutzerfreundliches Webinterface zur Überwachung und Steuerung des Nachrichtenbrokers
- Nachverfolgungsfunktionen
In diesem Tutorial zeigen wir Ihnen, wie Sie RabbitMQ unter Ubuntu 18.04 (Bionic Beaver) einrichten.
KaninchenMQ auf Ubuntu installieren
Lassen Sie uns zuerst die Ubuntu-Repositories aktualisieren:
sudo apt-get update
Fügen Sie den Signaturschlüssel mit einem der folgenden Befehle hinzu:
wget -O - "https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc" | sudo apt-key add -
oder
sudo apt-key adv --keyserver "hkps.pool.sks-keyservers.net" --recv-keys "0x6B73A36E6026DFCA"
Erstellen Sie eine Rabbitmq-Repository-Datei.
vim /etc/apt/sources.list.d/bintray.rabbitmq.list
Folgende Repositories zur Datei hinzufügen.
deb https://dl.bintray.com/rabbitmq-erlang/debian bionic erlang deb https://dl.bintray.com/rabbitmq/debian bionic main
Speichern und schließen Sie die Datei.
Repository-Aktualisierung ausführen.
sudo apt-get update
Installieren Sie RabbitMQ Server.
sudo apt-get install rabbitmq-server
Überprüfen Sie den Status des RabbitMQ-Servers.
sudo systemctl status rabbitmq-server.service
Wenn RabbitMQ nicht läuft, starten Sie den Dienst mit diesem Befehl:
sudo systemctl start rabbitmq-server.service
Aktivieren Sie den RabbitMQ-Dienst beim Systemstart.
sudo systemctl enable rabbitmq-server
RabbitMQ-Ports
4369:epmd, ein Peer-Erkennungsdienst, der von RabbitMQ-Knoten und CLI-Tools verwendet wird
5672, 5671:verwendet von AMQP 0-9-1- und 1.0-Clients ohne und mit TLS
25672:verwendet für knotenübergreifende und CLI-Tools-Kommunikation
35672-35682:Wird von CLI-Tools (Erlang-Distributions-Client-Ports) für die Kommunikation mit Knoten verwendet und wird aus einem dynamischen Bereich zugewiesen
15672:HTTP-API-Clients, Verwaltungs-UI und Rabbitmqadmin (nur wenn die Management-Plugin aktiviert)
61613, 61614:STOMP-Clients ohne und mit TLS (nur wenn das STOMP-Plugin aktiviert ist)
1883, 8883:(MQTT-Clients ohne und mit TLS, wenn das MQTT-Plugin aktiviert ist
15674:STOMP-over-WebSockets-Clients (nur wenn das Web-STOMP-Plugin aktiviert ist)
15675:MQTT-over-WebSockets-Clients (nur wenn das Web-MQTT-Plugin aktiviert ist)
RabbitMQ Management UI durch Firewall zulassen
Die RabbitMQ-Verwaltungskonsole läuft auf Port 15672 und ihr muss die Berechtigung über die Firewall gewährt werden.
sudo ufw allow 15672
Nach erfolgreicher Installation können wir auf die Webverwaltungskonsole zugreifen und sie läuft auf Port „15672“.
Aber standardmäßig ist das Plugin „Installation Management Console“ nicht aktiviert. Dieses Plugin wird benötigt, um den RabbitMQ-Server zu überwachen und zu verwalten. Es wird auch verwendet, um Warteschlangen und Nachrichtenraten zu überwachen und Warteschlangen, Bindungen und Benutzer usw. zu verwalten.
Lassen Sie uns sehen, wie wir das Plug-in „Installation Management Console“ aktivieren können. Aber bevor wir das tun, werfen wir einen Blick auf alle verfügbaren RabbitMQ-Plugins.
sudo rabbitmq-plugins list
Aktivieren Sie jetzt das RabbitMQ Management-Plugin
sudo rabbitmq-plugins enable rabbitmq_management
Wir können über den standardmäßigen Gastbenutzer auf die Verwaltungskonsole zugreifen. Aber wir müssen einen neuen Admin-Benutzer erstellen und hinzufügen, um auf die Verwaltungskonsole zugreifen zu können.
Hier erstellen wir einen Benutzer mit dem Benutzernamen „admin“ und dem Passwort ist ebenfalls „admin“. Aber ich würde empfehlen, aus Sicherheitsgründen ein starkes Passwort zu verwenden.
sudo rabbitmqctl add_user admin admin
Jetzt markieren wir unseren Benutzer „admin“, den wir in den obigen Schritten erstellt haben, als „administrator“
sudo rabbitmqctl set_user_tags admin administrator
Jetzt können wir den RabbitMQ-Dienst neu starten
sudo systemctl restart rabbitmq-server.service
Bevor wir auf die Management UI zugreifen, lassen Sie uns die Ports auf dem Server überprüfen
sudo netstat -tunlp
Verwaltungs-UI-Zugriff
Auf die Verwaltungskonsole kann über eine dieser URLs zugegriffen werden:
- http://ServerIp oder
- Hostname:15672/
Beispiel:– http://13.236.85.236:15672 / oder http://rabbitmq.fosslinux.com:15672
Sie können das Anmeldefenster der Konsole anzeigen.
Verwenden Sie dann den bereits erstellten Admin-Benutzernamen und das Kennwort, um auf das Dashboard zuzugreifen.
Sie haben den RabbitMQ-Server erfolgreich installiert und konfiguriert.
Wenn Sie Probleme oder Fragen haben, können Sie diese gerne im Kommentarbereich unten stellen.