RabbitMQ è il più popolare software gratuito e open source per l'accodamento dei messaggi o il broker di messaggi. RabbitMQ originariamente implementato Advanced Message Queuing Protocol (AMQP). Supporta anche protocolli come STOMP (Streaming Text Oriented Messaging Protocol) e MQTT (Message Queuing Telemetry Transport).
In genere, il software di gestione dei messaggi viene utilizzato per inviare e ricevere messaggi tra vari tipi di servizi, sistemi o applicazioni distribuiti.
RabbitMQ, che è stato scritto nel linguaggio di programmazione Erlang, ha le seguenti caratteristiche:
- Supporto per più protocolli: AMQP, MQTT, STOMP, HTTP
- Supporto per interfacce client e librerie per tutti i principali linguaggi di programmazione
- Clustering / Alta disponibilità
- Un insieme diversificato di strumenti e plugin
- Instradamento dei messaggi tra centralini e code
- Interfaccia web intuitiva per monitorare e controllare il broker di messaggi
- Funzionalità di tracciamento
In questo tutorial, ti mostreremo come configurare RabbitMQ su Ubuntu 18.04 (Castoro bionico).
Installazione di RabbitMQ su Ubuntu
Innanzitutto, aggiorniamo i repository Ubuntu:
sudo apt-get update
Aggiungi la chiave di firma utilizzando uno dei seguenti comandi:
wget -O - "https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc" | sudo apt-key add -
o
sudo apt-key adv --keyserver "hkps.piscina.sks-keyserver.net" --recv-keys "0x6B73A36E6026DFCA"
Crea file repository Rabbitmq.
vim /etc/apt/sources.elenco.d/bintray.conigliomq.elenco
Aggiungi i seguenti repository al file.
deb https://dl.cestino.com/rabbitmq-erlang/debian bionic erlang deb https://dl.cestino.com/rabbitmq/debian bionic main
Salva e chiudi il file.
Esegui aggiornamento repository.
sudo apt-get update
Installa il server RabbitMQ.
sudo apt-get install rabbitmq-server
Controlla lo stato del server RabbitMQ.
sudo systemctl status rabbitmq-server.servizio
Se RabbitMQ non è in esecuzione, avvia il servizio con questo comando:
sudo systemctl start rabbitmq-server.servizio
Abilita il servizio RabbitMQ all'avvio del sistema.
sudo systemctl abilita conigliomq-server
Porte RabbitMQ
4369: epmd, un servizio di peer discovery utilizzato dai nodi RabbitMQ e dagli strumenti CLI
5672, 5671: utilizzato da AMQP 0-9-1 e 1.0 client senza e con TLS
25672: utilizzato per la comunicazione tra nodi e strumenti CLI
35672-35682: utilizzato dagli strumenti CLI (porte client di distribuzione Erlang) per la comunicazione con i nodi ed è allocato da un intervallo dinamico
15672: Client API HTTP, UI di gestione e rabbitmqadmin (solo se è abilitato il plugin di gestione)
61613, 61614: client STOMP senza e con TLS (solo se il plugin STOMP è abilitato)
1883, 8883: (client MQTT senza e con TLS, se il plug-in MQTT è abilitato
15674: Client STOMP-over-WebSockets (solo se il plugin Web STOMP è abilitato)
15675: Client MQTT-over-WebSockets (solo se è abilitato il plugin Web MQTT)
Consenti interfaccia utente di gestione RabbitMQ tramite firewall
La console di gestione RabbitMQ viene eseguita sulla porta 15672 e deve essere concessa l'autorizzazione tramite il firewall.
sudo ufw consenti 15672
Dopo una corretta installazione, possiamo accedere alla console di gestione web e funziona sulla porta "15672".
Ma per impostazione predefinita, il plug-in "Installation Management Console" non è abilitato. Questo plugin è necessario per monitorare e gestire il server RabbitMQ. Viene anche utilizzato per monitorare le code, la frequenza dei messaggi e gestire code, associazioni e utenti, ecc.
Vediamo come possiamo abilitare il plugin 'Installation Management Console'. Ma prima di farlo, diamo un'occhiata a tutti i plugin RabbitMQ disponibili.
sudo rabbitmq-elenco dei plugin
Ora abilita il plugin RabbitMQ Management
sudo rabbitmq-plugins abilita rabbitmq_management
Possiamo accedere alla Console di gestione utilizzando l'utente ospite predefinito. Ma dobbiamo creare e aggiungere un nuovo utente amministratore per accedere alla console di gestione.
Qui creiamo un utente con nome utente 'admin' e la password è anche 'admin'. Ma consiglierei di utilizzare una password complessa per la sicurezza.
sudo rabbitmqctl add_user admin admin
Ora tagghiamo il nostro utente "admin", che abbiamo creato nei passaggi precedenti, come "amministratore"
sudo rabbitmqctl set_user_tags amministratore amministratore
Ora siamo pronti per riavviare il servizio RabbitMQ
sudo systemctl riavvia rabbitmq-server.servizio
Prima di accedere all'interfaccia utente di gestione, controlliamo le porte sul server
sudo netstat -tunlp
Accesso all'interfaccia utente di gestione
È possibile accedere alla console di gestione utilizzando uno di questi URL:
- http://ServerIp o
- nome host:15672/
Ad esempio: - http://13.236.85.236:15672 / o http://rabbitmq.fosslinux.com:15672
Sarai in grado di visualizzare la finestra di accesso alla console.
Quindi usa il nome utente e la password dell'amministratore già creati per accedere alla dashboard.
Hai installato e configurato correttamente il server RabbitMQ.
Se hai problemi o domande, non esitare a chiedere nella sezione commenti qui sotto.