Política de failover flexível para failover automático de um grupo de disponibilidade (SQL Server)

Uma política de failover flexível fornece o controle granular das condições que causam um failover automático para um grupo de disponibilidade. Ao alterar as condições de falha que disparam um failover automático e a frequência de verificações de integridade, você pode aumentar ou diminuir a probabilidade de um failover automático para oferecer suporte ao seu SLA para alta disponibilidade.

A política de failover flexível de um grupo de disponibilidade é definida por seu nível da condição de falha e pelo limite de tempo limite da verificação de integridade. Ao detectar que um grupo de disponibilidade excedeu seu nível de condição de falha ou seu limite de tempo limite da verificação de integridade, a DLL de recurso do grupo de disponibilidade responde ao cluster WSFC (Windows Server Failover Clustering). O cluster WSFC inicia um failover automático para a réplica secundária.

Observação importanteImportante

Se um grupo de disponibilidade exceder seu limite de falha do WSFC, o cluster do WSFC não tentará um failover automático para o grupo de disponibilidade. Além disso, o grupo de recurso do WSFC do grupo de disponibilidade permanece em um estado com falha até o administrador de cluster manualmente colocar online o grupo de recursos com falha ou o administrador de banco de dados executar um failover manual do grupo de disponibilidade. O limite de falha do WSFC é definido como o número máximo de falhas com suporte para o grupo de disponibilidade durante um determinado período de tempo. O período de tempo padrão é seis horas e o valor padrão para o número máximo de falhas durante este período é n-1, onde n é o número de nós do WSFC. Para alterar os valores do limite de failover para um determinado grupo de disponibilidade, use o Console de Gerenciador de Failover WSFC.

Este tópico contém as seguintes seções:

  • Limite do tempo limite da verificação de integridade

  • Nível da condição de falha

  • Tarefas relacionadas

  • Conteúdo relacionado

Limite do tempo limite da verificação de integridade

A DLL de recurso do WSFC do grupo de disponibilidade executa uma verificação de integridade da réplica primária, chamando o procedimento armazenado sp_server_diagnostics na instância do SQL Server que hospeda a réplica primária. O sp_server_diagnostics retorna resultados em um intervalo 1/3 em relação ao limite do tempo limite da verificação de integridade para o grupo de disponibilidade. O limite do tempo limite da verificação de integridade padrão é de 30 segundos, levando o sp_server_diagnostics a retornar em um intervalo de 10 segundos. Se sp_server_diagnostics for lento ou não estiver retornando informações, a DLL de recurso aguardará pelo intervalo completo do limite de tempo limite da verificação de integridade antes de determinar que a réplica primária não está respondendo. Se a réplica primária não estiver respondendo, um failover automático será iniciado, se tiver suporte no momento.

Observação importanteImportante

sp_server_diagnostics não executa verificações de integridade no nível de banco de dados.

Ícone de seta usado com o link Voltar ao Início[Início]

Nível da condição de falha

O nível da condição de falha do grupo de disponibilidade determina se os dados de diagnóstico e as informações de integridade retornadas pelo sp_server_diagnostics garantem um failover automático. O nível de condição de falha especifica as condições de falha que disparam um failover automático. Há cinco níveis da condição de falha que variam do menos restritivo (nível 1) até o mais restritivo (nível 5). Um nível específico abrange todos os níveis menos restritivos. Portanto, o nível mais rígido, cinco, inclui os quatro níveis de condições menos restritivos e assim por diante.

Observação importanteImportante

Bancos de dados danificados e bancos de dados suspeitos não são detectados por nenhum nível de condição de falha. Portanto, um banco de dados que esteja danificado ou suspeito (seja devido a um problema de hardware, corrupção de dados ou outro problema) nunca dispara um failover automático.

A tabela a seguir descreve as condições de falha que correspondem a cada nível.

Nível

Condição de falha

Valor Transact-SQL

Valor de PowerShell

Um

Em servidor inativo. Especifica que um failover automático é iniciado quando uma destas condições ocorre:

Este é o nível menos restritivo.

1

OnServerDown

Dois

Em servidor sem resposta. Especifica que um failover automático é iniciado quando uma destas condições ocorre:

  • A instância do SQL Server não se conecta ao cluster e o limite de tempo limite especificado pelo usuário do grupo de disponibilidade é excedido.

  • A réplica de disponibilidade está em estado de falha.

2

OnServerUnresponsive

Três  

Em erros críticos do servidor. Especifica que um failover automático é iniciado em erros internos críticos do SQL Server, como spinlocks órfãos, violações do acesso de gravação graves ou muito despejo.

Este é o nível padrão.

3

OnCriticalServerError

Quatro

Em erros moderados do servidor. Especifica que um failover automático é iniciado em caso de erros internos moderados do SQL Server, como uma condição de memória insuficiente persistente no pool de recursos interno do SQL Server.

4

OnModerateServerError

Cinco

Em qualquer condição de falha qualificada. Especifica que um failover automático é iniciado em qualquer condição de falha qualificada, incluindo:

  • Esgotamento dos threads de trabalho do SQL Engine.

  • Detecção de um deadlock insolúvel.

Este é o nível mais restritivo.

5

OnAnyQualifiedFailureConditions

ObservaçãoObservação

A falta de resposta de uma instância do SQL Server para solicitações do cliente é irrelevante para grupos de disponibilidade.

Ícone de seta usado com o link Voltar ao Início[Início]

Tarefas relacionadas

Para configurar um failover automático

Ícone de seta usado com o link Voltar ao Início[Início]

Conteúdo relacionado

Ícone de seta usado com o link Voltar ao Início[Início]

Consulte também

Referência

sp_server_diagnostics (Transact-SQL)

Conceitos

Visão geral de grupos de disponibilidade AlwaysOn (SQL Server)

Modos de disponibilidade (grupos de disponibilidade AlwaysOn)

Failover e modos de failover (grupos de disponibilidade AlwaysOn)

WSFC (Windows Server Failover Clustering) com o SQL Server

Política de failover para instâncias de cluster de failover