Pergunta

Estou interessado em estratégias de falha cruzada para aplicativos da Web, de modo que, se o site principal falhar, os usuários desembarcam perfeitamente no site de falha em outro colo.

O lado do aplicativo parece ser descoberto com uma configuração de banco de dados de escravos mestre entre o Colos e os serviços projetados para se recuperar e poder captar o meio do fluxo. Estou tentando descobrir a estratégia para mover o tráfego do site principal para o site de falha. Failover de DNS, mesmo com TTLs baixos, parece carregar um Bancer de latência.

Que estratégias você recomendaria para mover rapidamente o tráfego entre colos, assumindo que os servidores no colo principal sejam inacessíveis?

Se você tem outra experiência / palavras interessantes de sabedoria sobre failover cruzado, eu adoraria ouvi-las também.

Foi útil?

Solução

Os mecanismos baseados em DNS são problemáticos, mesmo se você colocar TTLs baixos em seus arquivos de zona.

A razão para isso é que muitas aplicações (por exemplo, MSIE) mantêm seus próprios caches que ignoram o TTL. Outro software fará um único gethostbyname() ou chamada equivalente e armazene o resultado até que o programa seja reiniciado.

Pior ainda, sabe -se que muitos servidores DNS recursivos dos ISPs ignoram os TTLs abaixo de seu próprio mínimo preferido e impõem seus próprios TTLs mais altos.

Em última análise, se o site for executado de ambos os data centers sem Alterando seu endereço IP e você precisa procurar acordos para "Multihoming" via anúncios globais de rota BGP4.

Com o Multihoming, você precisa obter pelo menos a /24 Netblock de espaço de endereço IP "provedor independente" (também conhecido como "PI") e, em seguida, isso só será anunciado para a tabela de roteamento global no site de backup, se o site principal ficar offline.

Outras dicas

Quanto ao DNS, eu gosto de fazer referência, "Por que o balanceamento de carga do servidor global baseado em DNS não funciona". Para tudo o mais - Use BGP.

Projetar redes para carregar o balanço usando o BGP ainda não é uma tarefa fácil e eu mesmo eu certamente não sou especialista nisso. Também é mais complexo do que a Wikipedia pode dizer, mas existem alguns artigos interessantes na web que detalham como isso pode ser feito:

Sempre há mais se você procurar BGP e balanceamento de carga. Existem também alguns whitepapers na rede que descrevem como a Akamai faz seu carregamento global de carga (acredito que também é BGP.), O que é sempre interessante ler e aprender.

Além dos conceitos óbvios que você pode usar software e hardware para alcançar, você também pode verificar com seu ISP/provedor/colo se eles puderem configurá -lo.

Além disso, não há ofensa em relação à sua escolha de colo (quem é o provedor?), Mas a maioria dos lugares deve ser configurada para lidar com as notas e assim por diante, elas não devem exigir que você tome ações. É claro que inundações ou estrangeiros sempre podem atacar, mas nesse caso acho que há questões mais importantes. :-)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top