Partilhar via


Instâncias de cluster de failover com o SQL Server em Máquinas Virtuais do Azure

Aplica-se a:SQL Server na VM do Azure

Este artigo apresenta as diferenças de funcionalidades quando está a trabalhar com instâncias de cluster de failover (FCI) para o SQL Server em máquinas virtuais (VMs) do Azure.

Para começar, preparar sua vm.

Visão geral

O SQL Server em VMs do Azure usa funcionalidade de WSFC (Cluster de Failover do Windows Server) para fornecer alta disponibilidade local por meio de redundância no nível da instância do servidor: uma instância de cluster de failover. Uma FCI é uma única instância do SQL Server instalada em nós WSFC (ou simplesmente no cluster) e, possivelmente, em várias sub-redes. Na rede, uma FCI parece ser uma única instância do SQL Server em execução em um único computador. Mas a FCI fornece comutação de um nó WSFC para outro se o nó atual ficar indisponível.

O resto do artigo concentra-se nas diferenças para instâncias de cluster de failover quando usadas com o SQL Server em VMs do Azure. Para saber mais sobre a tecnologia de agrupamento de failover, consulte:

Observação

Agora é possível elevar e mudar sua solução de instância de cluster de failover para o SQL Server em VMs do Azure usando o Azure Migrate. Consulte Migrar a instância do cluster de failover para saber mais.

Quórum

As instâncias de cluster de failover com o SQL Server em Máquinas Virtuais do Azure dão suporte ao uso de uma testemunha de disco, uma testemunha de nuvem ou uma testemunha de partilha de ficheiros para o quórum do cluster.

Para saber mais, consulte Práticas recomendadas do Quorum com VMs do SQL Server no Azure.

Armazenamento

Em ambientes clusterizados locais tradicionais, um cluster de failover do Windows utiliza uma Storage Area Network (SAN) acessível por todos os nós como armazenamento partilhado. Os arquivos do SQL Server são hospedados no armazenamento compartilhado e somente o nó ativo pode acessar os arquivos de uma só vez.

O SQL Server nas VMs do Azure oferece várias opções de uma solução de armazenamento partilhado para a implementação de instâncias de cluster de failover do SQL Server.

de discos compartilhados do Azure Partilhas de ficheiros Premium Espaços de Armazenamento Diretos (S2D) Azure Elastic SAN
Versão mínima do SO Tudo Windows Server 2012 Windows Server 2016 Windows Server 2022
Versão mínima do SQL Server Tudo SQL Server 2012 SQL Server 2016 SQL Server 2022
Disponibilidade de VM suportada Premium SSD LRS: Conjuntos de disponibilidade com ou sem grupo de colocação de proximidade
Premium SSD ZRS: Zonas de disponibilidade
Ultra disks: mesma zona de disponibilidade
Conjuntos de disponibilidade e zonas de disponibilidade Conjuntos de disponibilidade Zonas de disponibilidade
suporta FileStream Sim Não Sim Não
Suporta MSDTC Sim Não Não Não

O restante desta seção lista os benefícios e limitações de cada opção de armazenamento disponível para o SQL Server em VMs do Azure.

Discos compartilhados do Azure

Discos compartilhados do Azure são um recurso dos discos geridos do Azure. O Agrupamento de Failover do Windows Server suporta o uso de discos partilhados do Azure numa instância de cluster de failover.

OS suportados: Todos
Versão SQL suportada: Todos

Benefícios:

  • Útil para aplicativos que desejam migrar para o Azure, mantendo sua arquitetura de alta disponibilidade e recuperação de desastres (HADR) como está.
  • É possível migrar aplicativos agrupados para o Azure tal como estão devido ao suporte a Reservas Persistentes SCSI (SCSI PR).
  • Suporta armazenamento partilhado de SSD Premium do Azure e Azure Ultra Disk.
  • Pode usar um único disco partilhado ou agrupar vários discos partilhados para criar um pool de armazenamento partilhado.
  • Suporta FILESTREAM.
  • Os SSDs Premium suportam conjuntos de disponibilidade.
  • SSDs Premium Zone Redundant Storage (ZRS) suporta zonas de disponibilidade. As VMs que fazem parte da FCI podem ser colocadas em diferentes zonas de disponibilidade.
  • Suporta o Microsoft Distributed Transaction Coordinator (MSDTC) a partir do Windows Server 2019.

Observação

Embora os discos compartilhados do Azure também ofereçam suporte a tamanhos de SSD padrão, não recomendamos o uso de SSDs padrão para cargas de trabalho do SQL Server devido às limitações de desempenho.

Limitações:

  • O cache de disco SSD Premium não é suportado.
  • Os discos Ultra não suportam conjuntos de disponibilidade ou armazenamento redundante de zona (ZRS).
  • As zonas de disponibilidade são suportadas para Ultra Disks, mas as VMs devem estar na mesma zona de disponibilidade, o que reduz a disponibilidade da máquina virtual para 99,9%.

Para começar, consulte Configurar uma instância de cluster de failover com discos partilhados do Azure.

Storage Spaces Direct

Storage Spaces Direct é uma funcionalidade do Windows Server com suporte para clustering de failover nas Máquinas Virtuais do Azure. Ele fornece uma SAN virtual baseada em software.

Sistema Operativo Suportado: Windows Server 2016 e posterior
Versão SQL suportada: SQL Server 2016 e posterior

Benefícios:

  • A largura de banda de rede suficiente permite uma solução de armazenamento compartilhado robusta e de alto desempenho.
  • Suporta a cache de blobs do Azure, permitindo que as leituras sejam servidas localmente a partir da cache. (As atualizações são replicadas simultaneamente para ambos os nós.)
  • Suporta FileStream.

Limitações:

  • Disponível apenas para Windows Server 2016 e posterior.
  • As zonas de disponibilidade não são suportadas.
  • Requer a mesma capacidade de disco conectada a ambas as máquinas virtuais.
  • A alta largura de banda da rede é necessária para alcançar alto desempenho devido à replicação contínua do disco.
  • Requer um tamanho de VM maior e pagamento duplo pelo armazenamento, porque o armazenamento é anexado a cada VM.
  • Microsoft Distributed Transaction Coordinator (MSDTC) não é suportado.

Para começar, consulte Configurar instância de cluster de failover com o Storage Spaces Direct.

Partilha de ficheiros Premium

Partilhas de arquivos Premium são uma funcionalidade do Azure Files. As partilhas de ficheiros Premium são suportadas por SSD e têm uma latência consistentemente baixa. Estão totalmente suportados para uso em instâncias de cluster de failover do SQL Server 2012 ou posterior no Windows Server 2012 ou em versões posteriores. As partilhas de ficheiros Premium proporcionam-lhe uma maior flexibilidade, uma vez que pode redimensionar e dimensionar uma partilha de ficheiros sem qualquer tempo de inatividade.

Sistemas Operativossuportados: Windows Server 2012 e posterior
Versão SQL suportada: SQL Server 2012 e posterior

Benefícios:

  • Solução de armazenamento compartilhado para máquinas virtuais espalhadas por várias zonas de disponibilidade.
  • Sistema de arquivos totalmente gerido com latências em dígitos únicos e desempenho de E/S explosível.
  • Nem todos os recursos do SQL Server são suportados, como instantâneos de banco de dados, fluxo de arquivos e CHECKDB sem TABLOCK. Consulte Limitações para obter detalhes.

Limitações:

  • Disponível apenas para Windows Server 2012 e posterior.
  • FileStream não é suportado.
  • Microsoft Distributed Transaction Coordinator (MSDTC) não é suportado.

Para começar, consulte Configurar instância de cluster de failover com compartilhamento de arquivos Premium.

Azure Elastic SAN

Azure Elastic SAN é uma oferta de armazenamento conectado à rede que oferece aos clientes uma solução flexível e escalável com o potencial de reduzir custos por meio da consolidação de armazenamento. O Azure Elastic SAN oferece uma solução de armazenamento em bloco econômica, eficiente e confiável que se conecta a uma variedade de serviços de computação do Azure por meio do protocolo iSCSI. O Elastic SAN permite uma transição perfeita de um conjunto de armazenamento SAN existente para a nuvem sem a necessidade de refatorar a arquitetura do aplicativo.

Sistemas Operativossuportados: Windows Server 2019 e versões posteriores
Versão SQL com suporte: SQL Server 2022 e posterior

Benefícios:

  • A SAN elástica não é limitada pelos limites de taxa de transferência de disco da VM, o que significa que você pode economizar custos alcançando a taxa de transferência desejada com VMs menores.
  • Consolidação de armazenamento e compartilhamento dinâmico de desempenho - é possível economizar custos consolidando cargas de trabalho de baixo a médio desempenho com cargas de trabalho do SQL Server, uma vez que o pool de armazenamento é provisionado no nível de SAN e o desempenho é compartilhado entre cargas de trabalho.
  • Suporta Reservas Persistentes SCSI (SCSI PR), o que significa que pode migrar aplicações clusterizadas para o Azure tal como está.
  • Pode usar um único volume compartilhado ou distribuir vários volumes compartilhados para criar um pool de armazenamento compartilhado.
  • O armazenamento com redundância de zona do Elastic SAN oferece suporte a zonas de disponibilidade. As VMs que fazem parte de uma instância de cluster de failover podem ser colocadas em diferentes zonas de disponibilidade.

Limitações:

  • O Cloud witness não é suportado no momento.
  • Não suporta cargas de trabalho de latência de submilissegundos.
  • Filestream não é suportado.
  • Microsoft Distributed Transaction Coordinator (MSDTC) não é suportado.

Parceiro

Existem soluções de clustering de parceiros com armazenamento suportado.

OS suportados: Todos
Versão SQL suportada: Todos

Um exemplo usa o SIOS DataKeeper como armazenamento. Para mais informações, consulte a postagem no blog Clustering de failover e SIOS DataKeeper.

iSCSI e ExpressRoute

Você também pode expor um armazenamento de bloco compartilhado de destino iSCSI por meio da Rota Expressa do Azure.

Sistemas Operativos suportados: Todos
Versão SQL suportada: Todos

Por exemplo, o NPS (NetApp Private Storage) expõe um destino iSCSI via ExpressRoute com Equinix para VMs do Azure.

Para soluções de armazenamento compartilhado e replicação de dados de parceiros da Microsoft, entre em contato com o fornecedor para qualquer problema relacionado ao acesso a dados em caso de falha.

Conectividade

Para corresponder à experiência local de conexão com sua instância de cluster de failover, implante suas VMs do SQL Server para várias sub-redes na mesma rede virtual. Ter várias sub-redes nega a necessidade da dependência extra de um Balanceador de Carga do Azure ou de um DNN (nome de rede distribuído) para rotear seu tráfego para sua FCI.

Se você implantar suas VMs do SQL Server em uma única sub-rede, poderá configurar um nome de rede virtual (VNN) e um Balanceador de Carga do Azure ou um DNN (nome de rede distribuída) para rotear o tráfego para sua instância de cluster de failover. Revise as diferenças entre os dois e, em seguida, implante um nome de rede distribuída ou um nome de rede virtual para a sua instância de cluster de failover.

O nome da rede distribuída é recomendado, se possível, pois o failover é mais rápido e a sobrecarga e o custo de gerenciamento do balanceador de carga são eliminados.

A maioria dos recursos do SQL Server funciona de forma transparente com FCIs ao usar a DNN, mas há certos recursos que podem exigir consideração especial. Para obter mais informações, consulte a interoperabilidade FCI e DNN .

Observação

Se você tiver vários AGs ou FCIs no mesmo cluster e usar um ouvinte DNN ou VNN, cada AG ou FCI precisará de seu próprio ponto de conexão independente.

Limitações

Suporte de extensão limitado

No momento, as instâncias de cluster de failover do SQL Server em máquinas virtuais do Azure registadas com a extensão SQL IaaS Agent dão suporte apenas a um número limitado de funcionalidades disponíveis por meio do registo básico, e não àquelas que exigem o agente, como backup automatizado, aplicação de correções, autenticação Microsoft Entra e gestão avançada de portal. Consulte a tabela de benefícios para saber mais.

Se sua VM do SQL Server já tiver sido registrada com a extensão do SQL IaaS Agent e você tiver habilitado todos os recursos que exijam o agente, será necessário excluir o de extensão da VM do SQL Server excluindo o recurso de da máquina virtual SQL para as VMs correspondentes e, em seguida, registrando-o com a extensão do Agente IaaS do SQL novamente. Quando estiver a eliminar o recurso de máquina virtual SQL usando o portal do Azure, desmarque a caixa de seleção ao lado da máquina virtual correta para evitar eliminar a máquina virtual.

MSDTC

As Máquinas Virtuais do Azure dão suporte ao Microsoft Distributed Transaction Coordinator (MSDTC) no Windows Server 2019 com armazenamento em CSVs (Volumes Compartilhados Clusterizados) e do Balanceador de Carga Padrão do Azure ou em VMs do SQL Server que usam discos compartilhados do Azure.

Nas Máquinas Virtuais do Azure, o MSDTC não é suportado para o Windows Server 2016 ou anterior com Volumes Partilhados Clusterizados porque:

  • O recurso MSDTC clusterizado não pode ser configurado para usar armazenamento compartilhado. No Windows Server 2016, se você criar um recurso MSDTC, ele não mostrará nenhum armazenamento compartilhado disponível para uso, mesmo que o armazenamento esteja disponível. Esse problema foi corrigido no Windows Server 2019.
  • O balanceador de carga básico não lida com portas RPC.