Desejo testar algumas alterações de configuração na sincronização unidirecional entre dois servidores que estão atrás de um balanceador de carga (isso é tudo a infraestrutura da Rackspace Cloud FYI). O problema que tenho é que não sei dizer em qual servidor estou com balanceamento de carga, porque o IP que recebo é sempre o IP do balanceador de carga.
Existe uma maneira simples (ou mesmo não muito simples) de saber para qual servidor eu realmente fui direcionado. Idealmente, eu gostaria de algo no navegador, porque significa que os membros da equipe não técnica também podem relatar problemas com relativa facilidade, mas qualquer idéia sobre as melhores abordagens para isso seria apreciada.
Informações adicionais: Ambos os servidores executam o Apache e o balanceador de carga possui a persistência de sessão configurada.
Você não está informando qual protocolo está usando, portanto, estou assumindo que estamos falando https.
Cada back-end provavelmente conhece algumas informações sobre si, que identificariam exclusivamente esse back-end. Pode ser um nome de host ou um endereço IP unicast. O back-end pode incluir essas informações em locais apropriados. Você pode incluí-lo em um rodapé em cada página. Ou, se você acha que é muito visível, inclua-o apenas em páginas que os usuários não visitariam em circunstâncias normais. Qualquer página de erro (404, 500 etc.) deve sempre incluir identificação de back-end.
Se o seu balanceador de carga estiver apenas com balanceamento de carga e não estiver fazendo mais nada, você encerrará https no back-end e sempre que uma conexão TCP for fechada e o cliente se reconectar, é possível que o cliente seja direcionado para um back-end diferente.
O balanceador de carga pode lembrar o back-end usado mais recentemente para todos os endereços IP do cliente vistos na última hora, para reutilizar o mesmo back-end na maioria das vezes. Qualquer informação mais detalhada, como cookies e ID do usuário, estaria fora do alcance do balanceador de carga; portanto, não era possível usá-la para manter o usuário no mesmo back-end.
Isso significa que qualquer identificação de qual back-end um usuário está usando deve ser feita com um pouco de sal, pois o usuário pode ter se deslocado entre os back-ends entre o momento em que ocorreu um problema e o tempo em que descobriu qual back-end estava usando. Mas ainda é uma informação valiosa, pois na maioria dos casos, ajudará a localizar logs relevantes mais rapidamente.
fonte