Configurar um grupo de disponibilidade em várias regiões do Azure – SQL Server em VMs do Azure

Aplica-se a:SQL Server na VM do Azure

Este tutorial explica como configurar uma réplica do grupo de disponibilidade Always On para o SQL Server em VMs (máquinas virtuais) do Azure em uma região do Azure remota para a réplica primária. Você pode usar essa configuração para fins de DR (recuperação de desastre).

Use também as mesmas etapas deste artigo para estender um grupo de disponibilidade local existente para o Azure.

Este tutorial se baseia no tutorial para implantar manualmente um grupo de disponibilidade em uma única sub-rede em uma única região. As menções da região local neste artigo referem-se às máquinas virtuais e ao grupo de disponibilidade já configurados na primeira região. A região remota é a nova infraestrutura que está sendo adicionada neste tutorial.

Visão geral

A imagem a seguir mostra uma implementação comum de um grupo de disponibilidade em máquinas virtuais do Azure:

Diagram that shows an Azure load balancer and an availability set with a Windows Server failover cluster and Always On availability group.

Na implantação mostrada no diagrama, todas as máquinas virtuais estão em uma região do Azure. As réplicas do grupo de disponibilidade podem ter de confirmação síncrona com failover automático no SQL-1 e SQL-2. Para criar essa arquitetura, confira o modelo ou o tutorial de grupo de disponibilidade.

Essa arquitetura é vulnerável a tempo de inatividade se a região do Azure se tornar inacessível. Para superar essa vulnerabilidade, adicione uma réplica em uma região do Azure diferente. O seguinte diagrama mostra a aparência da nova arquitetura:

Diagram of a disaster recovery scenario for an availability group.

O diagrama mostra uma nova máquina virtual chamada SQL-3. SQL-3 está em outra região do Azure. Ela foi adicionada ao cluster de failover do Windows Server e pode hospedar uma réplica do grupo de disponibilidade.

A região do Azure para a SQL-3 tem um novo balanceador de carga do Azure. Nesta arquitetura, a réplica na região remota normalmente é configurada com o modo de disponibilidade de confirmação assíncrona e modo de failover manual.

Observação

Um conjunto de disponibilidade do Azure é necessário quando mais de uma máquina virtual está na mesma região. Se há apenas uma máquina virtual na região, o conjunto de disponibilidade não é necessário.

Você só pode colocar uma máquina virtual em um conjunto de disponibilidade no momento da criação. Se a máquina virtual já estiver em um conjunto de disponibilidade, você poderá adicionar uma máquina virtual para fazer uma réplica adicional mais tarde.

Quando as réplicas do grupo de disponibilidade estiverem em máquinas virtuais do Azure e em diferentes regiões do Azure, você poderá conectar as redes virtuais usando o emparelhamento de rede virtual ou um gateway de VPN site a site.

Importante

Essa arquitetura incorre em encargos de dados de saída para os dados replicados entre regiões do Azure. Confira Preços de largura de banda.

Criar a rede virtual e a sub-rede

Antes de criar uma rede virtual e uma sub-rede em uma nova região, escolha o espaço de endereço, a rede da sub-rede, o IP do cluster e os endereços IP do ouvinte do grupo de disponibilidade que você usará para a região remota.

A tabela a seguir lista os detalhes da região local (atual) e o que será configurado na nova região remota.

Tipo Local Região remota
Espaço de endereço 192.168.0.0/16 10.36.0.0/16
Rede da sub-rede 192.168.15.0/24 10.36.1.0/24
IP do Cluster 192.168.15.200 10.36.1.200
IP do ouvinte do grupo de disponibilidade 192.168.15.201 10.36.1.201

Para criar uma rede virtual e uma sub-rede na nova região no portal do Azure:

  1. Acesse o grupo de recursos no portal do Azure e selecione + Criar.

  2. Procure rede virtual na caixa de pesquisa do Marketplace e escolha o bloco da rede virtual da Microsoft.

  3. Na página Criar rede virtual, selecione Criar. Em seguida, insira as seguintes informações na guia Informações básicas:

    1. Em Detalhes do projeto, em Assinatura, selecione a assinatura do Azure apropriada. Em Grupo de recursos, selecione o grupo de recursos que você criou anteriormente, como SQL-HA-RG.
    2. Em Detalhes da instância, forneça um nome para sua rede virtual, como remote_HAVNET. Em seguida, escolha uma nova região remota.

    Screenshot of the Azure portal that shows selections for creating a virtual network in a remote region.

  4. Na guia Endereços IP, selecione as reticências () ao lado de + Adicionar uma sub-rede. Selecione Excluir espaço de endereço para remover o espaço de endereço existente, caso precise de outro intervalo de endereços.

    Screenshot of the Azure portal that shows selections for deleting the existing address space in a virtual network.

  5. Selecione Adicionar um espaço de endereço IP para abrir o painel para criar o espaço de endereço necessário. Este tutorial usa o espaço de endereço da região remota: 10.36.0.0/16. Selecione Adicionar.

    Screenshot of the Azure portal that shows selections for adding an address space for a virtual network.

  6. Selecione + Adicionar uma sub-rede e:

    1. Forneça um valor para o Nome da sub-rede, como admin.

    2. Forneça um intervalo de endereços de sub-rede exclusivo dentro do espaço de endereço da rede virtual.

      Por exemplo, se o intervalo de endereços for 10.36.0.0/16, insira estes valores para a sub-rede admin: 10.36.1.0 em Endereço inicial e /24 em Tamanho da sub-rede.

    3. Selecione Adicionar para adicionar a nova sub-rede.

    Screenshot of the Azure portal that shows selections for adding a subnet to a virtual network.

Conectar as redes virtuais nas duas regiões do Azure

Depois de criar a rede virtual e a sub-rede, você estará pronto para conectar as duas regiões para que elas possam se comunicar entre si. Há dois métodos para fazer isso:

Este tutorial usa o emparelhamento de rede virtual. Para configurar o emparelhamento de rede virtual:

  1. Na caixa de pesquisa na parte superior do portal do Azure, digite autoHAVNET, que é a rede virtual da região local. Quando a autoHAVNET for exibida nos resultados da pesquisa, selecione-a.

  2. Em Configurações, selecione Emparelhamentos e + Adicionar.

    Screenshot of the Azure portal that shows selections for adding a virtual network peering.

  3. Insira ou selecione, as informações a seguir, aceite os padrões para as configurações restantes e, em seguida, selecione Adicionar.

    Configuração Valor
    Esta rede virtual
    Nome do link de emparelhamento Insira autoHAVNET-remote_HAVNET para o nome do emparelhamento de autoHAVNET para a rede virtual remota.
    Rede virtual remota
    Nome do link de emparelhamento Insira remote_HAVNET-autoHAVNET para o nome do emparelhamento da rede virtual remota para autoHAVNET.
    Assinatura Selecione sua assinatura da rede virtual remota.
    Rede virtual Selecione remote_HAVNET para o nome da rede virtual remota. A rede virtual remota pode estar na mesma região do autoHAVNET ou em uma região diferente.

    Screenshot of the Azure portal that shows peering settings.

  4. Na página Emparelhamentos, o Status do emparelhamento é Conectado.

    Screenshot of the Azure portal that shows a Connected status for virtual network peering.

    Caso não veja um status Conectado, selecione o botão Atualizar.

Criar um controlador de domínio

Um controlador de domínio na nova região será necessário para fornecer autenticação se o site primário não estiver disponível. Para criar o controlador de domínio na nova região:

  1. Retorne ao grupo de recursos SQL-HA-RG.
  2. Selecione + Criar.
  3. Digite Windows Server 2016 Datacenter e selecione o resultado Windows Server 2016 Datacenter.
  4. Em Windows Server 2016 Datacenter, verifique se o modelo de implantação está definido como Gerenciador de Recursos e, em seguida, clique em Criar.

A seguinte tabela mostra as configurações para os dois computadores:

Configuração Valor
Nome Controlador de domínio remoto: ad-remote-dc
Tipo de disco da VM SSD
Nome de usuário DomainAdmin
Senha Contoso!0000
Assinatura Sua assinatura
Grupo de recursos SQL-HA-RG
Localidade Seu local
Tamanho DS1_V2
Storage Usar discos gerenciados: Sim
Rede virtual remote_HAVNET
Sub-rede admin
Endereço IP público Mesmo nome que a VM
Grupo de segurança de rede Mesmo nome que a VM
Diagnóstico habilitado
Conta de armazenamento de diagnóstico Criada automaticamente

O Azure cria as máquinas virtuais.

Configurar o controlador de domínio

Nas seguintes etapas, configure o computador ad-remote-dc como um controlador de domínio para corp.contoso.com:

Definir o endereço do servidor DNS preferencial

O endereço preferencial do servidor DNS não deve ser atualizado diretamente em uma VM, mas deve ser editado no portal do Azure, no PowerShell ou na CLI do Azure. Siga estas etapas para fazer a alteração no portal do Azure:

  1. Entre no portal do Azure.

  2. Na caixa de pesquisa, na parte superior do portal, insira Adaptador de rede. Selecione Adaptadores de rede, nos resultados da pesquisa.

  3. Selecione na lista a interface de rede do segundo controlador de domínio que você deseja visualizar ou mudar as configurações.

  4. Em Configurações, selecione Servidores DNS.

  5. Como esse controlador de domínio não está na mesma rede virtual do controlador de domínio primário, selecione Personalizado e insira o endereço IP do controlador de domínio primário, como 192.168.15.4. O endereço do servidor DNS especificado é atribuído somente a esse adaptador de rede e substitui qualquer configuração de DNS para a rede virtual à qual o adaptador de rede foi atribuído.

  6. Selecione Salvar.

  7. Volte à máquina virtual no portal do Azure e reinicie a VM. Depois que a máquina virtual for reiniciada, você poderá ingressar a VM no domínio.

Ingressar no domínio

Em seguida, ingresse no domínio corp.contoso.com. Para fazer isso, siga estas etapas:

  1. Conecte-se remotamente à máquina virtual usando a conta BUILTIN\DomainAdmin.
  2. Abra Gerenciador do Servidor e selecione Servidor Local.
  3. Selecione GRUPO DE TRABALHO.
  4. Na seção Nome do computador, selecione Alterar.
  5. Marque a caixa de seleção Domínio e digite corp.contoso.com na caixa de texto. Selecione OK.
  6. Na caixa de diálogo pop-up Segurança do Windows, especifique as credenciais para a conta de administrador de domínio padrão (CORP\DomainAdmin) e a senha (Contoso!0000).
  7. Quando a mensagem "Bem-vindo ao domínio corp.contoso.com" for exibida, clique emOK.
  8. Selecione Fechar e, em seguida, Reiniciar agora na caixa de diálogo pop-up.

Configurar o controlador de domínio

Quando o servidor tiver ingressado no domínio, você poderá configurá-lo como o segundo controlador de domínio. Para fazer isso, siga estas etapas:

  1. Se você ainda não está conectado, abra uma sessão RDP no controlador de domínio secundário e abra o Painel do Gerenciador do Servidor (que pode estar aberto por padrão).

  2. Selecione Adicionar funções e recursos no painel.

    Server Manager - Add roles

  3. Selecione Avançar até alcançar a seção Funções de Servidor.

  4. Selecione Active Directory Domain Services e as funções do Servidor DNS. Quando for solicitado, acrescente os recursos adicionais que são necessários para essas funções.

  5. Depois que os recursos forem instalados, retorne para o painel Gerenciador do Servidor .

  6. Selecione a nova opção AD DS no painel esquerdo.

  7. Selecione o link Mais na barra de aviso amarela.

  8. Na coluna Ação da caixa de diálogo Todos os Detalhes de Tarefa do Servidor, selecione Promover este servidor a um controlador de domínio.

  9. Em Configuração de Implantação, selecione Adicionar um controlador de domínio a um domínio existente.

  10. Clique em Selecionar.

  11. Conecte-se usando a conta de administrador (CORP.CONTOSO.COM\domainadmin) e senha (Contoso!0000).

  12. Em Selecione um domínio na floresta, escolha seu domínio e, em seguida, selecione OK.

  13. Em Opções do Controlador de Domínio, use os valores padrão e defina uma senha de DSRM.

    Observação

    A página Opções de DNS poderá avisar que não foi possível criar uma delegação para este servidor DNS. Você pode ignorar esse aviso em ambientes que não são de produção.

  14. Selecione Avançar até a caixa de diálogo marcar Pré-requisitos. Em seguida, selecione Instalar.

Depois que o servidor concluir as alterações de configuração, reinicie-o.

Criar uma VM do SQL Server

Após a reinicialização do controlador de domínio, a próxima etapa é criar uma máquina virtual do SQL Server na nova região.

Antes de prosseguir, considere as seguintes decisões de design:

  • Armazenamento: discos gerenciados do Azure

    Para o armazenamento da máquina virtual, use os discos gerenciados do Azure. Recomendamos os discos gerenciados para as máquinas virtuais do SQL Server. Os discos gerenciados cuidam do armazenamento nos bastidores. Além disso, quando as máquinas virtuais com os discos gerenciados estão no mesmo conjunto de disponibilidade, o Azure distribui os recursos de armazenamento para fornecer a redundância apropriada.

    Para saber mais, confira Introdução aos discos gerenciados do Azure. Para obter as especificações dos discos gerenciados em um conjunto de disponibilidade, confira Usar discos gerenciados para VMs em um conjunto de disponibilidade.

  • Rede: Endereços IP privados em produção

    Para as máquinas virtuais, este tutorial usa endereços IP públicos. Um endereço de IP público permite a conexão remota diretamente com a máquina virtual pela Internet, e isso facilita as etapas de configuração. Em ambientes de produção, recomendamos somente endereços IP privados. Os endereços IP privados reduzem o volume de vulnerabilidade da VM do SQL Server.

  • Rede: NIC única por servidor

    Use uma só NIC (placa de adaptador de rede) por servidor (nó de cluster) e uma só sub-rede. A rede do Azure tem redundância física, o que tornam desnecessárias as NICs e as sub-redes adicionais em um cluster convidado de uma VM do Azure. O relatório de validação de cluster avisará que os nós podem ser acessados apenas em uma rede. Você pode ignorar esse aviso nos clusters de failover convidados da VM do Azure.

Criar e configurar a VM do SQL Server

Para criar cada a VM do SQL Server, volte para o grupo de recursosSQL-HA-RG e selecione Adicionar. Procure o item da galeria apropriado, selecione máquina virtuale, em seguida, selecione da galeria. Use as informações na tabela a seguir para ajudar a criar as VMs:

Página Configuração
Selecione o item da galeria apropriado SQL Server 2016 SP1 Enterprise no Windows Server 2016
Configuração da máquina virtual: Informações básicas Nome = sqlserver-2

Nome de Usuário = DomainAdmin

Senha = Contoso!0000

Assinatura = Sua assinatura

Grupo de recursos = SQL-HA-RG

Localização = Sua região remota
Configuração da máquina virtual: Tamanho Tamanho = DS2_V2 (2 vCPUs, 7 GB)

O tamanho precisa dar suporte ao armazenamento SSD (suporte ao disco premium).
Configuração da máquina virtual: Configurações Armazenamento: Use discos gerenciados

Rede virtual = HAVNET remota

Sub-rede = admin (10.36.1.0/24)

Endereço IP público = Gerado automaticamente

Grupo de segurança de rede = Nenhum

Monitorando Diagnóstico = Habilitado

Conta de armazenamento de diagnóstico = Use uma conta de armazenamento gerada automaticamente

Configuração da máquina virtual: Configurações do SQL Server Conectividade do SQL = Privada (na rede virtual)

Porta = 1433

Autenticação do SQL = Desabilitada

Configuração de armazenamento = Geral

Aplicação de patch automatizada = Domingo às 14h

Backup automatizado = Desabilitado

Integração do Cofre de Chaves do Azure = Desabilitado

Observação

O tamanho de computador sugerido aqui serve para testar grupos de disponibilidade em máquinas virtuais do Azure. Para obter o melhor desempenho em cargas de trabalho de produção, confira as recomendações de configuração e tamanhos de computador do SQL Server em Lista de verificação: Melhores práticas relacionadas do SQL Server em VMs do Azure.

Depois que a VM for totalmente provisionada, você precisará ingressá-la no domínio corp.contoso.com e conceder direitos administrativos de CORP\Install aos computadores.

Ingresse o servidor ao domínio

Para ingressar a VM em corp.contoso.com, use as seguintes etapas para a VM do SQL Server:

  1. Conecte-se remotamente à máquina virtual usando BUILTIN\DomainAdmin.
  2. Em Gerenciador do Servidor, selecione Servidor Local.
  3. Selecione o link WORKGROUP.
  4. Na seção Nome do computador, selecione Alterar.
  5. Marque a caixa de seleção Domínio e insira corp.contoso.com na caixa de texto. Depois, selecione OK.
  6. Na caixa de diálogo pop-up Segurança do Windows, especifique as credenciais para a conta de administrador de domínio padrão (CORP\DomainAdmin) e a senha (Contoso!0000).
  7. Quando a mensagem "Bem-vindo ao domínio corp.contoso.com" for exibida, clique emOK.
  8. Selecione Fechar e Reiniciar Agora na caixa de diálogo pop-up.

Adicionar contas

A próxima tarefa será adicionar a conta de instalação como administrador na VM do SQL Server e conceder permissão a essa conta e às contas locais no SQL Server. Em seguida, você poderá atualizar a conta de serviço do SQL Server.

Adicionar o usuário CORP\Install como administrador em cada VM de cluster

Depois de reiniciar a máquina virtual do SQL Server como um membro do domínio, adicione CORP\Install como um membro do grupo administradores local:

  1. Aguarde até que a VM seja reiniciada e abra o arquivo RDP novamente no controlador de domínio primário. Entre em sqlserver-2 usando a conta CORP\DomainAdmin.

    Dica

    Nas etapas anteriores, você estava usando a conta de administrador BUILTIN. Agora que o servidor está no domínio, conecte-se com a conta de administrador do domínio. Na sua sessão de RDP, especifique DOMÍNIO\nome de usuário.

  2. Em Gerenciador do Servidor, selecione Ferramentas e, em seguida, selecione Gerenciamento do Computador.

  3. Na janela Gerenciamento do Computador, expanda Usuários e Grupos Locais e selecione Grupos.

  4. Clique duas vezes no grupo Administradores .

  5. Na caixa de diálogo Propriedades do Administrador, selecione o botão Adicionar.

  6. Insira o usuário como CORP\Install e selecione OK.

  7. Selecione OK para fechar a caixa do diálogo Propriedades do Administrador.

Criar uma entrada em cada VM do SQL Server para a conta de instalação

Use a conta de instalação (CORP\Install) para configurar o grupo de disponibilidade. Essa conta precisa ser membro da função de servidor fixa sysadmin de cada VM do SQL Server. As etapas a seguir criam uma entrada para a conta de instalação. Realize-as nas duas VMs do SQL Server.

  1. Conecte-se ao servidor por meio do RDP usando a conta <MachineName>\DomainAdmin.

  2. Abra o SQL Server Management Studio e conecte-se ao SQL Server da instância local.

  3. Em Pesquisador de objetos, selecione Segurança.

  4. Clique com botão direito do mouse em Logons. Selecione Novo logon.

  5. Em Logon – Novo, selecione Pesquisar.

  6. Select Localizações.

  7. Insira as credenciais da rede do administrador de domínio. Use a conta de instalação (CORP\Install).

  8. Defina a entrada como um membro da função de servidor fixa sysadmin.

  9. Selecione OK.

Configurar permissões de conta do sistema

Para criar uma conta do sistema e conceder as permissões apropriadas, realize as seguintes etapas em cada instância do SQL Server:

  1. Use o seguinte script para criar uma conta para [NT AUTHORITY\SYSTEM]:

    USE [master]
    GO
    CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS WITH DEFAULT_DATABASE=[master]
    GO 
    
  2. Conceda as seguintes permissões a [NT AUTHORITY\SYSTEM]:

    • ALTER ANY AVAILABILITY GROUP
    • CONNECT SQL
    • VIEW SERVER STATE

    O script a seguir concede estas permissões:

    GRANT ALTER ANY AVAILABILITY GROUP TO [NT AUTHORITY\SYSTEM]
    GO
    GRANT CONNECT SQL TO [NT AUTHORITY\SYSTEM]
    GO
    GRANT VIEW SERVER STATE TO [NT AUTHORITY\SYSTEM]
    GO 
    

Defina as contas de serviço do SQL Server

Em cada VM do SQL Server, realize as etapas a seguir para definir a conta de serviço do SQL Server. Use as contas que você criou quando configurou as contas de domínio.

  1. Abra o SQL Server Configuration Manager.
  2. Clique com o botão direito do mouse no serviço do SQL Server e selecione Propriedades.
  3. Defina a conta e a senha.

Para grupos de disponibilidade do SQL Server, cada VM do SQL Server precisa ser executado como uma conta de domínio.

Criar um balanceador de carga do Azure

Um balanceador de carga é necessário na região remota para dar suporte ao grupo de disponibilidade do SQL Server. O balanceador de carga contém os endereços IP dos ouvintes do grupo de disponibilidade e do cluster de failover do Windows Server. Esta seção resume como criar o balanceador de carga no portal do Azure.

O balanceador de carga deve:

  • Estar na mesma rede e sub-rede como a nova máquina virtual.
  • Ter um endereço IP estático para o ouvinte do grupo de disponibilidade.
  • Incluir um pool de back-end que consista somente nas máquinas virtuais na mesma região do balanceador de carga.
  • Usar uma investigação de porta TCP específica do endereço IP.
  • Ter uma regra de balanceamento de carga específica da instância do SQL Server na mesma região.
  • Ser um balanceador de carga padrão se as máquinas virtuais no pool de back-end não fazem parte de um conjunto de disponibilidade individual ou de um conjunto de dimensionamento de máquinas virtuais. Para obter mais informações, confira O que é o Azure Load Balancer?.
  • Ser um balanceador de carga padrão se as duas redes virtuais em duas regiões diferentes estão emparelhadas no emparelhamento de rede virtual global. Para obter mais informações, consulte perguntas frequentes sobre a rede virtual do Azure.

As etapas para criar o balanceador de carga são:

  1. No portal do Azure, acesse o grupo de recursos em que está a instância do SQL Server e selecione + Adicionar.

  2. Pesquise pelo Balanceador de Carga. Escolha o balanceador de carga publicado pela Microsoft.

  3. Selecione Criar.

  4. Configure os seguintes parâmetros para o balanceador de carga:

    Configuração Valor
    Assinatura Use a mesma assinatura da máquina virtual.
    Grupo de recursos Use o mesmo grupo de recursos da máquina virtual.
    Nome Use um nome de texto para o balanceador de carga (por exemplo, remoteLB).
    Região Use a mesma região que a máquina virtual.
    SKU Selecione Padrão.
    Tipo selecione Interno.

    O painel do portal do Azure será parecido com este:

    Screenshot of the Azure portal that shows basic information for creating a load balancer.

  5. Selecione Avançar: Configuração do IP de Front-end.

  6. Selecione Adicionar uma configuração de IP de front-end.

    Screenshot of the Azure portal that shows the button for adding a frontend IP configuration.

  7. Configure o endereço IP de front-end usando os seguintes valores:

    • Nome: use um nome que identifique a configuração de IP de front-end.
    • Rede virtual: use a mesma rede das máquinas virtuais.
    • Sub-rede: use a mesma sub-rede das máquinas virtuais.
    • Atribuição: selecione Estático.
    • Endereço IP: use um endereço disponível na sub-rede. Use este endereço para o ouvinte do grupo de disponibilidade. Esse endereço é diferente do endereço IP do cluster.
    • Zona de disponibilidade: opcionalmente, escolha uma zona de disponibilidade para implantar o endereço IP.

    Screenshot of the Azure portal that shows the dialog for adding a frontend IP configuration.

  8. Selecione Adicionar.

  9. Escolha Revisar + Criar para validar a configuração e Criar para criar o balanceador de carga e o endereço IP de front-end.

Para configurar o balanceador de carga, você precisará criar um pool de back-end e uma investigação, além de definir as regras de balanceamento de carga.

Adicionar um pool de back-end ao ouvinte do grupo de disponibilidade

  1. No portal do Azure, vá para o grupo de disponibilidade. Talvez seja necessário atualizar a exibição para ver o balanceador de carga recém-criado.

  2. Selecione o balanceador de carga, Pools de back-end e +Adicionar.

  3. Em Nome, forneça um nome para o pool de back-end.

  4. Em Configuração do Pool de Back-end, escolha NIC.

  5. Selecione Adicionar para associar o pool de back-end à VM do SQL Server recém-criada.

  6. Em Máquina virtual, escolha a máquina virtual que hospedará a réplica do grupo de disponibilidade.

  7. Selecione Adicionar para adicionar a máquina virtual ao pool de back-end.

  8. Selecione Salvar.

Definir a investigação

  1. No portal do Azure, selecione o balanceador de carga, Investigações de integridade e +Adicionar.

  2. Defina a investigação de integridade do ouvinte, conforme a seguir:

    Configuração Descrição Exemplo
    Nome Texto SQLAlwaysOnEndPointProbe
    Protocolo Escolher TCP TCP
    Porta Qualquer porta não utilizada 59999
    Intervalo O tempo entre as tentativas de investigação, em segundos 5
  3. Selecione Adicionar.

Definir as regras de balanceamento de carga

  1. No portal do Azure, selecione o balanceador de carga, Regras de balanceamento de carga e +Adicionar.

  2. Defina as regras de balanceamento de carga do ouvinte da seguinte maneira:

    Configuração Descrição Exemplo
    Nome Texto SQLAlwaysOnEndPointListener
    Endereço IP de front-end Escolher um endereço Use o endereço que você criou ao criar o balanceador de carga.
    Pool de back-end Escolha o pool de back-ends Selecione o pool de back-end que contém as máquinas virtuais destinadas ao balanceador de carga.
    Protocolo Escolher TCP TCP
    Porta Usar a porta para o ouvinte do grupo de disponibilidade 1433
    Porta de back-end Esse campo não é usado quando um IP flutuante é definido para o retorno de servidor direto 1433
    Investigação de integridade O nome especificado para a investigação SQLAlwaysOnEndPointProbe
    Persistência de sessão Lista suspensa Nenhuma
    Tempo limite de ociosidade Minutos para manter uma conexão TCP aberta 4
    IP flutuante (retorno de servidor direto) Habilite esta configuração.

    Aviso

    O retorno de servidor direto é definido durante a criação. Não é possível alterar isso.

  3. Selecione Salvar.

Adicionar um clustering de failover às VMs do SQL Server

Para adicionar recursos de clustering de failover, realize as seguintes etapas nas duas VMs do SQL Server:

  1. Conecte-se à máquina virtual do SQL Server por meio do RDP usando a conta CORP\Install. Abra o painel do Gerenciador do Servidor.

  2. Selecione Adicionar funções e recursos no painel.

    Screenshot of the Server Manager dashboard that shows the link for adding roles and features.

  3. Selecione Avançar até alcançar a seção Recursos do Servidor.

  4. Em Recursos, selecione Clustering de Failover.

  5. Adicione os recursos necessários.

  6. Selecione Instalar.

Observação

Você já pode automatizar essa tarefa, além do ingresso propriamente dito das VMs do SQL Server no cluster de failover, usando a CLI do Azure e os modelos de início rápido do Azure.

Ajustar os limites de rede para um cluster de failover

Ao executar nós de cluster de failover do Windows em VMs do Azure com grupos de disponibilidade do SQL Server, altere a configuração de cluster para um estado de monitoramento mais flexível. Essa alteração tornará o cluster muito mais estável e confiável. Para obter detalhes, confira IaaS com o SQL Server: como ajustar os limites de rede para um cluster de failover.

Configurar o firewall em cada VM do SQL Server

A solução requer que as seguintes portas TCP estejam abertas no firewall:

  • Máquina virtual do SQL Server: porta 1433 para uma instância padrão do SQL Server.
  • Investigação do balanceador de carga do Azure: qualquer porta disponível. Os exemplos geralmente usam 59999.
  • Investigação de integridade do endereço IP do balanceador de carga do núcleo do cluster: qualquer porta disponível. Os exemplos geralmente usam 58888.
  • Ponto de extremidade do espelhamento de banco de dados: qualquer porta disponível. Os exemplos geralmente usam 5022.

As portas do firewall precisam ser abertas na nova VM do SQL Server. O método de abrir as portas depende da solução de firewall usada. As seguintes etapas mostram como abrir as portas no Firewall do Windows:

  1. Na tela Iniciar do SQL Server, abra o Firewall do Windows com Segurança Avançada.

  2. No painel esquerdo, selecione Regras de Entrada. No painel direito, selecione Nova Regra.

  3. Em Tipo de Regra, selecione Porta.

  4. Para a porta, especifique TCP e insira os números de porta apropriados. A captura de tela a seguir mostra um exemplo:

    Screenshot that shows selections for creating a new inbound rule for a firewall.

  5. Selecione Avançar.

  6. Na página Ação, mantenha selecionada a opção Permitir a conexão e escolha Avançar.

  7. Na página Perfil, aceite as configurações padrão e selecione Avançar.

  8. Na página Nome, especifique um nome de regra (como Investigação do Azure LB) na caixa Nome e selecione Concluir.

Adicionar o SQL Server ao cluster de failover do Windows Server

A nova VM do SQL Server precisa ser adicionada ao cluster de failover do Windows Server existente na sua região local.

Para adicionar a VM do SQL Server ao cluster:

  1. Use o RDP para se conectar a uma VM do SQL Server no cluster existente. Use uma conta de domínio que seja de administrador nas VMs do SQL Server e no servidor testemunha.

  2. No painel do Gerenciador do Servidor, selecione Ferramentas e Gerenciador de Cluster de Failover.

  3. No painel esquerdo, clique com o botão direito do mouse em Gerenciador de Cluster de Failover e selecione Conectar-se ao Cluster.

  4. Na janela Selecionar Cluster em Nome do cluster, escolha <Cluster neste servidor>. Depois, selecione OK.

  5. Na árvore do navegador, clique com o botão direito do mouse no cluster e selecione Adicionar Nó.

  6. No Assistente para Adicionar Nó, selecione Avançar.

  7. Na página Selecionar Servidores, adicione o nome da nova instância do SQL Server. Insira o nome do servidor em Insira o nome do servidor e selecione Adicionar e Avançar.

  8. Na página Aviso de Validação, selecione Não. (Em um cenário de produção, você deve executar os testes de validação). Em seguida, selecione Avançar.

  9. Na página Confirmação, se você estiver usando os Espaços de Armazenamento, desmarque a caixa de seleção Adicionar todo o armazenamento qualificado ao cluster.

    Aviso

    Se você não desmarcar Adicionar todo o armazenamento qualificado ao cluster, o Windows desanexará os discos virtuais durante o processo de clustering. Como resultado, eles não serão exibidos no Gerenciador de Discos nem no Pesquisador até que o armazenamento seja removido do cluster e reanexado por meio do PowerShell.

  10. Selecione Avançar.

  11. Selecione Concluir.

    O Gerenciador de Cluster de Failover mostra que o cluster tem um novo nó e o listará no contêiner Nós.

Adicionar o endereço IP ao cluster de failover do Windows Server

Observação

No Windows Server 2019, o cluster cria um nome de servidor distribuído em vez de um nome de rede de cluster. Se você estiver usando o Windows Server 2019, vá para Adicionar um endereço IP para o ouvinte do grupo de disponibilidade. Crie um nome de rede de cluster usando o PowerShell. Para obter mais informações, confira a postagem no blog Cluster de failover: objeto de rede de cluster.

Em seguida, crie o recurso de endereço IP e adicione-o ao cluster da nova VM do SQL Server:

  1. No Gerenciador de Cluster de Failover, selecione o nome do cluster. Clique com o botão direito do mouse no nome do cluster em Recursos do Núcleo do Cluster e selecione Propriedades:

    Screenshot of Failover Cluster Manager that shows selections for opening cluster properties.

  2. Na caixa de diálogo Propriedades do Cluster, selecione Adicionar em Endereço IP e adicione o endereço IP do nome do cluster da região de rede remota. Selecione OK na caixa de diálogo Endereço IP e OK na caixa de diálogo Propriedades do Cluster para salvar o novo endereço IP.

    Screenshot that shows the dialogs for creating a cluster IP address.

  3. Adicione o endereço IP como uma dependência do nome do núcleo do cluster.

    Abra a caixa de diálogo Propriedades do Cluster mais uma vez e selecione a guia Dependências. Configure uma dependência OR para os dois endereços IP.

    Screenshot of the Cluster Properties dialog that shows selections for adding a dependency.

Adicionar um endereço IP para o ouvinte do grupo de disponibilidade

O endereço IP do ouvinte na região remota precisa ser adicionado ao cluster. Para adicionar o endereço IP:

  1. No Gerenciador de Cluster de Failover, clique com o botão direito do mouse na função de grupo de disponibilidade. Aponte para Adicionar Recurso, aponte para Mais Recursos e selecione Endereço IP.

    Screenshot of Failover Cluster Manager that shows selections for adding an IP address as a resource.

  2. Para configurar esse endereço IP, clique com o botão direito do mouse no recurso em Outros Recursos e selecione Propriedades.

    Screenshot of Failover Cluster Manager that shows selections for opening properties for a resource.

  3. Em Nome, insira um nome para o novo recurso. Em Rede, selecione a rede no datacenter remoto. Selecione Endereço IP Estático e, na caixa Endereço, atribua o endereço IP estático do novo balanceador de carga do Azure.

    Screenshot of the dialog for IP address properties, showing assignment of the listener IP in the cluster.

  4. Selecione Aplicar e, depois, OK.

  5. Adicione o recurso de endereço IP como uma dependência para o cluster do ouvinte cliente acesso ponto (nome da rede).

    Clique com o botão direito do mouse no ponto de acesso do cliente do ouvinte e selecione Propriedades. Navegue até a guia Dependências e adicione o novo recurso de endereço IP ao ponto de acesso do cliente ouvinte. Captura de tela a seguir mostra um recurso de cluster de endereço IP configurado corretamente:

    Screenshot of Failover Cluster Manager that shows configured IP addresses for an availability group.

    Importante

    O grupo de recursos de cluster inclui os dois endereços IP. Os dois endereços IP são dependências para o ponto de acesso de cliente do ouvinte. Use o ou operador na configuração de dependência do cluster.

  6. Definir os parâmetros do cluster no PowerShell.

    Execute o script do PowerShell com o nome de rede do cluster, o endereço IP e a porta de investigação configurados no balanceador de carga na nova região:

    $ClusterNetworkName = "<MyClusterNetworkName>" # The cluster name for the network in the new region (Use Get-ClusterNetwork on Windows Server 2012 or later to find the name.)
    $IPResourceName = "<IPResourceName>" # The cluster name for the new IP address resource.
    $ILBIP = "<n.n.n.n>" # The IP address of the internal load balancer in the new region. This is the static IP address for the load balancer that you configured in the Azure portal.
    [int]$ProbePort = <nnnnn> # The probe port that you set on the internal load balancer.
    
    Import-Module FailoverClusters
    
    Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"=$ProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
    

Habilitar os grupos de disponibilidade

Em seguida, habilite o recurso Grupos de disponibilidade Always On. Realize estas etapas na nova VM do SQL Server:

  1. Na tela Iniciar, abra o SQL Server Configuration Manager.

  2. Na árvore do navegador, selecione Serviços do SQL Server. Clique com o botão direito do mouse no serviço SQL Server (MSSQLSERVER) e selecione Propriedades.

  3. Selecione a guia Alta Disponibilidade Always On e escolha Habilitar Grupos de Disponibilidade Always On.

    Screenshot of selections for enabling Always On availability groups in SQL Server properties.

  4. Selecione Aplicar. Selecione OK na caixa de diálogo pop-up.

  5. Reinicie o serviço SQL Server.

Adicionar uma réplica ao grupo de disponibilidade

Depois que o SQL Server tiver reiniciado na máquina virtual recém-criada, você poderá adicioná-lo como uma réplica ao grupo de disponibilidade:

  1. Abra uma sessão da área de trabalho remota na instância primária do SQL Server no grupo de disponibilidade e abra o SSMS (SQL Server Management Studio).

  2. No Pesquisador de Objetos no SSMS, abra Alta Disponibilidade Always On>Grupos de Disponibilidade. Clique com o botão direito do mouse no nome do grupo de disponibilidade e selecione Adicionar Réplica.

  3. Conecte-se à réplica existente e escolha Avançar.

  4. Selecione Adicionar Réplica e conecte-se à nova VM do SQL Server.

    Importante

    Uma réplica em uma região remota do Azure deve ser configurada para a replicação assíncrona com failover manual.

  5. Na página Selecionar Sincronização de Dados Inicial, escolha Completa e especifique um local de rede compartilhado. Para o local, use o compartilhamento de backup criado. No exemplo, ele era \\<Primeiro SQL Server>\Backup\. Em seguida, selecione Avançar.

    Observação

    A sincronização completa usa um backup completo do banco de dados na primeira instância do SQL Server e o restaura na segunda instância. Para bancos de dados grandes, não recomendamos a sincronização completa porque isso pode levar muito tempo.

    Você pode reduzir esse tempo manualmente fazendo um backup do banco de dados e restaurando-o com NO RECOVERY. Se o banco de dados já foi restaurado com NO RECOVERY na segunda instância do SQL Server antes da configuração do grupo de disponibilidade, escolha Somente ingresso. Caso deseje fazer o backup depois de configurar o grupo de disponibilidade, escolha Ignorar sincronização inicial de dados.

    Screenshot that shows selection of the option for full data synchronization.

  6. Na página Validação, selecione Avançar. O arquivo deve ser semelhante à seguinte imagem:

    Screenshot of the page that displays results of availability group validation in SSMS.

    Observação

    Um aviso para a configuração do ouvinte indica que você não configurou um ouvinte do grupo de disponibilidade. Você pode ignorar esse aviso porque o ouvinte já está configurado. Ele foi criado depois que você criou o balanceador de carga do Azure na região local.

  7. Na página Resumo, selecione Concluir e aguarde enquanto o assistente configura o novo grupo de disponibilidade. Na página Progresso, selecione Mais detalhes para ver o progresso detalhado.

    Depois que o assistente concluir a configuração, inspecione a página Resultados para verificar se o grupo de disponibilidade foi criado com sucesso.

  8. Selecione Fechar para fechar o assistente.

Conferir o grupo de disponibilidade

No Pesquisador de Objetos, expanda Alta Disponibilidade AlwaysOn e, em seguida, expanda Grupos de Disponibilidade. Clique com o botão direito do mouse no grupo de disponibilidade e selecione Mostrar Painel.

Screenshot of Object Explorer in SSMS that shows selections for opening a dashboard for an availability group.

O painel do grupo de disponibilidade será parecido com a seguinte captura de tela, agora com outra réplica:

Screenshot of the availability group dashboard in SSMS.

O painel mostra as réplicas, o modo de failover de cada réplica e o estado de sincronização.

Verifique o ouvinte do grupo de disponibilidade

  1. No Pesquisador de Objetos, expanda Alta Disponibilidade Always On, Grupos de Disponibilidade e Ouvinte do Grupo de Disponibilidade.

  2. Clique com o botão direito do mouse no nome do ouvinte e selecione Propriedades. Agora os dois endereços IP serão exibidos para o ouvinte (um em cada região).

    Screenshot of the Availability Group Listener Properties window in SSMS, showing both IP addresses being used for the listener.

Definir a conexão para várias sub-redes

A réplica no datacenter remoto faz parte do grupo de disponibilidade, mas está em outra sub-rede. Se essa réplica se tornar a réplica primária, poderão ocorrer tempos limite da conexão do aplicativo. Esse comportamento é o mesmo que um grupo de disponibilidade local em uma implantação de várias sub-redes. Para permitir conexões de cliente de aplicativos, atualize a conexão de cliente ou configurar a resolução de nome do recurso de nome de rede de cluster de cache.

De preferência, atualize a configuração do cluster para definir RegisterAllProvidersIP=1 e as cadeias de conexão do cliente para definir MultiSubnetFailover=Yes. Confira Como se conectar ao MultiSubnetFailover.

Se você não pode modificar as cadeias de conexão, você pode configurar o cache de resolução de nome. Confira Um tempo limite ocorre quando você se conecta a um ouvinte Always On em um ambiente de várias sub-redes.

Fazer failover para a região remota

Para testar a conectividade do ouvinte na região remota, faça failover da réplica na região remota. Enquanto a réplica é assíncrona, o failover é vulnerável à perda de dados. Para fazer failover sem perda de dados, alterar o modo de disponibilidade para síncrono e defina o modo de failover como automático. Use as seguintes etapas:

  1. Em Pesquisador, conecte-se à instância do SQL Server que hospeda a réplica primária.

  2. Em Grupos de Disponibilidade Always On, clique com o botão direito do mouse no grupo de disponibilidade e selecione Propriedades.

  3. Na página Geral, em Réplicas de Disponibilidade, defina a réplica secundária no site de DR (recuperação de desastre) para usar o modo de disponibilidade Confirmação Síncrona e o modo de failover Automático.

    Se você tiver uma réplica secundária no mesmo site que a réplica primária para alta disponibilidade, definido desta réplica como confirmação assíncrona e Manual.

  4. Selecione OK.

  5. No Pesquisador de Objetos, clique com o botão direito do mouse no grupo de disponibilidade e selecione Mostrar Painel.

  6. No painel, verifique se a réplica no site de recuperação de desastre está sincronizada.

  7. No Pesquisador de Objetos, clique com o botão direito do mouse no grupo de disponibilidade e selecione Failover. O SQL Server Management Studio abrirá um assistente de failover do SQL Server.

  8. Selecione Avançar e escolha a instância do SQL Server no site de DR. Selecione novamente Avançar.

  9. Conecte-se à instância do SQL Server no site de DR e selecione Avançar.

  10. Na página Resumo, verifique as configurações e selecione concluir.

Depois de testar a conectividade, mova a réplica primária novamente para o datacenter primário e definir o modo de disponibilidade para as configurações operacionais normais. A seguinte tabela mostra as configurações operacionais normais para a arquitetura descrita neste artigo:

Location Instância de servidor Função Modo de disponibilidade Modo de Failover
Datacenter primário SQL-1 Primária Síncrona Automático
Datacenter primário SQL-2 Secundário Síncrona Automático
Datacenter secundário ou remoto SQL-3 Secundário Assíncrona Manual

Para obter mais informações sobre o failover manual planejado e forçado, confira os seguintes artigos:

Próximas etapas

Para obter mais informações, consulte: