Voltar

Hospedagem RabbitMQ em VPS, já instalado

A hospedagem RabbitMQ em um VPS mantém suas filas de mensagens em um servidor só delas, com acesso root. Depois do pedido, o RabbitMQ 4 se instala sozinho, a interface de gerenciamento abre por HTTPS e o AMQP escuta na porta 5672, com o endereço, o login e a senha no seu painel. Declare as filas na interface ou no seu código e conecte seus apps com uma string de conexão.

De quanto poder você precisa?

Total$6.89/mês

Os preços incluem impostos.

Aumente ou reduza RAM e CPU quando quiser. O disco só pode crescer, então comece pequeno.

O que vem instalado no seu servidor RabbitMQ?

  • RabbitMQ 4 da build Alpine da imagem oficial do Docker com a interface de gerenciamento, na versão 4.x mais recente no momento da instalação
  • Interface de gerenciamento por HTTPS via Caddy em um endereço sslip.io, então o domínio é opcional
  • Porta 5672 aberta para conexões AMQP
  • Uma conta de administrador chamada yonetici em vez de guest, com senha gerada
  • Dados das filas guardados no volume Docker rabbit_veri
  • Arquivo Compose em /opt/seturack/rabbitmq/compose.yaml
  • Firewall com apenas as portas 22, 80, 443 e 5672 abertas

Qual tamanho você precisa para RabbitMQ?

A lista de verificação de produção do RabbitMQ pede pelo menos 4 GiB de RAM e 4 núcleos por nó e diz que o RabbitMQ não foi projetado para ambientes de um único núcleo. Trate o menor tamanho, 2 GB, como tamanho de desenvolvimento e testes, e para produção escolha 4 GB e adicione CPU. Os publicadores são freados quando o uso de memória passa de 60 por cento da RAM, e mensagens persistentes também ocupam o disco. Você pode aumentar RAM, CPU e disco separadamente pelo painel, e seus dados e seu endereço IP continuam os mesmos.

UsoTamanhoPreçoEscolher
Inicial 4 GB RAM · 2 vCore · 60 GB NVMe $6.89/mês
Médio 8 GB RAM · 4 vCore · 120 GB NVMe $13.62/mês
Potente 16 GB RAM · 8 vCore · 200 GB NVMe $25.15/mês

Para quem é?

  • Equipes que estão tirando tarefas em segundo plano do app web
  • Desenvolvedores que montam a troca de mensagens entre serviços
  • Projetos que usam Celery, Spring AMQP ou amqplib
  • Quem quer uma fila de verdade no desenvolvimento e nos testes

O que acontece depois do pedido?

  1. Defina o tamanho e conclua o pagamento.
  2. Seu servidor inicia e o RabbitMQ se instala sozinho. Nos nossos testes em servidores reais, isso levou cerca de 8 minutos.
  3. Na aba Visão geral, o link da linha Endereço do painel abre a interface de gerenciamento. Digite os dados das linhas Login e Senha.
  4. Conecte seu app: amqp://yonetici:SENHA@IP:5672/%2f
  5. Na aba Admin, crie um usuário e um virtual host (vhost) separados para o seu app.

Em todo servidor

  • Backup diário incluído no preço
  • Tráfego ilimitado
  • Acesso root completo
  • Aumente ou reduza RAM e CPU depois, e aumente o disco
  • Localização: Istanbul · IST-1.

Bom saber

  • A porta 5672 não tem TLS e está aberta para a internet, e o ufw não consegue fechá-la porque o Docker a publica. Para limitá-la, altere a linha da porta no compose.yaml para 127.0.0.1:5672:5672, execute docker compose up -d e conecte por um túnel SSH.
  • O limite de disco livre vem em 50 MB por padrão, que a documentação oficial considera adequado apenas para desenvolvimento. Aumente o disk_free_limit para produção.
  • Ao ultrapassar o limite de memória ou de disco, as conexões que publicam mensagens são bloqueadas. Conforme os consumidores retiram as mensagens, o alarme desaparece e o tráfego volta a fluir.
  • A imagem segue a tag 4-management-alpine, mas não se atualiza sozinha. Para uma versão 4.x mais nova, execute docker compose pull e docker compose up -d na pasta.

Perguntas e respostas sobre RabbitMQ

Como me conecto ao meu servidor RabbitMQ?

Sua string de conexão é amqp://yonetici:SENHA@IP:5672/%2f. O %2f no final representa o virtual host padrão, /. A especificação de URI do RabbitMQ diz que uma / simples no final significa um nome vazio. O IP e a senha estão no seu painel, e você passa essa string para a biblioteca cliente.

De quanta RAM o RabbitMQ precisa?

A lista de verificação oficial de produção do RabbitMQ pede pelo menos 4 GiB de RAM e 4 núcleos por nó. Para desenvolvimento e testes, você pode começar com 2 GB.

Como abro a interface de gerenciamento do RabbitMQ?

O link do Endereço do painel abre a interface por HTTPS. O login é yonetici e a senha está no seu painel. Pela interface, você cria filas, exchanges, usuários e virtual hosts e envia e recebe mensagens de teste. A porta 15672 não fica aberta para fora.

A conexão AMQP do RabbitMQ é criptografada?

A porta 5672 do RabbitMQ não tem TLS nesta instalação, então a senha e as mensagens trafegam sem criptografia. Para dados sensíveis pela internet, use um túnel SSH ou configure um listener TLS na porta 5671 com seu próprio certificado e publique essa porta.

Por que meus publicadores do RabbitMQ estão sendo bloqueados?

O RabbitMQ bloqueia as conexões que publicam quando o uso de memória passa de 60 por cento da RAM ou o disco livre cai abaixo do limite. O alarme desaparece conforme os consumidores retiram as mensagens. Você vê o estado na página Overview da interface de gerenciamento e, se isso continuar acontecendo, aumente o servidor.

Posso criar um usuário separado do RabbitMQ para o meu app?

Sim. Na aba Admin da interface, adicione um virtual host e um usuário e conceda as permissões. Pela linha de comando, em /opt/seturack/rabbitmq, execute docker compose exec rabbitmq rabbitmqctl add_user NOME SENHA. Um usuário novo só consegue se conectar depois de receber permissões.

Leia mais e veja apps parecidos