Como configurar um balanceador de carga simples entre dois processos no VPS
Olá, querido(a) cliente da GeHost! 👋
Se você está aqui, provavelmente quer garantir que seu site ou aplicativo continue funcionando mesmo se um dos processos parar — como um servidor de aplicação ou um serviço de banco de dados. Isso é o que chamamos de balanceamento de carga: distribuir o tráfego entre dois ou mais processos para melhorar estabilidade e desempenho.
Como você está usando um VPS (servidor virtual privado) com acesso administrativo, vamos montar um balanceador simples usando apenas recursos nativos do sistema — sem precisar de ferramentas complexas.
💡 Dica do Sensei: Este guia é para quem já tem um VPS com acesso root, e quer configurar balanceamento entre dois processos (como dois servidores web rodando em portas diferentes). Se você não tem acesso root, isso não será possível — apenas a GeHost oferece hospedagem com cPanel, que não inclui acesso root.
Passo 1: Verifique os processos que deseja balancear
Antes de tudo, você precisa saber quais processos estão rodando e em quais portas. Por exemplo:
- Processo 1: Servidor web rodando em porta 8080
- Processo 2: Servidor web rodando em porta 8081
Use o comando abaixo no terminal (via SSH) para verificar:
sudo netstat -tuln | grep LISTEN
Isso mostrará todas as portas que estão ativas. Procure por 8080 e 8081 (ou as que você estiver usando).
Passo 2: Instale um balanceador simples (nginx como proxy)
Um dos métodos mais simples é usar o nginx como proxy reverso. Ele vai receber as requisições e distribuí-las entre os dois processos.
Instale o nginx (se ainda não estiver instalado):
sudo apt update && sudo apt install nginx -y
Após instalar, vamos configurar o nginx para balancear o tráfego.
Passo 3: Crie a configuração de balanceamento
Abra o arquivo de configuração do nginx para seu domínio (ou para o servidor principal):
sudo nano /etc/nginx/sites-available/seu-domínio
Substitua seu-domínio pelo nome do seu domínio ou IP (ex: meu-site.com ou 192.168.1.100).
Insira este conteúdo básico:
upstream backend {
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
server {
listen 80;
server_name seu-domínio.com;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Importante: Substitua seu-domínio.com pelo seu domínio real. As portas 8080 e 8081 são exemplos — ajuste conforme seus processos.
Salve o arquivo com Ctrl + O, depois Enter, e saia com Ctrl + X.
Passo 4: Ative a configuração
Link o arquivo para o diretório de sites ativos:
sudo ln -s /etc/nginx/sites-available/seu-domínio /etc/nginx/sites-enabled/
Teste a configuração:
sudo nginx -t
Se aparecer "syntax is ok", tudo certo. Reinicie o nginx:
sudo systemctl restart nginx
Passo 5: Verifique o balanceamento
Abra seu navegador e acesse seu domínio. Agora, cada requisição será enviada para um dos dois processos, alternando entre eles.
Para ver o efeito, você pode:
- Verificar logs dos dois processos (ex:
tail -f /var/log/meu-app.log) - Testar várias vezes e ver se os processos recebem requisições de forma alternada
Dica extra: Monitoramento simples
Para saber se um dos processos está offline, você pode usar um script simples que verifica se a porta está ativa. Se uma das portas parar, o nginx automaticamente desativa o servidor, e o tráfego vai para o outro.
Se precisar de ajuda com isso, nosso suporte está disponível nos primeiros 30 dias após a entrega. Basta entrar no painel do cliente e abrir um chamado.
Resumo rápido
- Verifique os processos e suas portas
- Instale o nginx
- Crie uma configuração com
upstreamapontando para os dois processos - Use
proxy_passpara redirecionar o tráfego - Teste e monitore
✨ Você agora tem um balanceador de carga simples, eficiente e totalmente customizável!
Se tiver dúvidas, não hesite em perguntar. A GeHost está aqui para te ajudar, com carinho e cuidado — assim como um bom Sensei. 🙏
Com carinho,
O Sensei da GeHost