O NGINX está gerando o erro 502 porque ele não pode fazer uma conexão http quando necessário para as upstreams (sua configuração ' proxy_pass http://example;
').
O primeiro lugar para verificar seria seus servidores upstream. Verifique os logs de erro do servidor e o syslog para procurar indicações sobre por que eles podem estar falhando.
O problema tornou-se maior quando você alterou o proxy da conexão SSL usando o balanceamento de carga TCP (stream), para encerrar o SSL e fazer conexões http para o upstream? Em caso afirmativo, um dos efeitos dessa alteração é que os upstreams podem lidar com conexões TCP mais frequentes:
- Ao fazer proxy na conexão SSL usando o balanceamento de carga TCP (fluxo), todas as solicitações na conexão são enviadas ao upstream na mesma conexão com proxy.
- Ao finalizar a conexão e, em seguida, fazer novas solicitações ao upstream, o NGINX criará, por padrão, uma nova conexão TCP para cada solicitação.
Você pode incentivar o NGINX a manter as conexões TCP abertas e reutilizá-las para futuras solicitações, configurando o NGINX para usar as conexões keepalive com os upstreams, conforme descrito. Essa alteração pode reduzir o número de erros 502.
Adicione o seguinte ao seu bloco de localização, junto com a diretiva proxy_pass
:
proxy_http_version 1.1;
proxy_set_header Connection "";
Adicione o seguinte à sua configuração de grupo upstream:
keepalive 20;
Veja aqui para mais detalhes: link