Combinando clustering de failover e espelhamento de banco de dados

3

Quando você combina o clustering de failover e o espelhamento de banco de dados no SQL Server, é necessário alterar o valor de tempo limite do parceiro de espelhamento para que o cluster local tenha a chance de failover antes do failover do espelhamento do banco de dados. Estou curioso para saber o que as pessoas estão fazendo ao combinar essas tecnologias - eu ensino várias classes de HA e isso não é uma combinação muito comum.

Estas são minhas perguntas SE você estiver usando o cluster de failover e o espelhamento de banco de dados combinados. Se você pudesse respondê-las todas em cada resposta, isso seria muito útil para mim. Eu não preciso de uma explicação de por que as coisas precisam ser mudadas ou como as tecnologias funcionam - eu costumava ser dono das duas quando na Microsoft - estou interessado em práticas da indústria agora a possibilidade de casar com elas existe há 4 anos .

1) há quanto tempo, em média, é necessário que uma instância do SQL Server em cluster faça failover para você? (Eu sei que depende de quanto a recuperação de falhas é necessária, mas o que é uma média para você?)

2) para essas mesmas instâncias, para que você define o tempo limite do parceiro de espelhamento?

3) Você está confortável com o fato de que uma interrupção de cluster real poderia ocorrer e pode demorar um pouco até que o espelhamento perceba que a falha ocorreu porque você perdeu o tempo limite do parceiro de espelhamento?

Obrigado por todas as respostas!

    
por Paul Randal 17.06.2009 / 04:59

2 respostas

2

Paul, 1. Normalmente, alguns segundos, até alguns minutos, dependendo de ... (você sabe o resto).

  1. Se eu configurasse o failover automático, eu passaria por vários minutos. Dessa forma, o site para as conexões VPN do site teria tempo para voltar, o Cluster poderia reiniciar, etc. No mínimo, eu provavelmente iria com 4 minutos a mais do que levaria os nós do cluster para reiniciar no caso de um local falta de energia.

  2. Sim. Os problemas de DR são geralmente definidos como uma falha por mais de uma hora. Além disso, provavelmente demorará mais do que isso para o balanceador de carga global perceber que o outro site está inativo e carregar todo o DNS, além do tempo de TTL no DNS. Esse tempo total deve ser o limite superior do tempo para o failover automático.

por 17.06.2009 / 05:08
0

Eu não estava envolvido no design original, mas é assim que as coisas foram configuradas:

  • cluster de 2 nós em cada site, executando ativo / ativo
  • O aplicativo usa 5 bancos de dados em total, 4 executado em uma instância. o outro db 1 é executado por conta própria (muito maior carga)
  • Os sites estão conectados por fibra escura
  • Cada site tem o mesmo número de servidores da web que usam um espelho ciente cliente
  • O espelhamento de banco de dados está configurado para todos os 5 bases de dados
  • Existe outro servidor autônomo em cada site que pode atuar como testemunha. A testemunha atualmente é executada no site onde todos os principais são.

    1. Eu nunca vi um failover de cluster ocorrer. As falhas de espelho são rápidas, eu diria cerca de 10 segundos no máximo.

    2. O tempo limite do parceiro é de 30 segundos para todos os bancos de dados

    3. Foi por design que um failover de espelhamento ocorrerá antes de um failover de cluster. Os bancos de dados são agrupados como um nível adicional de redundância apenas, embora cada instância seja configurada para usar apenas metade da RAM disponível no servidor.

por 18.06.2009 / 19:54