Configurar quorum de cluster para SQL Server em VMs do Azure

Aplica-se a: SQL Server na VM do Azure

Este artigo ensina a configurar uma das três opções de quorum para um Cluster de Failover do Windows Server em execução no SQL Server em VMs (Máquinas Virtuais) do Azure: uma testemunha de disco, uma testemunha de nuvem e uma testemunha de compartilhamento de arquivo.

Visão geral

O quorum de um cluster é determinado pelo número de elementos de votação que devem fazer parte da associação de cluster ativo para o cluster iniciar corretamente ou continuar em execução. Configurar um recurso de quorum permite que um cluster de dois nós continue com apenas um nó online. O Cluster de Failover do Windows Server é a tecnologia subjacente para o SQL Server em opções de alta disponibilidade de VMs do Azure: FCIs (instâncias de cluster de failover) e AGs (grupos de disponibilidade).

A testemunha de disco é a opção de quorum mais resiliente. Porém, para usar uma testemunha de disco em um SQL Server na VM do Azure, você deve usar um disco compartilhado do Azure, o que impõe algumas limitações à solução de alta disponibilidade. Dessa forma, use uma testemunha de disco quando estiver configurando a instância de cluster de failover com os discos compartilhados do Azure. Caso contrário, use uma testemunha de nuvem sempre que possível. Quando você usa Windows Server 2012 R2 ou mais antigo incompatível com testemunha de nuvem, pode usar uma testemunha de compartilhamento de arquivo.

As seguintes opções de quorum estão disponíveis para uso para SQL Server VMs do Azure:

Testemunha da nuvem Testemunha de disco Testemunha de compartilhamento de arquivos
SO com suporte Windows Server 2016 e posterior Tudo Todos

Para saber mais sobre quorum, confira a Visão geral do Cluster de Failover do Windows Server.

Testemunha da nuvem

Uma testemunha de nuvem é um tipo de testemunha de quorum de cluster de failover que usa Armazenamento do Microsoft Azure para fornecer um voto no quorum do cluster.

A seguinte tabela fornece informações adicionais e considerações sobre a testemunha de quorum:

Tipo de testemunha Descrição Requisitos e recomendações
Testemunha da nuvem
  • Usa o armazenamento do Azure como testemunha de nuvem, contém apenas o carimbo de data/hora.
  • Ideal para implantações em vários sites, várias zonas e várias regiões.
  • Cria um contêiner conhecido msft-cloud-witness na Conta de Armazenamento da Microsoft.
  • Grava um só arquivo de blob com a ID exclusiva do cluster correspondente usada como o nome do arquivo de blob no contêiner
  • O tamanho padrão é 1 MB.
  • Use Uso Geral para o tipo de conta. Não há suporte para Armazenamento de Blobs.
  • Use armazenamento Standard. Não há suporte para o armazenamento Premium.
  • O clustering de failover usa o arquivo de blob como o ponto de arbitragem, o que requer algumas garantias de consistência ao ler os dados. Portanto, você deve selecionar Armazenamento com redundância local para o tipo de Replicação.
  • Deve ser excluído dos backups e da verificação antivírus
  • Não há suporte para uma testemunha de disco com Espaços de Armazenamento Diretos
  • A Testemunha de Nuvem usa HTTPS (porta padrão 443) para estabelecer a comunicação com o Armazenamento de Blobs do Azure. Verifique se a porta HTTPS está acessível por meio do Proxy de rede.

Ao configurar um recurso de quorum de Testemunha de Nuvem para seu Cluster de Failover, considere:

  • Em vez de armazenar a Chave de Acesso, o Cluster de Failover gera e armazena com segurança um token SAS (Segurança de Acesso Compartilhado).
  • O token SAS gerado será válido desde que a Chave de Acesso permaneça válida. Ao fazer a rotação da Chave de Acesso Primária, é importante atualizar primeiro a Testemunha de Nuvem (em todos os clusters que estiverem usando essa conta de armazenamento) com a chave de acesso secundária antes de regenerar a Chave de Acesso Primária.
  • A testemunha de nuvem usa a interface REST HTTPS do serviço Conta de Armazenamento do Azure. Isso significa que ela requer que a porta HTTPS esteja aberta em todos os nós de cluster.

Uma testemunha de nuvem requer uma Conta de Armazenamento do Azure. Para configurar uma conta de armazenamento, siga estas etapas:

  1. Entre no portal do Azure.
  2. No menu Hub, selecione Novo –> Dados + Armazenamento –> Conta de armazenamento.
  3. Na página Criar conta de armazenamento, faça o seguinte:
    1. Insira um nome para a conta de armazenamento. Os nomes da conta de armazenamento devem ter entre 3 e 24 caracteres e podem conter apenas números e letras minúsculas. O nome da conta de armazenamento também deve ser exclusivo no Azure.
    2. Para Tipo de conta, selecione Uso Geral.
    3. Para Desempenho, selecione Standard.
    4. Em Replicação, selecione LRS (armazenamento com redundância local) .

Depois que sua conta de armazenamento for criada, siga estas etapas para configurar o recurso de quorum de testemunha de nuvem para o cluster de failover:

O comando Set-ClusterQuorum PowerShell existente tem novos parâmetros correspondentes à Testemunha de Nuvem.

Você pode configurar a testemunha de nuvem com o cmdlet Set-ClusterQuorum usando o comando do PowerShell:

Set-ClusterQuorum -CloudWitness -AccountName <StorageAccountName> -AccessKey <StorageAccountAccessKey>

No raro de caso de você precisar usar um ponto de extremidade diferente, use este comando do PowerShell:

Set-ClusterQuorum -CloudWitness -AccountName <StorageAccountName> -AccessKey <StorageAccountAccessKey> -Endpoint <servername>

Confira a documentação da testemunha de nuvem para ajudar a encontrar a AccessKey da Conta de Armazenamento.

Testemunha de disco

Uma testemunha de disco é um pequeno disco clusterizado no grupo de armazenamento disponível do cluster. Esse disco é altamente disponível e pode fazer failover entre os nós.

A testemunha de disco é a opção de quorum recomendada quando usada com uma solução de alta disponibilidade de armazenamento compartilhado, como a instância de cluster de failover com discos compartilhados do Azure.

A seguinte tabela fornece informações e considerações adicionais sobre a testemunha do disco de quorum:

Tipo de testemunha Descrição Requisitos e recomendações
Testemunha de disco
  • LUN dedicado que armazena uma cópia do banco de dados do cluster
  • Mais útil para clusters com armazenamento compartilhado (não replicado)
  • O tamanho do LUN deve ser, no mínimo, 512 MB
  • Deve ser dedicado a uso de cluster e não designado a uma função clusterizada
  • Deve ser incluído em um armazenamento clusterizado e passar nos testes de validação de armazenamento
  • Não pode ser um disco que seja um CSV (Volume Compartilhado Clusterizado)
  • Disco básico com um volume único
  • Ela não precisa ter uma letra da unidade
  • Pode ser formatado com NTFS ou ReFS
  • Também pode ser configurado com RAID de hardware para tolerância a falhas
  • Deve ser excluído dos backups e da verificação antivírus
  • Não há suporte para uma testemunha de disco com Espaços de Armazenamento Diretos

Para usar um disco compartilhado do Azure para a testemunha de disco, primeiro crie e monte o disco. Para fazer isso, siga as etapas na seção Montar disco do guia de instância de cluster de failover de disco compartilhado do Azure. O disco não precisa ser premium.

Depois que o disco tiver sido montado, adicione-o ao armazenamento de cluster com as seguintes etapas:

  1. Abra o Gerenciador de Cluster de Failover.
  2. Selecione Discos em Armazenamento no painel de navegação esquerdo.
  3. Selecione Adicionar Disco em Ações no painel de navegação direito.
  4. Selecione a unidade compartilhada do Azure que você acabou de montar e anote o nome, como Cluster Disk 3.

Depois que o disco tiver sido adicionado como armazenamento cluster, configure-o como a testemunha de disco usando o PowerShell:

O comando Set-ClusterQuorum PowerShell existente tem novos parâmetros correspondentes à Testemunha de Nuvem.

Use o caminho para o compartilhamento de arquivo como o parâmetro para a testemunha de disco ao usar o cmdlet do PowerShell Set-ClusterQuorum:

Set-ClusterQuorum -NodeAndDiskMajority "Cluster Disk 3"

Você também pode usar o Gerenciador de Cluster de Failover. Siga as mesmas etapas que para a testemunha de nuvem, mas escolha a testemunha de disco como a opção de quorum.

Testemunha de compartilhamento de arquivos

Uma testemunha de compartilhamento de arquivo é um compartilhamento de arquivo SMB que normalmente é configurado em um servidor de arquivos que executa o Windows Server. Ela mantém as informações de clustering em um arquivo witness.log, mas não armazena uma cópia do banco de dados do cluster. No Azure, você pode configurar um compartilhamento de arquivo em uma máquina virtual separada.

Configure uma testemunha de compartilhamento de arquivo se uma testemunha de disco ou uma testemunha de nuvem não estiver disponível ou não for compatível com o seu ambiente.

A seguinte tabela fornece informações adicionais e considerações sobre a testemunha de compartilhamento de arquivo de quorum:

Tipo de testemunha Descrição Requisitos e recomendações
Testemunha de compartilhamento de arquivos
  • Compartilhamento de arquivos SMB configurado em um servidor de arquivos que executa Windows Server
  • Não armazena uma cópia do banco de dados do cluster
  • Mantém informações de cluster somente em um arquivo witness.log
  • Mais útil para clusters multissite com armazenamento replicado
  • Deve ter um espaço livre mínimo de 5 MB
  • Deve ser dedicado a um único cluster e não usado para armazenar dados de usuário ou de aplicativo
  • Deve ter permissões de gravação habilitadas para objeto de computador do nome do cluster

A seguir estão considerações adicionais para um servidor de arquivos que hospeda a testemunha de compartilhamento de arquivos:
  • Um único servidor de arquivos pode ser configurado com testemunhas de compartilhamento de arquivos para vários clusters.
  • O servidor de arquivos deve estar em um site separado da carga de trabalho do cluster. Isso permite a mesma oportunidade para que qualquer site de cluster sobreviva se a comunicação da rede de site a site for perdida. Se o servidor de arquivos estiver no mesmo site, esse site se tornará o site primário, e ele será o único site que poderá atingir o compartilhamento de arquivos.
  • O servidor de arquivos pode ser executado em uma máquina virtual, se esta não estiver hospedada no mesmo cluster que utiliza a testemunha de compartilhamento de arquivos.
  • Para alta disponibilidade, o servidor de arquivos pode ser configurado em um cluster de failover separado.

Depois de criar o compartilhamento de arquivo e as permissões configuradas corretamente, monte o compartilhamento de arquivo em seus nós clusterizados. Você pode seguir as mesmas etapas gerais para montar o compartilhamento de arquivo, conforme descrito na seção montar compartilhamento de arquivo do guia de instruções da instância de cluster de failover do compartilhamento de arquivo premium.

Depois que o compartilhamento de arquivo tiver sido configurado e montado corretamente, use o PowerShell para adicionar o compartilhamento de arquivo como o recurso de testemunha de quorum:

Set-ClusterQuorum -FileShareWitness <UNC path to file share> -Credential $(Get-Credential)

Será solicitado que você tenha uma conta e senha para uma conta não do administrador local (para o compartilhamento de arquivo) com direitos de administrador completos para o compartilhamento. O cluster mantém o nome e a senha criptografados e não poderá ser acessado por ninguém.

Você também pode usar o Gerenciador de Cluster de Failover. Siga as mesmas etapas que para a testemunha de nuvem, mas escolha a testemunha de compartilhamento de arquivo como a opção de quorum.

Alterar a votação de quorum

É possível alterar o voto de quorum de um nó que participa de um Cluster de Failover do Windows Server.

Ao modificar as configurações de voto do nó, siga estas diretrizes:

Diretrizes de votação de quorum
Comece com cada nó sem nenhum voto por padrão. Cada nó deve ter apenas um voto com justificativa explícita.
Habilita votos para nós de cluster que hospedam a réplica primária de um grupo de disponibilidade ou os proprietários preferenciais de uma instância de cluster de failover.
Habilitar votos para proprietários de failover automático. Cada nó que pode hospedar uma réplica primária ou FCI como resultado de um failover automático deve ter um voto.
Se um grupo de disponibilidade tiver mais de uma réplica secundária, habilite votos apenas para as réplicas que têm failover automático.
Desabilite votos para nós que estão em sites secundários de recuperação de desastre. Nós em sites secundários não devem contribuir para a decisão de colocar um cluster offline se não houver nada de errado com o site primário.
Tenha um número ímpar de votos, com no mínimo três votos de quorum. Adicione uma testemunha de quorum para um voto extra, se necessário, em um cluster de dois nós.
Reavalie as atribuições de voto após o failover. Você não deseja fazer failover em uma configuração de cluster que não é compatível com um quorum íntegro.

Próximas etapas

Para obter mais informações, consulte: