RabbitMQ é o mais popular software livre e de código aberto para enfileiramento de mensagens ou corretor de mensagens. RabbitMQ originalmente implementou Advanced Message Queuing Protocol (AMQP). Ele também oferece suporte a protocolos como STOMP (Streaming Text Oriented Messaging Protocol) e MQTT (Message Queuing Telemetry Transport).
Geralmente, o software corretor de mensagens é usado para enviar e receber mensagens entre vários tipos de serviços, sistemas ou aplicativos distribuídos.
RabbitMQ, que foi escrito na linguagem de programação Erlang, tem os seguintes recursos:
- Suporte para vários protocolos - AMQP, MQTT, STOMP, HTTP
- Suporte para interfaces de cliente e bibliotecas para todas as principais linguagens de programação
- Clustering / alta disponibilidade
- Um conjunto diversificado de ferramentas e plug-ins
- Roteamento de mensagens entre trocas e filas
- Interface da web amigável para monitorar e controlar o corretor de mensagens
- Recursos de rastreamento
Neste tutorial, vamos mostrar como configurar o RabbitMQ no Ubuntu 18.04 (castor biônico).
Instalando RabbitMQ no Ubuntu
Primeiro, vamos atualizar os repositórios do ubuntu:
sudo apt-get update
Adicione a chave de assinatura usando um dos seguintes comandos:
wget -O - "https: // github.com / rabbitmq / assinatura-keys / releases / download / 2.0 / chave de assinatura de liberação de rabbitmq.asc "| sudo apt-key add -
ou
sudo apt-key adv --keyserver "hkps.piscina.sks-keyservers.net "--recv-keys" 0x6B73A36E6026DFCA "
Criar arquivo de repositório Rabbitmq.
vim / etc / apt / sources.Lista.d / bintray.coelhomq.Lista
Adicionar os seguintes repositórios ao arquivo.
deb https: // dl.bandeja de lixo.com / rabbitmq-erlang / debian bionic erlang deb https: // dl.bandeja de lixo.com / rabbitmq / debian bionic main
Salve e feche o arquivo.
Executar atualização de repositório.
sudo apt-get update
Instale o servidor RabbitMQ.
sudo apt-get install rabbitmq-server
Verifique o status do servidor RabbitMQ.
sudo systemctl status rabbitmq-server.serviço
Se RabbitMQ não estiver em execução, inicie o serviço com este comando:
sudo systemctl start rabbitmq-server.serviço
Habilitar serviço RabbitMQ na inicialização do sistema.
sudo systemctl enable rabbitmq-server
Ports RabbitMQ
4369: epmd, um serviço de descoberta de pares usado por nós RabbitMQ e ferramentas CLI
5672, 5671: usado por AMQP 0-9-1 e 1.0 clientes sem e com TLS
25672: usado para comunicação entre nós e ferramentas CLI
35672-35682: usado por ferramentas CLI (portas de cliente de distribuição Erlang) para comunicação com nós e é alocado a partir de uma faixa dinâmica
15672: Clientes HTTP API, UI de gerenciamento e rabbitmqadmin (somente se o plugin de gerenciamento estiver habilitado)
61613, 61614: Clientes STOMP sem e com TLS (apenas se o plug-in STOMP estiver ativado)
1883, 8883: (clientes MQTT sem e com TLS, se o plug-in MQTT estiver ativado
15674: Clientes STOMP-over-WebSockets (apenas se o plugin Web STOMP estiver ativado)
15675: Clientes MQTT-over-WebSockets (apenas se o plug-in Web MQTT estiver ativado)
Permitir UI de gerenciamento do RabbitMQ por meio do firewall
O console de gerenciamento RabbitMQ é executado na porta 15672 e precisa de permissão por meio do firewall.
sudo ufw allow 15672
Após uma instalação bem-sucedida, podemos acessar o console de gerenciamento web e ele funciona na porta “15672”.
Mas, por padrão, o plugin 'Installation Management Console' não está habilitado. Este plugin é necessário para monitorar e gerenciar o servidor RabbitMQ. Ele também é usado para monitorar filas, taxas de mensagens e gerenciar filas, ligações e usuários, etc.
Vamos ver como podemos habilitar o plugin 'Installation Management Console'. Mas antes de fazermos isso, vamos dar uma olhada em todos os plug-ins RabbitMQ que estão disponíveis.
lista de plug-ins sudo rabbitmq
Agora habilite o plugin RabbitMQ Management
Sudo rabbitmq-plugins habilitar rabbitmq_management
Podemos acessar o console de gerenciamento usando o usuário convidado padrão. Mas precisamos criar e adicionar um novo usuário administrador para acessar o console de gerenciamento.
Aqui nós criamos um usuário com o nome de usuário 'admin' e a senha também é 'admin'. Mas eu recomendaria usar uma senha forte para segurança.
sudo rabbitmqctl add_user admin admin
Agora, marcamos nosso usuário 'admin', que criamos nas etapas acima, como 'administrador'
sudo rabbitmqctl set_user_tags administrador administrador
Agora estamos prontos para reiniciar o serviço RabbitMQ
sudo systemctl reiniciar servidor rabbitmq.serviço
Antes de acessarmos a IU de gerenciamento, vamos verificar as portas no servidor
sudo netstat -tunlp
Acesso à UI de gerenciamento
O console de gerenciamento pode ser acessado usando um destes URLs:
- http: // ServerIp ou
- nome do host: 15672 /
Por exemplo: - http: // 13.236.85.236: 15672 / ou http: // rabbitmq.fosslinux.com: 15672
Você poderá ver a janela de login do console.
Em seguida, use o nome de usuário e senha de administrador já criados para acessar o painel.
Você instalou e configurou o servidor RabbitMQ com sucesso.
Se você tiver quaisquer problemas ou perguntas, sinta-se à vontade para perguntar na seção de comentários abaixo.