Compartilhar via


Preparar máquinas virtuais para uma FCI (SQL Server em VMs do Azure)

Aplica-se a: SQL Server na VM do Azure

Este artigo descreve como preparar Máquinas Virtuais (VMs) do Azure para serem usadas com uma instância de cluster de failover (FCI) do SQL Server. As definições da configuração variam de acordo com a solução de armazenamento da FCI, portanto, verifique se você está escolhendo a configuração correta, que se adequa ao seu ambiente e aos seus negócios.

Para saber mais, confira uma visão geral do FCI com SQL Server em VMs do Azure e as melhores práticas de cluster.

Observação

Agora é possível migrar por lift-and-shift sua solução de instância de cluster de failover para o SQL Server em VMs do Azure usando as Migrações para Azure. Confira Migrar instância de cluster de failover para saber mais.

Pré-requisitos

  • Uma assinatura do Microsoft Azure. Comece com uma conta gratuita do Azure.
  • Um domínio do Windows em máquinas virtuais do Azure ou um Active Directory local estendido para o Azure com emparelhamento de rede virtual.
  • Uma conta que tenha permissões para criar objetos em máquinas virtuais do Azure e no Active Directory.
  • Uma rede virtual do Azure e uma ou mais sub-redes com espaço de endereço IP suficiente para os seguintes componentes:
    • As duas máquinas virtuais
    • Um endereço IP para o cluster de failover do Windows
    • Um endereço IP para cada FCI
  • DNS configurado na rede do Azure, apontando para os controladores de domínio.

Escolha uma opção de armazenamento da FCI

As definições de configuração para a máquina virtual variam de acordo com a opção de armazenamento que você planeja usar para a instância de cluster de failover do SQL Server. Antes de preparar a máquina virtual, revise as Opções de armazenamento da FCI disponíveis e escolha a opção mais adequada ao seu ambiente e às suas necessidades comerciais. Em seguida, selecione cuidadosamente as opções de configuração de VM apropriadas em todo este artigo com base em sua seleção do armazenamento.

Escolher a disponibilidade da VM

O recurso de cluster de failover requer que as máquinas virtuais sejam colocadas em um conjunto de disponibilidade ou em uma zona de disponibilidade.

Selecione cuidadosamente a opção de disponibilidade de VM que corresponde à configuração de cluster pretendida:

  • Discos compartilhados do Azure: a opção de disponibilidade varia se você está usando SSD Premium ou Disco Ultra:
    • ZRS (armazenamento com redundância de zona) SSD Premium: zona de disponibilidade em zonas diferentes. O ZRS SSD Premium replica o disco gerenciado do Azure de modo síncrono em três zonas de disponibilidade do Azure na região selecionada. As VMs que fazem parte do cluster de failover podem ser colocadas em diferentes zonas de disponibilidade, ajudando você a obter uma FCI do SQL Server com redundância de zona que fornece um SLA de VM com disponibilidade de 99,99%. A latência de disco para ZRS é maior devido à cópia de dados entre zonas.
    • LRS (armazenamento com redundância local) SSD Premium: conjunto de disponibilidade em diferentes domínios de falha/atualização para LSR SSD Premium. Você também pode optar por colocar as VMs dentro de um grupo de posicionamento por proximidade para que elas fiquem mais próximas umas das outras. A combinação do conjunto de disponibilidade e do grupo de posicionamento por proximidade oferece a menor latência para discos compartilhados, pois os dados são replicados localmente em um data center, e um SLA de VM com disponibilidade de 99,95%.
    • LRS (armazenamento com redundância local) de Disco Ultra: zonas de disponibilidade, mas as VMs precisam ser colocadas na mesma zona de disponibilidade. Os Discos Ultra oferecem a menor latência de disco e são melhores para cargas de trabalho com uso intensivo de E/S. Como todas as VMs que fazem parte da FCI precisam estar na mesma zona de disponibilidade, a disponibilidade da VM é de apenas 99,9%.
  • Compartilhamentos de arquivos premium: conjunto de disponibilidade ou zonas de disponibilidade.
  • Espaços de Armazenamento Diretos: conjunto de disponibilidade.
  • Azure Elastic SAN: zonas de disponibilidade.

Importante

Você não pode definir nem alterar o conjunto de disponibilidade depois de criar uma máquina virtual.

Sub-redes

Para o SQL Server em VMs do Azure, você tem a opção de implantar as VMs do SQL Server em uma só sub-rede ou em várias sub-redes.

A implantação das VMs em várias sub-redes aproveita a dependência OR do cluster para endereços IP e corresponde à experiência local por meio da conexão com a instância de cluster de failover. A abordagem de várias sub-redes é recomendável para o SQL Server em VMs do Azure a fim de facilitar a capacidade de gerenciamento e acelerar o tempo de failover.

A implantação das VMs em uma só sub-rede requer uma dependência adicional de um Azure Load Balancer ou de um DNN (nome de rede distribuída) para encaminhar o tráfego à FCI.

Se você implantar as VMs do SQL Server em várias sub-redes, siga as etapas nesta seção para criar redes virtuais com sub-redes adicionais e, depois que as VMs do SQL Server forem criadas, atribuir endereços IP secundários nessas sub-redes às VMs. A implantação da sVMs do SQL Server em uma só sub-rede não requer nenhuma configuração de rede adicional.

Coloque as duas máquinas virtuais em uma só sub-rede que tenha endereços IP suficientes para as máquinas virtuais e todas as FCIs que você possa instalar no cluster. Essa abordagem requer um componente extra para encaminhar as conexões à FCI, como um Azure Load Balancer ou um DNN (nome de rede distribuída).

Se você optar por implantar as VMs do SQL Server em uma só sub-rede, examine as diferenças entre as opções de conectividade do Azure Load Balancer e do DNN e decida qual delas funcionará melhor para você antes de preparar o restante do ambiente da FCI.

A implantação das VMs do SQL Server em uma só sub-rede não requer nenhuma configuração de rede adicional.

Configurar DNS

Configure sua rede virtual para usar o servidor DNS. Primeiro, identifique o endereço IP do DNS e depois adicione-o à sua rede virtual.

Identificar o endereço IP do DNS

Identifique o endereço IP do servidor DNS e adicione-o à configuração de rede virtual. Esta seção demonstra como identificar o endereço IP do DNS quando o servidor DNS está em uma máquina virtual no Azure.

Para identificar o endereço IP da VM do servidor DNS no portal do Azure, siga estas etapas:

  1. Acesse o grupo de recursos no portal do Azure e selecione a VM do servidor DNS.
  2. Na página da VM, escolha Rede no painel Configurações.
  3. Anote o endereço IP privado do adaptador de rede, pois esse é o endereço IP do servidor DNS. Na imagem de exemplo, o endereço IP privado é 10.38.0.4.

Na página DC-VM-1, escolha Rede no painel Configurações e anote o endereço IP privado do adaptador de rede. Use esse endereço IP como o servidor DNS.

Configurar o DNS da rede virtual

Configure a rede virtual para usar esse endereço IP do servidor DNS.

Para configurar sua rede virtual para o DNS, siga estas etapas:

  1. Acesse o grupo de recursos no portal do Azure e selecione sua rede virtual.
  2. Selecione Servidores DNS em Configurações e escolha Personalizado.
  3. Insira o endereço IP privado que você identificou anteriormente no campo endereço IP como 10.38.0.4 ou forneça o endereço IP interno do servidor DNS interno.
  4. Selecione Salvar.

Captura de tela mostrando servidores DNS selecionados em Configurações no portal do Azure.

Criar as máquinas virtuais

Depois de configurar a rede virtual da VM e escolher a disponibilidade da VM, você estará pronto para criar máquinas virtuais. Você pode optar por usar uma imagem do Azure Marketplace que tenha o SQL Server já instalado ou não. No entanto, se você escolher uma imagem para o SQL Server nas VMs do Azure, será necessário desinstalar o SQL Server da máquina virtual antes de configurar a instância de cluster de failover.

Observação

Verifique a versão do SQL Server com suporte com a opção de armazenamento FCI escolhida antes de implantar suas VMs do SQL Server.

Considerações sobre o adaptador de rede

Em um cluster de failover de convidado de VM do Azure, recomendamos um só adaptador de rede por servidor (nó de cluster). A rede do Azure tem redundância física, portanto adaptadores de rede adicionais são desnecessários em um cluster de convidado de VM de IaaS do Azure. Embora o relatório de validação de cluster emita um aviso de que os nós só são acessíveis em uma única rede, esse aviso pode ser ignorado com segurança em clusters de failover de convidado de uma VM de IaaS do Azure.

Coloque as duas máquinas virtuais:

  • No mesmo grupo de recursos do Azure que o conjunto de disponibilidade, se você estiver usando conjuntos de disponibilidade.
  • Na mesma rede virtual que o controlador de domínio e o servidor DNS ou em uma rede virtual que tenha conectividade adequada com o controlador de domínio.
  • No conjunto de disponibilidade ou na zona de disponibilidade do Azure.

Você pode criar uma máquina virtual do Azure usando uma imagem com ou sem o SQL Server pré-instalado nela. Se você escolher a imagem do SQL Server, precisará desinstalar manualmente a instância do SQL Server antes de instalar a instância de cluster de failover.

Atribuir endereços IP secundários

Se você implantou as VMs do SQL Server em uma só sub-rede, ignore esta etapa.

Se você implantou as VMs do SQL Server em várias sub-redes para aprimorar a conectividade com a FCI, será necessário atribuir os endereços IP secundários a cada VM.

Atribua endereços IP secundários a cada VM do SQL Server a ser usada para o nome de rede da instância de cluster de failover e, para o Windows Server 2016 e anteriores, também atribua endereços IP secundários a cada VM do SQL Server para o nome da rede do cluster. Isso elimina a necessidade de um Azure Load Balancer, que é um requisito em um ambiente de uma só sub-rede.

No Windows Server 2016 e anteriores, você precisa atribuir um endereço IP secundário adicional a cada VM do SQL Server a ser usada para o IP do cluster do Windows, pois o cluster usa o nome da rede de cluster em vez do DNN (nome de rede distribuída) introduzido no Windows Server 2019. Com um DNN, o CNO (objeto de nome de cluster) é registrado automaticamente com os endereços IP de todos os nós de cluster, eliminando a necessidade de um endereço IP de cluster dedicado do Windows.

Se você estiver no Windows Server 2016 e anteriores, siga as etapas nesta seção para atribuir um endereço IP secundário a cada VM do SQL Server para o nome da rede da FCIe o cluster.

Se você estiver no Windows Server 2019 ou posteriores, atribua apenas um endereço IP secundário para o nome da rede da FCI e ignore as etapas para atribuir um IP de cluster do Windows, a menos que você planeje configurar o cluster com um VNN (nome de rede virtual) e, nesse caso, atribua os dois endereços IP a cada VM do SQL Server como você faria no Windows Server 2016.

Para atribuir IPs secundários adicionais às VMs, siga estas etapas:

  1. Acesse o grupo de recursos no portal do Azure e selecione a primeira VM do SQL Server.

  2. Selecione Rede no painel Configurações e escolha o Adaptador de rede:

    Selecione rede no painel de Configurações e escolha o Adaptador de rede

  3. Na página Adaptador de rede, selecione Configurações de IP no painel de Configurações e escolha + Adicionar para adicionar mais um endereço IP:

    Configurações de IP

  4. Na página Adicionar configuração de IP, faça o seguinte:

    1. Especifique o Nome do endereço IP do cluster do Windows, como windows-cluster-ip para o Windows 2016 e anteriores. Ignore esta etapa se você estiver no Windows Server 2019 ou posteriores.
    2. Defina a Alocação como Estática.
    3. Insira um Endereço IP não utilizado na mesma sub-rede (SQL-subnet-1) que a VM do SQL Server, como 10.38.1.10.
    4. Deixe o Endereço IP público no padrão de Desassociar.
    5. Selecione OK para concluir a adição da configuração de IP.

    Adicione o IP do cluster inserindo um endereço IP usado na sub-rede da primeira VM do SQL Server

  5. Selecione + Adicionar novamente a fim de configurar um endereço IP adicional para o nome da rede da FCI (com um nome como FCI-network-name), especificando novamente um endereço IP não utilizado em SQL-subnet-1, como 10.38.1.11:

    Selecione + Adicionar novamente para configurar mais um endereço IP para o ouvinte do grupo de disponibilidade (com um nome como availability-group-listener), também usando um endereço IP não utilizado em SQL-subnet-1, como 10.31.1.11

  6. Repita essas etapas para a segunda VM do SQL Server. Atribua dois endereços IP secundários não utilizados em SQL-subnet-2. Use os valores da tabela a seguir para adicionar a configuração de IP (embora os endereços IP sejam apenas exemplos, o seu pode variar):

    Campo Entrada Entrada
    Nome windows-cluster-ip FCI-network-name
    Alocação Estático Estático
    Endereço IP 10.38.2.10 10.38.2.11

Desinstalar o SQL Server

Como parte do processo de criação da FCI, você instalará o SQL Server como uma instância clusterizada no cluster de failover. Se você tiver implantado uma máquina virtual com uma imagem do Azure Marketplace sem SQL Server, você poderá ignorar esta etapa. Se você tiver implantado uma imagem com o SQL Server pré-instalado, precisará excluir a extensão da VM do SQL Server e, em seguida, desinstalar o SQL Server.

Excluir a extensão do Agente do IaaS do SQL

As imagens da VM do SQL Server do Azure Marketplace são registradas automaticamente com a extensão Agente de IaaS do SQL. Antes de desinstalar a instância do SQL Server pré-instalada, você deve primeiro excluir a extensão da VM do SQL Server.

Como excluir a extensão de sua VM do SQL Server com o Azure PowerShell, usando o seguinte código de exemplo:

Remove-AzSqlVM -ResourceGroupName <resource_group_name> -Name <SQL VM resource name>

Desinstalar o SQL Server

Depois de excluir a extensão, você pode desinstalar o SQL Server. Siga estas etapas em cada máquina virtual:

  1. Conecte-se à máquina virtual usando RDP ou Bastion. Quando você se conectar pela primeira vez a uma máquina virtual usando o RDP ou Bastion, um aviso perguntará se deseja permitir que o computador seja detectável na rede. Selecione Sim.

  2. Abra Programas e Recursos no Painel de Controle.

  3. Em Programas e Recursos, clique com o botão direito do mouse em Microsoft SQL Server 201_ (64 bits) e selecione Desinstalar/Alterar.

  4. Selecione Remover.

  5. Selecione a instância padrão.

  6. Remova todos os recursos em Serviços do Mecanismo de Banco de Dados, Analysis Services e Reporting Services – Nativo. Não remova nada em Recursos Compartilhados. Você verá algo como a seguinte captura de tela:

    Captura de tela mostrando quais recursos selecionar para desinstalar o SQL Server.

  7. Selecione Avançar e Remover.

  8. Depois que a instância for removida com êxito, reinicie a máquina virtual.

Abrir o firewall

Em cada máquina virtual, abra a porta TCP do firewall do Windows que o SQL Server usa. Por padrão, o SQL Server usa a porta 1433, mas se você alterou isso em seu ambiente, abra a porta em que você configurou a instância do SQL Server a ser usada. A porta 1433 é aberta automaticamente em imagens do SQL Server implantadas por meio do Azure Marketplace.

Se você usar um balanceador de carga para o cenário de sub-rede única, também precisará abrir a porta que a investigação de integridade usará. Por padrão, a investigação de integridade usa a porta 59999, mas ela pode ser qualquer porta TCP que você especificar ao criar o balanceador de carga.

Esta tabela detalha as portas que talvez você precise abrir, dependendo da configuração da FCI:

Finalidade Porta Observações
SQL Server TCP 1433 Porta normal para instâncias padrão do SQL Server. Se você tiver usado uma imagem da galeria, essa porta será aberta automaticamente.

Usado por: todas as configurações da FCI.
Investigação de integridade TCP 59999 Qualquer porta TCP aberta. Configure a investigação de integridade do balanceador de carga e o cluster para usar essa porta.

Usado por: FCI com balanceador de carga em um cenário de sub-rede única.
Compartilhamento de arquivo UDP 445 Porta que o serviço de compartilhamento de arquivos usa.

Usado por: FCI com compartilhamento de arquivos Premium.

Ingressar no domínio

Você também precisa ingressar as máquinas virtuais no domínio. Você pode fazer isso usando um modelo de início rápido.

Rever a configuração de armazenamento

As máquinas virtuais criadas no Azure Marketplace são fornecidas com o armazenamento anexado. Se você planejar configurar o armazenamento da FCI usando compartilhamentos de arquivos Premium ou discos compartilhados do Azure, será possível remover o armazenamento anexado para economizar em custos porque o armazenamento local não é usado para a instância de cluster de failover. No entanto, é possível usar o armazenamento anexado para soluções de Espaços de Armazenamento Diretos na FCI, portanto, removê-las nesse caso pode não ser útil. Examine sua solução de armazenamento na FCI para determinar se a remoção do armazenamento anexado é ideal para economizar custos.

Próximas etapas

Agora que você preparou o ambiente de máquina virtual, você já pode configurar a instância de cluster de failover.

Escolha um dos guias a seguir para configurar o ambiente apropriado da FCI para sua empresa:

Para obter mais informações, consulte: