RabbitMQ
O RabbitMQ é o software de mensageria responsável pela troca de mensagens entre o ambiente do cliente e a nuvem da Senior.
Para realizar a sua instalação, o pré-requisito é ter o Erlang instalado.
Importante
Todas as aplicações que necessitem do RabbitMQon-premises para integração com a Senior X devem utilizar o mesmo RabbitMQ. Portanto, caso ele já esteja instalado, não é necessário realizar a instalação novamente.
Erlang
O Erlang é a linguagem de programação utilizada pelo RabbitMQ e o OTP é o conjunto de bibliotecas e frameworks responsáveis pela execução do Erlang.
- Efetue o download do software para o Windows 32 bits ou 64 bits;
- Armazene o software em uma pasta temporária. Por exemplo: C:\plataforma\instalacao;
- Execute o instalador com as configurações padrões.
Observação
É necessário garantir que as versões do Erlang e do RabbitMQ sejam compatíveis entre si, conforme a matriz de compatibilidade oficial, a fim de assegurar o correto funcionamento do ambiente e evitar falhas de execução ou instabilidade no serviço.
Instalação do Rabbit
- Efetue o download do software de mensageria;
- Armazene o software em uma pasta temporária. Por exemplo, C:\plataforma\instalacao;
- Execute o instalador com as configurações padrões.
Após instalação, o RabbitMQ cria as pastas C:\Program Files\RabbitMQ Server\rabbitmq_server-4.0.9\ e %APPDATA%\RabbitMQ com os arquivos de configuração e persistência dos dados.
Importante
O usuário utilizado para fazer a instalação do RabbitMQ deve ser o mesmo utilizado para fazer as instalações/atualizações dos sistemas Senior.
Gerenciador web
O gerenciador web do RabbitMQ está desabilitado por padrão. Para visualizar o funcionamento do RabbitMQ é necessário ativá-lo:
- Através do prompt de comando, em modo Administrador, acesse a pasta C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.9\sbin de onde está instalado o RabbitMQ, ou no menu do Windows, crie um atalho para o RabbitMQ Command Prompt;
- Execute o comando que habilita o gerenciador web: rabbitmq-plugins enable rabbitmq_management. No prompt será exibida uma mensagem de configuração sendo aplicada e realizada com sucesso.
Usuário administrador
Como recomendação de segurança, é importante desativar o usuário padrão guest e criar um específico de administração do RabbitMQ, pois ele estará exposto na internet conforme os bloqueios de firewall:
- Através de um navegador, acesse o gerenciador web em http://localhost:15672, informando os dados de acesso:
- Usuário: guest
- Senha: guest
Observação
A porta 15672 é para acesso via HTTP, depois da instalação do integrador, a porta para acesso do administrador do RabbitMQ passará a ser 15671 (HTTPS) por conta da configuração do certificado digital no RabbitMQ pelo instalador.
- Acesse Admin e em Add a user:
- Informe um Username;
- Informe uma senha forte no campo Password e a confirme. Não utilize caracteres especiais, por exemplo "@", "/" e/ou ":";
- No campo Tags, informe administrator, para que esse usuário seja o administrador do RabbitMQ;
- Clique em Add User.
- Acesse Admin > Users e selecione o usuário administrador recém-criado para atribuir as permissões para ele;
- Clique no botão Set Permissions e defina as permissões completas ao usuário administrador;
- Faça logoff do usuário guest e teste o acesso com o usuário administrador criado;
- Acesse Admin > Users e selecione o usuário guest;
- Acesse a sessão Permissions e clique no botão Clear para remover as permissões deste usuário padrão.
- Na sessão Update this user, informe a senha guest, remova a tag administrator e clique no botão Update user.
Homologação e atualização do RabbitMQ on-premises
A versão homologada atualmente do RabbitMQ para uso on-premises com os sistemas da Senior é a versão 4.0.x.
A seguir, descrevemos o processo de homologação e o passo a passo recomendado para realizar a migração de forma segura e compatível com os nossos serviços.
Homologação
O RabbitMQ foi atualizado da versão 3.8.x para a versão 4.0.x. Essa homologação confirma a compatibilidade dos sistemas Senior com versões mais recentes do RabbitMQ, incluindo a versão 4.0.x.
Importante
- É obrigatório ter o Erlang instalado como pré-requisito.
- Todos os serviços continuaram funcionando normalmente durante e após o processo de atualização.
Requisitos para Atualização
A atualização deve ser gradual, passando por cada versão minor intermediária.
Exemplo: 3.8.x → 3.9.x → 3.10.x → 3.11.x → 3.12.x → 3.13.x →4.0.x
Não é possível pular versões.
Em cada etapa, é obrigatório ativar as feature flags disponíveis antes de seguir para a próxima versão.
Ativação de Feature Flags
Após atualizar para cada versão, ative todas as feature flags executando o seguinte comando:
rabbitmqctl enable_feature_flag all
Depois disso, reinicie o serviço RabbitMQ. Só então prossiga para a próxima versão.
Passo a Passo para Migração do RabbitMQ
- Realize um backup completo do ambiente RabbitMQ antes de iniciar o processo de atualização;
- Atualize gradualmente por versão minor, seguindo esta rota:
- 3.8.x → 3.9.x
- 3.9.x → 3.10.x
- 3.10.x → 3.11.x
- 3.11.x → 3.12.x
- 3.12.x → 3.13.x
- 3.13.x → 4.0.x
- Para cada versão, siga os passos abaixo:
- Baixe e instale a versão desejada do RabbitMQ;
- Execute o comando:
rabbitmqctl enable_feature_flag all
- Reinicie o serviço RabbitMQ;
- Valide o funcionamento do serviço;
- Prossiga somente se tudo estiver funcionando corretamente.
- Após cada atualização, verifique:
- Conexão com os aplicativos integrados;
- Preservação das filas existentes;
- Processamento correto das mensagens.
ObservaçãoPara a configuração padrão, não é necessário definir variáveis de ambiente. Se desejar ver as variáveis disponíveis para configuração, consulte Particularidades dos produtos no bloco abaixo. Caso as configurações não sejam localizadas, uma mensagem será exibida durante a instalação/atualização que pode ser ignorada.

Particularidades dos produtos
A instalação manual do RabbitMQ não é o procedimento padrão a ser utilizado no processo de implantação. É recomendável a instalação descrita anteriormente.
Esse conteúdo não se aplica em todos os cenários, somente para usuários que possuem o sistema eDocs e a Senior X no mesmo servidor:
Variáveis rabbitmq-env.bat:
set ERLANG_HOME=C:\Program Files\erl9.2
set RABBITMQ_BASE=C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.14
set RABBITMQ_NODE_PORT=6672
set RABBITMQ_NODENAME=SeniorX
set RABBITMQ_SERVICENAME=SeniorXRabbitMQ
set RABBITMQ_CONFIG_FILE=%RABBITMQ_BASE%\etc\rabbitmq
set RABBITMQ_MNESIA_BASE=%RABBITMQ_BASE%\db
set RABBITMQ_MNESIA_DIR=%RABBITMQ_MNESIA_BASE%%RABBITMQ_NODENAME%
set RABBITMQ_LOG_BASE=%RABBITMQ_BASE%\log
set RABBITMQ_LOGS=%RABBITMQ_LOG_BASE%%RABBITMQ_NODENAME%.log
set RABBITMQ_SASL_LOGS=%RABBITMQ_LOG_BASE%%RABBITMQ_NODENAME%-sasl.log
set RABBITMQ_PLUGINS_DIR=%RABBITMQ_BASE%\plugins
set RABBITMQ_ENABLED_PLUGINS_FILE=%RABBITMQ_BASE%\enabled_plugins
Os diretórios podem mudar conforme a instalação no ambiente.
English
Español
English
Español


