NetScaler tente novamente no próximo servidor se falhar

1

Eu tenho 8 servidores que são balanceados pelo NetScaler VPX (10). Como fazer o balanceador de carga do NetScaler reenviar a solicitação para o próximo servidor se o servidor anterior respondeu com o status 502?

    
por Jonas 22.05.2017 / 09:01

1 resposta

1

Tudo depende da sua configuração. No entanto, em todos os casos, não é o próprio appliance NetScaler que tentará o próximo servidor. Você teria que criar uma construção em sua configuração para que, quando o servidor backend retornar um HTTP 502, a resposta para o cliente seja reconfigurada para que o cliente tente novamente a solicitação. A nova requisição que entra no NetScaler deve ser identificada nesse ponto, então você pode forçar o servidor backend sendo usado para aquela requisição.

Uma opção é configurar os membros do grupo de servidores com um ID do servidor e usar esse ID do servidor para executar o balanceamento de carga explícito. A resposta inicial com falha deve retornar um cookie contendo o ID do servidor.

Se o cookie estiver presente na segunda solicitação e tiver um ID de servidor válido, esse servidor de back-end será usado.

Em suma, você teria que usar os seguintes componentes no NetScaler:

  • Content Switching (a solicitação tem um cookie de ID do servidor ou não)
  • Balanceamento de carga com definições de Id do servidor para cada ligação de grupo de serviços
  • Reescreva a resposta da solicitação inicial.

Se o seu aplicativo não suporta redirecionamentos, você está sem sorte, pois o NetScaler não pode repetir a solicitação original com base na resposta original do primeiro servidor.

Felicidades, Jan

    
por 23.05.2017 / 09:54