Formas de fazer failover simples com um servidor e dois IPs

2

A configuração é um servidor (Windows 2008) em um local com duas conexões de entrada. Como o servidor precisa interagir com vários dispositivos no local e terá um pequeno número de conexões de entrada, um data center não é uma opção e, em vez disso, as conexões por cabo / DSL devem ser usadas.

O objetivo é que os usuários acessem o link e sejam enviados ao endereço IP principal ou a um IP secundário se o principal estiver inativo.

Já vi conselhos para usar o DNS round robin para isso, mas o cache de um IP para uma interface inadequada é algo que eu gostaria de evitar.

É algo assim possível com essas restrições?

    
por CrassHoppr 27.10.2012 / 16:57

2 respostas

1

A maioria dos navegadores tentará endereços disponíveis alternativos, se a primeira tentativa de conexão falhar . Mas isso é obviamente dependente da implementação, não há diretiva RFC ou recomendação para isso. Então, se você precisa ter certeza , você teria que modificar sua zona DNS e remover o endereço IP do link com falha. O problema de armazenamento em cache pode ser resolvido diminuindo o TTL para um valor baixo - 300 segundos são bastante comuns e um bom compromisso entre a eficiência do armazenamento em cache e a atualidade dos dados.

Um possível problema com o DNS RR é que não há como especificar qualquer tipo de prioridade para os registros DNS (não conseguir usar registros SRV de DNS devido à falta de suporte ao navegador), para que os clientes enviem solicitações para ambos endereços devido a rotação de registros em uma resposta DNS. Se um de seus links for mais "caro" (em quaisquer termos) do que o outro e você não o tiver usado a menos que o link principal falhe, o DNS RR não é a solução certa para o seu problema.

Outra opção seria usar um proxy reverso em um local alternativo / por meio de um link alternativo (supostamente ter um tempo de atividade melhor que o DSL / link de cabo - por exemplo, uma máquina virtual em um data center) que monitore ativamente suas duas conexões lidar com o failover automaticamente sem a necessidade de alterar os registros DNS.

    
por 27.10.2012 / 17:19
0

Is something like this possible with these constraints?

Não.

Quando você tem um balanceador de carga com vários servidores, há um requisito de que o balanceador de carga esteja sempre on-line. Existem várias maneiras de ter isso, por exemplo, o balanceador de carga pode não ser realmente um servidor - pode ser que muitos estejam fingindo ser um. Se um falhar, outro assume.

No entanto, existe a suposição de que, no final remoto, existe algo para atender à solicitação.

Se você se encontrar na situação em que o link morre, os pacotes não chegarão ao seu servidor - e não há absolutamente nada que você possa fazer sobre isso. DNS RR é a próxima melhor coisa, porque você está dizendo ao cliente para ir e tentar outro endereço IP. Caso contrário, o cliente repetirá o mesmo IP alegremente, não obterá resposta e desistirá.

O serviço frontal deve estar sempre acessível para que tudo isso funcione. Sem isso, simplesmente não pode. As soluções de HA geralmente assumem que os links são bons. Sim, há coisas como failover em nível de datacenter (por exemplo, para um powercut em nível de país), mas eles também têm tempo de inatividade associado ao tráfego convergir para um conjunto diferente de IPs - nunca será instantâneo.

    
por 27.10.2012 / 17:17