Pular para o conteúdo principal

RabbitMQ

1. Visão Geral​

O add-on RabbitMQ implanta uma instância do RabbitMQ, um message broker que fala AMQP 0-9-1. Ele permite que flows e apps troquem mensagens de forma assíncrona, desacoplando produtores e consumidores: filas de trabalho, publicação/assinatura via exchanges, retentativas, dead-lettering e absorção de picos de carga.

Use quando você precisa de mensageria durável entre componentes. Para cache/contadores use Cache (Valkey); para dados relacionais, PostgreSQL; para busca vetorial, Qdrant.

Tags do catálogo: Message broker, AMQP, Queues.

2. Pré-requisitos​

  • Um squad e um ambiente já selecionados na tela de Add-ons.

3. Passo a passo do Deploy​

O assistente de deploy do RabbitMQ tem 3 passos:

Passo 1 — General​

CampoObrigatórioDescrição
Add-on NameSimNome do add-on dentro do ambiente. Apenas letras minúsculas, números e hífens. Exemplo: my-broker.
Virtual HostNãoVirtual host padrão provisionado na instância. Padrão: /.
Admin PublicNãoQuando ligado, a UI de gerenciamento nativa do RabbitMQ fica acessível publicamente. Desligado por padrão (acesso restrito pela plataforma).

Passo 2 — Admin User​

Define o usuário administrador (de gerenciamento) da instância.

CampoObrigatórioDescrição
UsernameSimNome do usuário administrador. Padrão: admin.
PasswordSimSenha do usuário administrador.

Passo 3 — Resources​

Define os recursos computacionais alocados para a instância.

CampoPadrãoSugestão/Máximo
Memory Limit512Mi1Gi
CPU Limit500m2000m
Storage Size5Gi20Gi

Ao clicar em Deploy Add-on, a implantação é iniciada. O add-on passa a aparecer na aba My Add-ons do ambiente.

4. Após o Deploy​

O painel do add-on na plataforma cobre o ciclo completo de operação do dia a dia, organizado em abas (com escopo por virtual host onde faz sentido):

  • Overview — gráficos ao vivo de taxas de mensagens e de mensagens enfileiradas (janela selecionável: 1 min a 24 h), totais (ready/unacked/total) e contagens de topologia (filas, exchanges, conexões, canais, consumidores).
  • Exchanges — listar, declarar (tipo, durabilidade, argumentos), inspecionar bindings e fazer publicação de teste, e excluir.
  • Queues — listar, declarar (classic/quorum/stream) e, por fila, o ciclo completo: bindings, publish, get messages (espiar ou consumir), purge e excluir.
  • Connections — inspecionar as conexões de clientes abertas e seus canais, e forçar o fechamento de uma conexão.
  • Credentials — usuários com tags e permissões (configure/write/read por virtual host) e permissões de tópico; criar/editar/excluir e exportar as credenciais de um usuário para um secret da plataforma.
  • Settings — recursos (memória/CPU/armazenamento — o armazenamento só cresce) e a visibilidade (Privado/Público) da UI de gerenciamento.

Além do painel, a UI de gerenciamento nativa do RabbitMQ está disponível pelo botão Open management UI, com o conjunto completo de recursos. Quando Admin Public está desligado (padrão), o acesso é protegido pela sessão da plataforma (ainda assim é necessário fazer login no broker).

Conectando um flow ao RabbitMQ​

Flows se conectam ao broker via AMQP, usando a Internal URL do add-on (amqp://<nome-do-addon>:5672). As credenciais de conexão devem ficar em secrets:

  1. Na aba Credentials, crie um usuário dedicado com permissões mínimas (evite compartilhar o admin), e use Export — a plataforma grava host, port (AMQP), username, password, vhost e useTls em um secret (novo ou existente).
  2. No conector do flow, referencie essas propriedades como {$.env.<secret>.<prop>}.

O Export fica habilitado apenas para usuários cuja senha a plataforma detém (o admin e usuários criados pelo painel); um usuário criado por fora aparece com o export desabilitado.

5. Perguntas frequentes​

Posso alterar a senha do usuário administrador?

Sim. Na aba Credentials, o usuário de gerenciamento permite alterar a senha (apenas a senha). A instância é atualizada para aplicar a nova senha; qualquer secret já exportado com a senha antiga precisa ser re-exportado.