O que você descreve basicamente é chamado Clustering do SQL Server . Refere-se a um grupo de dois ou mais servidores (nós) que atuam juntos e são vistos como um único servidor virtual para os clientes.
Os clusters do SQL Server podem ser configurados como Ativo / Ativo ou Ativo / Passivo em um cenário de dois servidores. Ambos os nós do Microsoft SQL Server Cluster são dedicados a executar pelo menos uma única instância do SQL (Active-Active) ou pelo menos um desses nós é reservado como um standby para aceitar o failover de um SQL com falha Instância do servidor (ativo-passivo).
Aqui estão alguns artigos que você pode ler:
- Introdução aos princípios de clustering do SQL Server 2005
- SQLServerpedia.com - Visão geral da replicação - Tolerância de Faul
- Balanceamento de carga com o cluster do SQl Server 2005 em ativo / ativo configuração
Algum artigo descrevendo outras opções (no nível do aplicativo):