Resolver nomes de domínio privados na Instância Gerenciada de SQL do Azure

Aplica-se a:Instância Gerenciada de SQL do Azure

Neste artigo, saiba como a Instância Gerenciada de SQL do Azure resolve nomes de domínio privados.

Visão geral

Em determinadas situações, é necessário que o mecanismo de banco de dados do SQL Server resolva nomes de domínio que não existem em registros DNS públicos. Por exemplo, os seguintes cenários provavelmente envolvem nomes de domínio privados:

A Instância Gerenciada de SQL do Azure é implantada em uma rede virtual do Azure e usa a resolução de nomes fornecida pelo Azure por padrão para resolver endereços na Internet.

Para alterar o comportamento padrão de resolução de nomes e habilitar a resolução de nomes de domínio privado, você pode:

Importante

Ao alterar o servidor DNS de uma rede virtual do Azure para personalizado ou vice-versa, as Instâncias Gerenciadas do SQL nessa rede virtual também devem ser notificadas da alteração. Isso é descrito na seção Atualizar instâncias gerenciadas de SQL.

Você não precisa fazer isso apenas ao anexar ou atualizar zonas DNS privadas do Azure à rede virtual das instâncias gerenciadas. Essas alterações se propagam automaticamente para as instâncias gerenciadas.

Considerações

  • Tenha cuidado para não substituir nem desabilitar a resolução de nomes de domínio que a Instância Gerenciada de SQL do Azure usa internamente, conforme listado em Restrições de rede. Sempre configure seu servidor DNS personalizado para que ele possa resolver nomes de domínio público.
  • Sempre use um FQDN (nome de domínio totalmente qualificado) para os serviços que você deseja que a Instância Gerenciada de SQL do Azure resolva, como seu servidor de email ou uma instância local do SQL Server. Use FQDNs mesmo que esses serviços estejam dentro de sua zona DNS privada. Por exemplo, use smtp.contoso.com. A criação de um servidor vinculado ou configurar uma replicação que faz referência a VMs do SQL Server dentro da mesma rede virtual também requer um FQDN e um sufixo DNS padrão, por exemplo SQLVM.internal.cloudapp.net.

Atualizar Instâncias Gerenciadas de SQL

Se a configuração do servidor DNS for alterada em uma rede virtual com instâncias gerenciadas de SQL existentes, o cluster virtual que hospeda essas instâncias e os grupos de máquinas subjacentes precisarão ser sincronizados com as alterações na configuração do DNS. A atualização de um cluster virtual afeta todas as Instâncias Gerenciadas de SQL hospedadas nele.

Quando você atualiza as configurações do servidor DNS de um cluster virtual, os endereços IP do servidor DNS personalizados definidos na rede virtual tornam-se os servidores DNS preferenciais das instâncias nesse cluster. As instâncias ainda mantêm o endereço do resolvedor de DNS do Azure como backup, mas agora resolvem endereços usando primeiro os servidores DNS personalizados.

Use o portal do Azure para atualizar as configurações do servidor DNS de um cluster virtual existente.

  1. Abra o Portal do Azure.
  2. Abra o grupo de recursos com uma instância gerenciada na sub-rede que você está configurando e selecione a instância gerenciada SQL para a qual deseja atualizar as configurações do servidor DNS.
  3. Em Visão geral, selecione o cluster virtual ao qual a instância pertence.
  4. Selecione Sincronizar configurações do servidor DNS para atualizar o cluster.

Screenshot showing the Synchronize DNS server settings action on the virtual cluster's overview page.

Verificar a configuração

Depois de atualizar as configurações do servidor DNS no cluster virtual, você pode verificar se ele está em vigor para as instâncias gerenciadas nesse cluster. Uma maneira de fazer isso é criar e executar um trabalho do SQL Server Agent que gera uma lista de servidores DNS atualmente configurados na interface de rede.

Para exibir a lista de servidores DNS configurados na interface de rede da instância gerenciada:

  1. Inicie o SQL Server Management Studio.
  2. Conecte-se a uma instância gerenciada no cluster para o qual você atualizou as configurações de DNS.
  3. No Pesquisador de Objetos, expanda SQL Server Agent.
  4. Clique com o botão direito do mouse em Trabalhos e selecione Novo Trabalho.
  5. Em Geral, escreva o nome do trabalho, por exemplo, "Verificar configurações de DNS".
  6. Em Etapas, selecione Novo....
  7. Escreva o nome da etapa; por exemplo, "executar".
  8. Defina Tipo como PowerShell.
  9. Em Comando, cole o seguinte comando: Get-DnsClientServerAddress
  10. Selecione OK e depois OK para fechar ambas as janelas de diálogo.
  11. No Pesquisador de Objetos, clique com o botão direito do mouse no trabalho criado e selecione Iniciar Trabalho na Etapa…. O trabalho será executado.
  12. Quando o trabalho terminar, clique com o botão direito do mouse nele novamente e selecione Exibir Histórico.
  13. Em Resumo do arquivo de log, expanda o trabalho e selecione sua primeira e única etapa abaixo dele.
  14. Em Detalhes da linha selecionada:, revise a saída do comando e confirme se ele contém os endereços IP dos servidores DNS.

Permissões

Um usuário que está sincronizando as configurações do servidor DNS em uma rede virtual:

  • Deve ser um membro da função Colaborador de Assinatura ou
  • Ter uma função personalizada com a permissão Microsoft.Sql/virtualClusters/updateManagedInstanceDnsServers/action.

Próximas etapas