Pular para o conteúdo principal

❓ Perguntas Frequentes (FAQ) - HAProxy

⚖️ O que é o HAProxy na plataforma?

O HAProxy é um balanceador de carga e proxy reverso de alto desempenho.
Ele distribui requisições entre múltiplos servidores backend, melhora a disponibilidade, otimiza o desempenho e pode gerenciar conexões SSL.

🔀 O que são backends e frontends no HAProxy?
  • Frontend: responsável por receber conexões do cliente (porta, protocolo, certificado).
  • Backend: conjunto de servidores para onde o tráfego é direcionado.
💓 O que é um health check no HAProxy?

São testes automáticos realizados para verificar se os servidores backend estão ativos.
Se um servidor falhar, é marcado como DOWN e deixa de receber tráfego até se recuperar.

🚨 O que significa o erro "503 Service Unavailable"?

Indica que não há nenhum servidor backend disponível.
Causas possíveis:

  • Todos os servidores estão fora do ar
  • Falha nos health checks
  • Erro de configuração
🚫 O que significa o erro "Connection refused" no HAProxy?

Ocorre quando o HAProxy não consegue se conectar a um backend.
Possíveis motivos: serviço parado, porta incorreta ou firewall bloqueando a comunicação.

🔢 O que significa "Too many connections" no HAProxy?

Significa que o número máximo de conexões simultâneas foi atingido.
Solução: ajustar maxconn no haproxy.cfg e aumentar o limite de arquivos abertos no sistema.

📜 O que são logs no HAProxy e como usá-los?

São registros de requisições, erros e status dos servidores.
Permitem identificar falhas como 503, SSL e quedas de backend.

Visualização em tempo real:

tail -f /var/log/haproxy.log
🔐 O que é SSL Offloading no HAProxy?

É o processo de finalizar conexões HTTPS no próprio HAProxy, aliviando os servidores backend dessa carga.

🖥️ O que é clustering no HAProxy?

É a configuração de múltiplos HAProxy para alta disponibilidade.
Se o primário falhar, um secundário assume automaticamente.

⚙️ Como configurar sticky sessions no HAProxy?

Use o parâmetro cookie nos backends para manter a sessão do cliente no mesmo servidor.
Exemplo:

cookie SERVERID insert indirect nocache
📊 Como monitorar o HAProxy em tempo real?

Ative o stats page no haproxy.cfg:

listen stats
bind *:9000
stats enable
stats uri /haproxy?stats

Acesse http://seu-ip:9000/haproxy?stats para visualizar métricas.

🛡️ O HAProxy suporta rate limiting?

Sim. É possível limitar requisições por IP usando ACLs e stick-tables.
Exemplo:

stick-table type ip size 200k expire 30s store http_req_rate(10s)
🔄 Qual a diferença entre balanceamento TCP e HTTP no HAProxy?
  • TCP Mode: funciona na camada 4 (transportes), ideal para bancos de dados, SMTP, etc.
  • HTTP Mode: camada 7, permite inspeção de cabeçalhos, regravação de URLs e regras avançadas.
🌐 Como habilitar IPv6 no HAProxy?

Basta configurar o bind com IPv6:

bind :::80 v4v6

Isso permite escutar tanto em IPv4 quanto IPv6.

📦 Posso usar o HAProxy como proxy reverso para múltiplos domínios?

Sim. Configure ACLs para diferenciar domínios:

acl host_site1 hdr(host) -i site1.com
use_backend site1_backend if host_site1