Partilhar via


Clustering de várias sub-redes do SQL Server

Aplica-se a:SQL Server

Um cluster de failover de várias sub-redes do SQL Server é uma configuração na qual cada nó de cluster de failover está conectado a uma sub-rede diferente ou a um conjunto diferente de sub-redes. Essas sub-redes podem estar no mesmo local ou em locais geograficamente dispersos. Os aglomerados em sítios geograficamente dispersos são por vezes referidos como aglomerados stretch. Como não há armazenamento compartilhado que todos os nós possam acessar, os dados devem ser replicados entre o armazenamento de dados nas várias sub-redes. Quando você replica dados, há mais de uma cópia dos dados disponíveis. Portanto, um cluster de failover de várias sub-redes fornece uma solução de recuperação de desastres, além de alta disponibilidade.

Cluster de failover de várias sub-redes do SQL Server (dois nós, duas sub-redes)

A ilustração a seguir representa uma FCI (instância de cluster de failover) de dois nós e duas sub-redes no SQL Server.

Diagrama que mostra uma arquitetura de várias sub-redes com MultiSubnetFailover.

Configurações de instância de cluster de failover de várias sub-redes

A seguir estão alguns exemplos de FCIs do SQL Server que usam várias sub-redes:

  • O SQL Server FCI SQLCLUST1 inclui Node1 e Node2. Node1 está conectado a Subnet1. Node2 está conectado a Subnet2. A Instalação do SQL Server vê essa configuração como um cluster de várias sub-redes e define a dependência do recurso de endereço IP como OR.

  • O SQLCLUST2 FCI do SQL Server inclui Node1, Node2 e Node3. Node1 e Node2 estão conectados à Subnet1. O nó 3 está conectado à Subnet2. A Instalação do SQL Server vê essa configuração como um cluster de várias sub-redes e define a dependência do recurso de endereço IP como OR. Como Node1 e Node2 estão na mesma sub-rede, essa configuração fornece alta disponibilidade local adicional.

  • O SQL Server FCI SQLCLUST3 inclui Node1 e Node2. Node1 está em Subnet1. Node2 está em Subnet1 e Subnet2. A Instalação do SQL Server vê essa configuração como um cluster de várias sub-redes e define a dependência do recurso de endereço IP como OR.

  • O SQL Server FCI SQLCLUST4 inclui Node1 e Node2. Node1 está conectado a Subnet1 e Subnet2. Node2 também está conectado a Subnet1 e Subnet2. A Instalação do SQL Server define a dependência do recurso de endereço IP como AND.

    Observação

    Essa configuração não é considerada uma configuração de cluster de failover de várias sub-redes porque os nós clusterizados estão no mesmo conjunto de sub-redes.

Considerações sobre recursos de endereço IP

Em uma configuração de cluster de failover de várias sub-redes, os endereços IP não pertencem a todos os nós no cluster de failover e podem não estar todos online durante a inicialização do SQL Server. A partir do SQL Server 2012 (11.x), você pode definir a dependência do recurso de endereço IP como OR. Isso permite que o SQL Server esteja online quando houver pelo menos um endereço IP válido ao qual ele possa se associar.

Observação

Nas versões do SQL Server anteriores ao SQL Server 2012 (11.x), uma tecnologia V-LAN stretch era usada em configurações de cluster multissite para expor um único endereço IP para failover entre sites. Agora que o SQL Server pode agrupar nós em sub-redes diferentes, você pode configurar clusters de failover do SQL Server em vários sites sem implementar a tecnologia V-LAN stretch.

Considerações sobre dependência de recurso de endereço IP OU

Talvez você queira considerar o seguinte comportamento de failover se definir a dependência de recurso de endereço IP como OR:

  • Quando há uma falha de um dos endereços IP no nó que atualmente possui o grupo de recursos de cluster do SQL Server, um failover não é acionado automaticamente até que todos os endereços IP válidos nesse nó falhem.

  • Quando ocorre um failover, o SQL Server fica online se puder se vincular a pelo menos um endereço IP válido no nó atual. Os endereços IP que não foram vinculados ao SQL Server na inicialização serão listados no log de erros.

Quando uma FCI do SQL Server é instalada lado a lado com uma instância autônoma do Mecanismo de Banco de Dados do SQL Server, tenha cuidado para evitar conflitos de número de porta TCP nos endereços IP. Os conflitos geralmente ocorrem quando duas instâncias do Mecanismo de Banco de Dados são configuradas para usar a porta TCP padrão (1433). Para evitar conflitos, configure uma instância para usar uma porta fixa não padrão. A configuração de uma porta fixa geralmente é mais fácil na instância autônoma. Configurar o Mecanismo de Banco de Dados para usar portas diferentes evita um conflito inesperado de endereço IP/porta TCP que bloqueia a inicialização de uma instância quando uma FCI do SQL Server falha no nó em espera.

Latência de recuperação do cliente durante o failover

Por padrão, uma FCI de várias sub-redes habilita o recurso de cluster RegisterAllProvidersIP para seu nome de rede. Em uma configuração de várias sub-redes, os endereços IP online e offline do nome da rede são registrados no servidor DNS. Em seguida, o aplicativo cliente recupera todos os endereços IP registrados do servidor DNS e tenta se conectar aos endereços, em ordem ou em paralelo. Isso significa que o tempo de recuperação do cliente em failovers de várias sub-redes não depende mais das latências de atualização de DNS. Por padrão, o cliente tenta os endereços IP em ordem. Quando o cliente usa o parâmetro opcional MultiSubnetFailover=True em sua cadeia de conexão, ele tenta os endereços IP simultaneamente e se conecta ao primeiro servidor que responde. Essa configuração pode ajudar a minimizar a latência de recuperação do cliente quando ocorrem failovers. Para obter mais informações, consulte Conectividade de cliente Always On (SQL Server) e Criar ou configurar um ouvinte de grupo de disponibilidade (SQL Server).

Com bibliotecas de cliente herdadas ou provedores de dados que não sejam da Microsoft, você não pode usar o parâmetro MultiSubnetFailover em sua cadeia de conexão. Para ajudar a garantir que seu aplicativo cliente funcione de forma ideal com FCI de várias sub-redes no SQL Server, tente ajustar o tempo limite de conexão na cadeia de conexão do cliente em 21 segundos para cada endereço IP adicional. Essa configuração garante que a tentativa de reconexão do cliente não atinja o tempo limite antes que ele possa percorrer todos os endereços IP em sua FCI de várias sub-redes.

O período de tempo limite de conexão do cliente padrão para SQL Server Management Studio e sqlcmd é de 15 segundos.

Observação

Se você estiver usando várias sub-redes e tiver um DNS estático, precisará ter um processo para atualizar o registro DNS associado ao ouvinte antes de executar um failover. Caso contrário, o nome da rede não ficará online.

Description Artigo
Instalar um cluster de failover do SQL Server Criar um novo cluster de failover do SQL Server (Instalação)
Atualização in-loco do cluster de failover existente do SQL Server Atualizar uma instância de cluster de failover do SQL Server (Instalação)
Manter o cluster de failover do SQL Server Adicionar ou remover nós em um cluster de failover do SQL Server (Instalação)
Use o snap-in Gerenciamento de Cluster de Failover para exibir eventos e logs do Cluster de Failover do Windows Server Exibir eventos e logs para um cluster de failover
Usar o Windows PowerShell para criar um arquivo de log para todos os nós (ou um nó específico) em um cluster de failover do Windows Server Get-ClusterLog cmdlet de cluster de failover