Como utilizar a área de trabalho com um servidor DNS personalizado

Quando utiliza um espaço de trabalho Azure Machine Learning (incluindo hubs de IA Azure) com um endpoint privado, existem várias formas de gerir a resolução de nomes DNS. Por padrão, o Azure lida automaticamente com a resolução de nomes para seu espaço de trabalho e ponto de extremidade privado. Se usar o seu próprio servidor DNS personalizado, deve criar manualmente entradas DNS ou usar encaminhadores condicionais para o espaço de trabalho.

Importante

Este artigo explica como encontrar os nomes de domínio totalmente qualificados (FQDNs) e endereços IP para estas entradas, caso queira registar manualmente registos DNS na sua solução DNS. Além disso, este artigo fornece recomendações de arquitetura sobre como configurar a sua solução DNS personalizada para resolver automaticamente FQDNs para os endereços IP corretos. Este artigo não fornece informações sobre a configuração dos registos DNS destes itens. Consulte a documentação do seu software DNS para obter informações sobre como adicionar registos.

Pré-requisitos

Integração automatizada de servidores DNS

Introdução

Duas arquiteturas comuns utilizam integração automatizada de servidores DNS com Azure Machine Learning:

A tua arquitetura pode diferir destes exemplos, mas podes usá-los como pontos de referência. Ambas as arquiteturas de exemplo fornecem passos de resolução de problemas que o ajudam a identificar componentes mal configurados.

Também pode modificar o ficheiro hosts no cliente que se liga à Rede Virtual do Azure (rede virtual) que contém o seu espaço de trabalho. Para obter mais informações, consulte a secção Ficheiro host.

Caminho de resolução de DNS do espaço de trabalho

O acesso a um determinado espaço de trabalho do Azure Machine Learning por meio do Private Link é feito comunicando-se com os seguintes Domínios Totalmente Qualificados (chamados FQDNs do espaço de trabalho):

Regiões públicas do Azure:

  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.azureml.ms
  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.cert.api.azureml.ms
  • <compute instance name>.<region the workspace was created in>.instances.azureml.ms
  • <compute instance name>-22.<region the workspace was created in>.instances.azureml.ms - Utilizado pelo comando az ml compute connect-ssh para se conectar a computadores em uma rede virtual privada.
  • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.azure.net
  • <managed online endpoint name>.<region>.inference.ml.azure.com - Usado por endpoints on-line gerenciados

Regiões do Microsoft Azure operadas pela 21Vianet:

  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.ml.azure.cn
  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.cert.api.ml.azure.cn
  • <compute instance name>.<region the workspace was created in>.instances.azureml.ms
  • <compute instance name>-22.<region the workspace was created in>.instances.azureml.ms - Utilizado pelo comando az ml compute connect-ssh para se conectar a computadores em uma rede virtual privada.
  • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.chinacloudapi.cn
  • <managed online endpoint name>.<region>.inference.ml.azure.cn - Usado por endpoints on-line gerenciados

Azure US Government regiões:

  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.ml.azure.us
  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.cert.api.ml.azure.us
  • <compute instance name>.<region the workspace was created in>.instances.azureml.us
  • <compute instance name>-22.<region the workspace was created in>.instances.azureml.us - Utilizado pelo comando az ml compute connect-ssh para se conectar a computadores em uma rede virtual privada.
  • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.usgovcloudapi.net
  • <managed online endpoint name>.<region>.inference.ml.azure.us - Usado por endpoints on-line gerenciados

Os Domínios Completamente Qualificados resolvem para os seguintes Nomes Canônicos (CNAMEs), conhecidos como FQDNs de Link Privado do espaço de trabalho:

Regiões públicas do Azure:

  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.privatelink.api.azureml.ms
  • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.privatelink.notebooks.azure.net
  • <managed online endpoint name>.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.azureml.ms - Usado por endpoints on-line gerenciados

Regiões do Azure operadas por 21Vianet:

  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.privatelink.api.ml.azure.cn
  • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.privatelink.notebooks.chinacloudapi.cn
  • <managed online endpoint name>.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.ml.azure.cn - Usado por endpoints on-line gerenciados

Azure US Government regiões:

  • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.privatelink.api.ml.azure.us
  • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.privatelink.notebooks.usgovcloudapi.net
  • <managed online endpoint name>.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.ml.azure.us - Usado por endpoints on-line gerenciados

Os FQDNs correspondem aos endereços IP do espaço de trabalho do Azure Machine Learning nessa região. No entanto, a resolução dos FQDNs de Link Privado do espaço de trabalho pode ser substituída usando um servidor DNS personalizado hospedado na rede virtual. Para obter um exemplo dessa arquitetura, consulte o servidor DNS personalizado hospedado em um exemplo de rede virtual. Para espaços de trabalho de hub e de projeto, os espaços de trabalho de projeto herdam os FQDNs do espaço de trabalho de hub.

Nota

Os endpoints online geridos partilham o endpoint privado do espaço de trabalho. Se estiver a adicionar manualmente registos DNS à zona DNS privada privatelink.api.azureml.ms, um registo A com wildcard *.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.azureml.ms deverá ser adicionado para encaminhar todos os endpoints no espaço de trabalho para o endpoint privado.

Integração manual do servidor DNS

Esta seção discute para quais domínios totalmente qualificados criar registros A em um servidor DNS e para qual endereço IP definir o valor do registro A.

Recuperar FQDNs de endpoint privado

Região Pública do Azure

A lista a seguir contém os FQDNs (nomes de domínio totalmente qualificados) usados pelo seu espaço de trabalho se ele estiver na Nuvem Pública do Azure:

  • <workspace-GUID>.workspace.<region>.cert.api.azureml.ms

  • <workspace-GUID>.workspace.<region>.api.azureml.ms

  • ml-<workspace-name, truncated>-<region>-<workspace-guid>.<region>.notebooks.azure.net

    Nota

    O nome do espaço de trabalho para este FQDN pode ser truncado. O truncamento é feito para manter ml-<workspace-name, truncated>-<region>-<workspace-guid> em 63 caracteres ou menos.

  • <instance-name>.<region>.instances.azureml.ms

    Nota

    • As instâncias de computação podem ser acessadas somente de dentro da rede virtual.
    • O endereço IP deste FQDN não é o IP da instância de computação. Em vez disso, use o endereço IP do ponto de extremidade privado do espaço de trabalho (o IP das entradas *.api.azureml.ms.)
  • <instance-name>-22.<region>.instances.azureml.ms - Usado apenas pelo comando az ml compute connect-ssh para se conectar a computadores em uma rede virtual privada. Não é necessário se você não estiver usando uma rede gerenciada ou conexões SSH.

  • <managed online endpoint name>.<region>.inference.ml.azure.com - Usado por endpoints on-line gerenciados

  • models.ai.azure.com - Usado para implementações de APIs serverless

Microsoft Azure operado pela região 21Vianet

Os seguintes FQDNs são para o Microsoft Azure, operado por regiões da 21Vianet:

  • <workspace-GUID>.workspace.<region>.cert.api.ml.azure.cn

  • <workspace-GUID>.workspace.<region>.api.ml.azure.cn

  • ml-<workspace-name, truncated>-<region>-<workspace-guid>.<region>.notebooks.chinacloudapi.cn

    Nota

    O nome do espaço de trabalho para este FQDN pode ser truncado. O truncamento é feito para manter ml-<workspace-name, truncated>-<region>-<workspace-guid> em 63 caracteres ou menos.

  • <instance-name>.<region>.instances.azureml.ms

    • O endereço IP deste FQDN não é o IP da instância de computação. Em vez disso, use o endereço IP do ponto de extremidade privado do espaço de trabalho (o IP das entradas *.api.azureml.ms.)
  • <instance-name>-22.<region>.instances.azureml.ms - Usado apenas pelo comando az ml compute connect-ssh para se conectar a computadores em uma rede virtual privada. Não é necessário se você não estiver usando uma rede gerenciada ou conexões SSH.

  • <managed online endpoint name>.<region>.inference.ml.azure.cn - Usado por endpoints on-line gerenciados

Azure Governo dos EUA

Os seguintes FQDNs são para regiões do Azure US Government:

  • <workspace-GUID>.workspace.<region>.cert.api.ml.azure.us

  • <workspace-GUID>.workspace.<region>.api.ml.azure.us

  • ml-<workspace-name, truncated>-<region>-<workspace-guid>.<region>.notebooks.usgovcloudapi.net

    Nota

    O nome do espaço de trabalho para este FQDN pode ser truncado. O truncamento é feito para manter ml-<workspace-name, truncated>-<region>-<workspace-guid> em 63 caracteres ou menos.

  • <instance-name>.<region>.instances.azureml.us

    • O endereço IP deste FQDN não é o IP da instância de computação. Em vez disso, use o endereço IP do ponto de extremidade privado do espaço de trabalho (o IP das entradas *.api.azureml.ms.)
  • <instance-name>-22.<region>.instances.azureml.us - Usado apenas pelo comando az ml compute connect-ssh para se conectar a computadores em uma rede virtual privada. Não é necessário se você não estiver usando uma rede gerenciada ou conexões SSH.

  • <managed online endpoint name>.<region>.inference.ml.azure.us - Usado por endpoints on-line gerenciados

Encontre os endereços IP

Para localizar os endereços IP internos para os FQDNs na rede virtual, use um dos seguintes métodos:

Nota

Os nomes de domínio e endereços IP totalmente qualificados são diferentes com base na sua configuração. Por exemplo, o valor GUID no nome de domínio é específico para seu espaço de trabalho.

  1. Para obter a ID da interface de rede de ponto de extremidade privado, use o seguinte comando:

    az network private-endpoint show --name <endpoint> --resource-group <resource-group> --query 'networkInterfaces[*].id' --output table
    
  2. Para obter o endereço IP e as informações de FQDN para o espaço de trabalho ou espaço de trabalho de hub, use o seguinte comando. Substitua <resource-id> pelo ID da etapa anterior:

    az network nic show --ids <resource-id> --query 'ipConfigurations[*].{IPAddress: privateIPAddress, FQDNs: privateLinkConnectionProperties.fqdns}'
    

    O resultado é semelhante ao seguinte texto:

    [
        {
            "FQDNs": [
            "fb7e20a0-8891-458b-b969-55ddb3382f51.workspace.eastus.api.azureml.ms",
            "fb7e20a0-8891-458b-b969-55ddb3382f51.workspace.eastus.cert.api.azureml.ms"
            ],
            "IPAddress": "10.1.0.5"
        },
        {
            "FQDNs": [
            "ml-myworkspace-eastus-fb7e20a0-8891-458b-b969-55ddb3382f51.eastus.notebooks.azure.net"
            ],
            "IPAddress": "10.1.0.6"
        },
        {
            "FQDNs": [
            "*.eastus.inference.ml.azure.com"
            ],
            "IPAddress": "10.1.0.7"
        }
    ]
    

As informações retornadas de todos os métodos são as mesmas; uma lista do FQDN e do endereço IP privado para os recursos. O exemplo a seguir é da Nuvem Pública do Azure:

FQDN Endereço IP
fb7e20a0-8891-458b-b969-55ddb3382f51.workspace.eastus.api.azureml.ms 10.1.0.5
fb7e20a0-8891-458b-b969-55ddb3382f51.workspace.eastus.cert.api.azureml.ms 10.1.0.5
ml-myworkspace-eastus-fb7e20a0-8891-458b-b969-55ddb3382f51.eastus.notebooks.azure.net 10.1.0.6
*.eastus.inference.ml.azure.com 10.1.0.7

A tabela a seguir mostra exemplos de IPs do Microsoft Azure operados por regiões 21Vianet:

FQDN Endereço IP
52882c08-ead2-44aa-af65-08a75cf094bd.workspace.chinaeast2.api.ml.azure.cn 10.1.0.5
52882c08-ead2-44aa-af65-08a75cf094bd.workspace.chinaeast2.cert.api.ml.azure.cn 10.1.0.5
ml-mype-pltest-chinaeast2-52882c08-ead2-44aa-af65-08a75cf094bd.chinaeast2.notebooks.chinacloudapi.cn 10.1.0.6
*.chinaeast2.inference.ml.azure.cn 10.1.0.7

A tabela a seguir mostra exemplos de IPs de regiões do Azure US Government:

FQDN Endereço IP
52882c08-ead2-44aa-af65-08a75cf094bd.workspace.usgovvirginia.api.ml.azure.us 10.1.0.5
52882c08-ead2-44aa-af65-08a75cf094bd.workspace.usgovvirginia.cert.api.ml.azure.us 10.1.0.5
ml-mype-plt-usgovvirginia-52882c08-ead2-44aa-af65-08a75cf094bd.usgovvirginia.notebooks.usgovcloudapi.net 10.1.0.6
*.usgovvirginia.inference.ml.azure.us 10.1.0.7

Nota

Os pontos de extremidade online gerenciados compartilham o ponto de extremidade privado do espaço de trabalho. Se estiver a adicionar manualmente registos DNS à zona DNS privada privatelink.api.azureml.ms, um registo A com wildcard *.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.azureml.ms deverá ser adicionado para encaminhar todos os endpoints no espaço de trabalho para o endpoint privado.

Criar registos A no servidor DNS personalizado

Depois que a lista de FQDNs e endereços IP correspondentes forem coletados, prossiga para criar registros A no servidor DNS configurado. Consulte a documentação do servidor DNS para determinar como criar registos A. Recomendamos criar uma zona exclusiva para todo o FQDN e criar o registro A na raiz da zona.

Exemplo: Servidor DNS personalizado hospedado em rede virtual

Essa arquitetura usa a topologia de rede virtual comum Hub e Spoke. Uma rede virtual contém o ponto de extremidade privado para o espaço de trabalho do Azure Machine Learning e seus recursos associados; outra contém o servidor DNS. Deve haver uma rota válida entre ambas as redes virtuais. Por exemplo, através de uma série de redes virtuais interligadas.

Diagrama de DNS personalizado hospedado na topologia do Azure

As etapas a seguir descrevem como essa topologia funciona:

  1. Crie uma Zona DNS Privada e estabeleça um link para a Rede Virtual do Servidor DNS:

    A primeira etapa para garantir que uma solução de DNS personalizada funcione com seu espaço de trabalho do Azure Machine Learning é criar duas zonas DNS privadas enraizadas nos seguintes domínios:

    Regiões públicas do Azure:

    • privatelink.api.azureml.ms
    • privatelink.notebooks.azure.net

    Regiões do Microsoft Azure operadas pela 21Vianet:

    • privatelink.api.ml.azure.cn
    • privatelink.notebooks.chinacloudapi.cn

    Azure US Government regiões:

    • privatelink.api.ml.azure.us
    • privatelink.notebooks.usgovcloudapi.net

    Nota

    Os pontos de extremidade online gerenciados compartilham o ponto de extremidade privado do espaço de trabalho. Se estiver a adicionar manualmente registos DNS à zona DNS privada privatelink.api.azureml.ms, um registo A com wildcard *.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.azureml.ms deverá ser adicionado para encaminhar todos os endpoints no espaço de trabalho para o endpoint privado.

    Após a criação da Zona DNS Privada, ela precisa ser vinculada à Rede Virtual do Servidor DNS. A Rede Virtual que contém o Servidor DNS.

    Uma Zona DNS Privada substitui a resolução de nomes para todos os nomes dentro do escopo da raiz da zona. Esta substituição aplica-se a todas as Redes Virtuais às quais a Zona DNS Privada está ligada. Por exemplo, se uma Zona DNS Privada enraizada em privatelink.api.azureml.ms estiver vinculada à Rede Virtual foo, todos os recursos na Rede Virtual foo que tentarem resolver bar.workspace.westus2.privatelink.api.azureml.ms receberão qualquer registro listado privatelink.api.azureml.ms na zona.

    No entanto, os registros listados em Zonas DNS Privadas só são retornados para dispositivos que resolvem domínios usando o endereço IP padrão do Servidor Virtual DNS do Azure. Assim, o Servidor DNS personalizado resolve domínios para dispositivos espalhados por toda a topologia de rede. Mas o Servidor DNS personalizado precisa resolver domínios relacionados ao Azure Machine Learning em relação ao endereço IP do Servidor Virtual DNS do Azure.

  2. Crie um ponto de extremidade privado com integração de DNS privada, direcionada para a Zona DNS Privada ligada à Rede Virtual do Servidor DNS:

    A próxima etapa é criar um Private Endpoint para o workspace do Azure Machine Learning. O ponto de extremidade privado tem como alvo ambas as Zonas DNS Privadas criadas na etapa 1. Esta etapa garante que toda a comunicação com o espaço de trabalho seja feita por meio do Ponto de Extremidade Privado na Rede Virtual do Azure Machine Learning.

    Importante

    O ponto de extremidade privado deve ter a integração de DNS privado habilitada para que este exemplo funcione corretamente.

  3. Crie um encaminhador condicional no Servidor DNS para encaminhar para o DNS do Azure:

    Em seguida, crie um encaminhador condicional para o Servidor Virtual DNS do Azure. O encaminhador condicional garante que o servidor DNS sempre consulte o endereço IP do Servidor Virtual DNS do Azure para FQDNs relacionados ao seu espaço de trabalho. Isso significa que o servidor DNS retorna o registro correspondente da zona DNS privada.

    A lista seguinte é das zonas que devem ser encaminhadas condicionalmente. O endereço IP do Servidor Virtual DNS do Azure é 168.63.129.16:

    Regiões públicas do Azure:

    • api.azureml.ms
    • notebooks.azure.net
    • instances.azureml.ms
    • aznbcontent.net
    • inference.ml.azure.com - Usado por endpoints on-line gerenciados

    Regiões do Microsoft Azure operadas pela 21Vianet:

    • api.ml.azure.cn
    • notebooks.chinacloudapi.cn
    • instances.azureml.ms
    • aznbcontent.net
    • inference.ml.azure.cn - Usado por endpoints on-line gerenciados

    Azure US Government regiões:

    • api.ml.azure.us
    • notebooks.usgovcloudapi.net
    • instances.azureml.us
    • aznbcontent.net
    • inference.ml.azure.us - Usado por endpoints on-line gerenciados

    Importante

    As etapas de configuração para o Servidor DNS não estão incluídas aqui, pois há muitas soluções DNS disponíveis que podem ser usadas como um Servidor DNS personalizado. Consulte a documentação da sua solução DNS para saber como configurar adequadamente o encaminhamento condicional.

  4. Resolver domínio do espaço de trabalho

    Neste ponto, toda a configuração está feita. Agora, qualquer usuário que utilize o Servidor DNS para a resolução de nomes e tenha uma rota para o Endpoint Privado do Azure Machine Learning pode aceder ao espaço de trabalho. O cliente começa consultando o servidor DNS para o endereço dos seguintes FQDNs:

    Regiões públicas do Azure:

    • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.azureml.ms
    • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.azure.net
    • <managed online endpoint name>.<region>.inference.ml.azure.com - Usado por endpoints on-line gerenciados

    Regiões do Microsoft Azure operadas pela 21Vianet:

    • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.ml.azure.cn
    • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.chinacloudapi.cn
    • <managed online endpoint name>.<region>.inference.ml.azure.cn - Usado por endpoints on-line gerenciados

    Azure US Government regiões:

    • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.ml.azure.us
    • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.usgovcloudapi.net
    • <managed online endpoint name>.<region>.inference.ml.azure.us - Usado por endpoints on-line gerenciados
  5. O DNS do Azure resolve recursivamente o domínio do espaço de trabalho para CNAME:

    O Servidor DNS resolve os FQDNs da etapa 4 do DNS do Azure. O DNS do Azure responde com um dos domínios listados na etapa 1.

  6. O Servidor DNS resolve recursivamente o registo CNAME do domínio do espaço de trabalho do DNS do Azure:

    Servidor DNS prossegue para resolver recursivamente o CNAME recebido na etapa 5. Como houve uma configuração de encaminhador condicional na etapa 3, o Servidor DNS envia a solicitação para o endereço IP do Servidor Virtual DNS do Azure para resolução.

  7. O DNS do Azure retorna registros da zona DNS Privada:

    Os registos correspondentes armazenados nas Zonas DNS Privadas são devolvidos ao Servidor DNS, o que significa que o Servidor Virtual DNS do Azure devolve os endereços IP do Ponto de Extremidade Privado.

  8. O Servidor DNS Personalizado resolve o nome de domínio do espaço de trabalho para o endereço de ponto final privado:

    Em última análise, o servidor DNS personalizado agora retorna os endereços IP do ponto de extremidade privado para o cliente a partir da etapa 4. Isso garante que todo o tráfego para o espaço de trabalho do Azure Machine Learning seja feito por meio do Endpoint Privado.

Resolução de Problemas

Se não conseguir aceder à área de trabalho a partir de uma máquina virtual ou se os trabalhos falharem nos recursos de computação na rede virtual, utilize os seguintes passos para identificar a causa:

  1. Encontre os FQDNs do espaço de trabalho no Endpoint Privado:

    Navegue até o portal do Azure usando um dos seguintes links:

    Navegue até o Endpoint Privado do espaço de trabalho do Azure Machine Learning. Os FQDNs do espaço de trabalho estão listados na guia "Visão geral".

  2. Acesse o recurso de computação na topologia da Rede Virtual:

    Prossiga para acessar um recurso de computação na topologia da Rede Virtual do Azure. Isso provavelmente requer o acesso a uma Máquina Virtual numa Rede Virtual interligada com a Rede Virtual do Hub.

  3. Resolver FQDNs do espaço de trabalho:

    Abra um prompt de comando, shell ou PowerShell. Em seguida, para cada um dos FQDN da área de trabalho, execute o seguinte comando:

    nslookup <workspace FQDN>

    O resultado de cada nslookup deve retornar um dos dois endereços IP privados no Ponto de Extremidade Privado para o espaço de trabalho do Azure Machine Learning. Se tal não acontecer, significa que existe uma configuração incorreta na solução DNS personalizada.

    Causas possíveis:

    • O recurso de computação que executa os comandos de solução de problemas não está usando o Servidor DNS para resolução de DNS
    • As Zonas DNS Privadas escolhidas ao criar o Ponto de Extremidade Privado não estão vinculadas à rede virtual do Servidor DNS
    • Os encaminhadores condicionais para o IP do Servidor Virtual DNS do Azure não foram configurados corretamente

Exemplo: Servidor DNS personalizado hospedado no local

Essa arquitetura usa a topologia de rede virtual comum Hub e Spoke. ExpressRoute é usado para se conectar da sua rede no local à rede virtual do Hub. O servidor DNS personalizado está hospedado localmente. Numa rede virtual separada estão contidos o ponto de extremidade privado para o espaço de trabalho do Azure Machine Learning e os recursos associados. Com essa topologia, precisa haver outra rede virtual hospedando um servidor DNS que possa enviar solicitações para o endereço IP do Servidor Virtual DNS do Azure.

Diagrama de topologia de DNS personalizado hospedado localmente

As etapas a seguir descrevem como essa topologia funciona:

  1. Crie uma Zona DNS Privada e estabeleça um link para a Rede Virtual do Servidor DNS:

    A primeira etapa para garantir que uma solução de DNS personalizada funcione com seu espaço de trabalho do Azure Machine Learning é criar duas zonas DNS privadas enraizadas nos seguintes domínios:

    Regiões públicas do Azure:

    • privatelink.api.azureml.ms
    • privatelink.notebooks.azure.net

    Regiões do Microsoft Azure operadas pela 21Vianet:

    • privatelink.api.ml.azure.cn
    • privatelink.notebooks.chinacloudapi.cn

    Azure US Government regiões:

    • privatelink.api.ml.azure.us
    • privatelink.notebooks.usgovcloudapi.net

    Nota

    Os pontos de extremidade online gerenciados compartilham o ponto de extremidade privado do espaço de trabalho. Se estiver a adicionar manualmente registos DNS à zona DNS privada privatelink.api.azureml.ms, um registo A com wildcard *.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.azureml.ms deverá ser adicionado para encaminhar todos os endpoints no espaço de trabalho para o endpoint privado.

    Após a criação da Zona DNS Privada, ela precisa ser vinculada à rede virtual do Servidor DNS – a Rede Virtual que contém o Servidor DNS.

    Nota

    O servidor DNS na rede virtual é separado do servidor DNS local.

    Uma Zona DNS Privada substitui a resolução de nomes para todos os nomes dentro do escopo da raiz da zona. Esta substituição aplica-se a todas as Redes Virtuais às quais a Zona DNS Privada está ligada. Por exemplo, se uma Zona DNS Privada enraizada em privatelink.api.azureml.ms estiver vinculada à Rede Virtual foo, todos os recursos na Rede Virtual foo que tentarem resolver bar.workspace.westus2.privatelink.api.azureml.ms receberão qualquer registro listado na zona privatelink.api.azureml.ms.

    No entanto, os registros listados em Zonas DNS Privadas só são retornados para dispositivos que resolvem domínios usando o endereço IP padrão do Servidor Virtual DNS do Azure. O endereço IP do Servidor Virtual DNS do Azure só é válido no contexto de uma Rede Virtual. Ao usar um servidor DNS local, ele não pode consultar o endereço IP do Servidor Virtual DNS do Azure para recuperar registros.

    Para contornar esse comportamento, crie um servidor DNS intermediário em uma rede virtual. Este servidor DNS pode consultar o endereço IP do Servidor Virtual DNS do Azure para recuperar registos de qualquer Zona DNS Privada ligada à rede virtual.

    Enquanto o Servidor DNS local resolve domínios para dispositivos espalhados pela topologia de rede, ele resolve domínios relacionados ao Aprendizado de Máquina do Azure em relação ao Servidor DNS. O Servidor DNS resolve esses domínios a partir do endereço IP do Servidor Virtual DNS do Azure.

  2. Crie um ponto de extremidade privado com integração de DNS privada, direcionada para a Zona DNS Privada ligada à Rede Virtual do Servidor DNS:

    A próxima etapa é criar um Private Endpoint para o workspace do Azure Machine Learning. O ponto de extremidade privado tem como alvo ambas as Zonas DNS Privadas criadas na etapa 1. Isso garante que toda a comunicação com o espaço de trabalho seja feita por meio do Ponto de Extremidade Privado na Rede Virtual do Azure Machine Learning.

    Importante

    O ponto de extremidade privado deve ter a integração de DNS privado habilitada para que este exemplo funcione corretamente.

  3. Crie um encaminhador condicional no Servidor DNS para encaminhar para o DNS do Azure:

    Em seguida, crie um encaminhador condicional para o Servidor Virtual DNS do Azure. O encaminhador condicional garante que o servidor DNS sempre consulte o endereço IP do Servidor Virtual DNS do Azure para FQDNs relacionados ao seu espaço de trabalho. Isso significa que o servidor DNS retorna o registro correspondente da zona DNS privada.

    A lista seguinte é das zonas que devem ser encaminhadas condicionalmente. O endereço IP do Servidor Virtual DNS do Azure é 168.63.129.16.

    Regiões públicas do Azure:

    • api.azureml.ms
    • notebooks.azure.net
    • instances.azureml.ms
    • aznbcontent.net
    • inference.ml.azure.com - Usado por endpoints on-line gerenciados

    Regiões do Microsoft Azure operadas pela 21Vianet:

    • api.ml.azure.cn
    • notebooks.chinacloudapi.cn
    • instances.azureml.ms
    • aznbcontent.net
    • inference.ml.azure.cn - Usado por endpoints on-line gerenciados

    Azure US Government regiões:

    • api.ml.azure.us
    • notebooks.usgovcloudapi.net
    • instances.azureml.us
    • aznbcontent.net
    • inference.ml.azure.us - Usado por endpoints on-line gerenciados

    Importante

    As etapas de configuração para o Servidor DNS não estão incluídas aqui, pois há muitas soluções DNS disponíveis que podem ser usadas como um Servidor DNS personalizado. Consulte a documentação da sua solução DNS para saber como configurar adequadamente o encaminhamento condicional.

  4. Crie um encaminhador condicional no Servidor DNS no local para encaminhar para o Servidor DNS:

    Em seguida, crie um encaminhador condicional para o servidor DNS na rede virtual do servidor DNS. Este encaminhador é para as zonas listadas na etapa 1. Isso é semelhante à etapa 3, mas, em vez de encaminhar para o endereço IP do Servidor Virtual DNS do Azure, o Servidor DNS local está direcionando o endereço IP do Servidor DNS. Como o Servidor DNS Local não está no Azure, ele não pode resolver diretamente registros em Zonas DNS Privadas. Nesse caso, o Servidor DNS faz proxies de solicitações do Servidor DNS local para o IP do Servidor Virtual DNS do Azure. Isso permite que o Servidor DNS Local recupere registros nas Zonas DNS Privadas vinculadas à Rede Virtual do Servidor DNS.

    A lista a seguir é as zonas a serem encaminhadas condicionalmente. Os endereços IP para os quais encaminhar são os endereços IP dos seus Servidores DNS:

    Regiões públicas do Azure:

    • api.azureml.ms
    • notebooks.azure.net
    • instances.azureml.ms
    • inference.ml.azure.com - Usado por endpoints on-line gerenciados

    Regiões do Microsoft Azure operadas pela 21Vianet:

    • api.ml.azure.cn
    • notebooks.chinacloudapi.cn
    • instances.azureml.ms
    • inference.ml.azure.cn - Usado por endpoints on-line gerenciados

    Azure US Government regiões:

    • api.ml.azure.us
    • notebooks.usgovcloudapi.net
    • instances.azureml.us
    • inference.ml.azure.us - Usado por endpoints on-line gerenciados

    Importante

    As etapas de configuração para o Servidor DNS não estão incluídas aqui, pois há muitas soluções DNS disponíveis que podem ser usadas como um Servidor DNS personalizado. Consulte a documentação da sua solução DNS para saber como configurar adequadamente o encaminhamento condicional.

  5. Resolver domínio do espaço de trabalho

    Neste ponto, toda a configuração está feita. Qualquer cliente que use o Servidor DNS local para resolução de nomes e tenha uma rota para o Ponto de Extremidade Privado do Azure Machine Learning pode continuar a acessar o espaço de trabalho.

    O cliente começa consultando o Servidor DNS local para obter o endereço dos seguintes FQDNs:

    Regiões públicas do Azure:

    • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.azureml.ms
    • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.azure.net
    • <managed online endpoint name>.<region>.inference.ml.azure.com - Usado por endpoints on-line gerenciados

    Regiões do Microsoft Azure operadas pela 21Vianet:

    • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.ml.azure.cn
    • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.chinacloudapi.cn
    • <managed online endpoint name>.<region>.inference.ml.azure.cn - Usado por endpoints on-line gerenciados

    Azure US Government regiões:

    • <per-workspace globally-unique identifier>.workspace.<region the workspace was created in>.api.ml.azure.us
    • ml-<workspace-name, truncated>-<region>-<per-workspace globally-unique identifier>.<region>.notebooks.usgovcloudapi.net
    • <managed online endpoint name>.<region>.inference.ml.azure.us - Usado por endpoints on-line gerenciados
  6. O servidor DNS local resolve recursivamente o domínio do espaço de trabalho:

    O servidor DNS local resolve os FQDNs da etapa 5 do servidor DNS. Como há um encaminhador condicional (etapa 4), o servidor DNS local envia a solicitação para o servidor DNS para resolução.

  7. O Servidor DNS resolve o domínio do espaço de trabalho para um CNAME do DNS do Azure:

    O servidor DNS resolve os FQDNs da etapa 5 do DNS do Azure. O DNS do Azure responde com um dos domínios listados na etapa 1.

  8. O Servidor DNS no local resolve recursivamente o registo CNAME do domínio do espaço de trabalho a partir do Servidor DNS:

    O Servidor DNS local prossegue para resolver recursivamente o CNAME recebido na etapa 7. Como houve uma configuração de encaminhador condicional na etapa 4, o Servidor DNS local envia a solicitação ao Servidor DNS para resolução.

  9. O Servidor DNS resolve recursivamente o registo CNAME do domínio do espaço de trabalho do DNS do Azure:

    O Servidor DNS prossegue para resolver recursivamente o CNAME recebido na etapa 7. Como houve uma configuração de encaminhador condicional na etapa 3, o Servidor DNS envia a solicitação para o endereço IP do Servidor Virtual DNS do Azure para resolução.

  10. O DNS do Azure retorna registros da zona DNS Privada:

    Os registos correspondentes armazenados nas Zonas DNS Privadas são devolvidos ao Servidor DNS, o que significa que o Servidor Virtual DNS do Azure devolve os endereços IP do Ponto de Extremidade Privado.

  11. O Servidor DNS no local resolve o nome de domínio do domínio de trabalho para o endereço de ponto de extremidade privado:

    A consulta do Servidor DNS On-premises para o Servidor DNS na etapa 8 acaba por devolver os endereços IP associados ao Endpoint Privado para o espaço de trabalho do Azure Machine Learning. Esses endereços IP são retornados ao cliente original, que agora se comunica com o espaço de trabalho do Azure Machine Learning pelo Ponto de Extremidade Privado configurado na etapa 1.

    Importante

    Se o Gateway de VPN estiver sendo usado nessa configuração, juntamente com IPs de Servidor DNS personalizados na rede virtual, o IP DNS do Azure (168.63.129.16) também precisará ser adicionado à lista para manter a comunicação sem interrupções.

Exemplo: arquivo Hosts

O hosts ficheiro é um documento de texto que Linux, macOS e Windows utilizam para sobrepor a resolução de nomes para o computador local. O arquivo contém uma lista de endereços IP e o nome de host correspondente. Quando o computador local tenta resolver um nome de host, se o nome do host estiver listado no arquivo hosts, o nome será resolvido para o endereço IP correspondente.

Importante

Apenas o arquivo hosts substitui a resolução de nomes para o computador local. Se você quiser usar um hosts arquivo com vários computadores, você deve modificá-lo individualmente em cada computador.

A tabela a seguir lista o local do hosts arquivo:

Sistema operativo Localização
Linux /etc/hosts
macOS /etc/hosts
Windows %SystemRoot%\System32\drivers\etc\hosts

Gorjeta

O nome do arquivo é hosts sem extensão. Ao editar o arquivo, use o acesso de administrador. Por exemplo, no Linux ou macOS podes usar sudo vi. No Windows, execute o bloco de notas como administrador.

O texto a seguir é um exemplo de entradas de ficheiro hosts para Azure Machine Learning.

# For core Azure Machine Learning hosts
10.1.0.5    fb7e20a0-8891-458b-b969-55ddb3382f51.workspace.eastus.api.azureml.ms
10.1.0.5    fb7e20a0-8891-458b-b969-55ddb3382f51.workspace.eastus.cert.api.azureml.ms
10.1.0.6    ml-myworkspace-eastus-fb7e20a0-8891-458b-b969-55ddb3382f51.eastus.notebooks.azure.net

# For a managed online/batch endpoint named 'mymanagedendpoint'
10.1.0.7    mymanagedendpoint.eastus.inference.ml.azure.com

# For a compute instance named 'mycomputeinstance'
10.1.0.5    mycomputeinstance.eastus.instances.azureml.ms

Para obter mais informações sobre o hosts arquivo, consulte https://wikipedia.org/wiki/Hosts_(file).

Serviços de dependência: resolução de DNS

Os serviços nos quais seu espaço de trabalho depende também podem ser protegidos usando um ponto de extremidade privado. Em caso afirmativo, talvez seja necessário criar um registro DNS personalizado se precisar se comunicar diretamente com o serviço. Por exemplo, se você quiser trabalhar diretamente com os dados em uma Conta de Armazenamento do Azure usada pelo seu espaço de trabalho.

Nota

Alguns serviços têm vários pontos de extremidade privados para subserviços ou funcionalidades. Por exemplo, uma Conta de Armazenamento do Azure pode ter pontos de extremidade privados individuais para Blob, Arquivo e DFS. Se você precisar acessar o armazenamento de Blob e Arquivo, deverá habilitar a resolução para cada ponto de extremidade privado específico.

Nota

Se o seu espaço de trabalho estiver integrado com o Microsoft Foundry ou usar recursos de serviços de IA Azure, esses recursos requerem três zonas DNS privadas e correspondentes encaminhadores condicionais: cognitiveservices.azure.com, openai.azure.com, e services.ai.azure.com. Para cada um, crie uma zona DNS privada usando o privatelink.* prefixo (por exemplo, privatelink.services.ai.azure.com) e configure um encaminhador condicional apontando para o endereço IP do DNS do Azure Virtual Server (168.63.129.16).

Para obter mais informações sobre os serviços e a resolução de DNS, consulte Configuração de DNS do Ponto de Extremidade Privado do Azure.

Resolução de Problemas

Se, depois de executar as etapas acima, você não conseguir acessar o espaço de trabalho de uma máquina virtual ou os trabalhos falharem nos recursos de computação na Rede Virtual que contém o Ponto de Extremidade Privado para o espaço de trabalho do Azure Machine Learning, siga as etapas abaixo para tentar identificar a causa.

  1. Encontre os FQDNs do espaço de trabalho no Endpoint Privado:

    Navegue até o portal do Azure usando um dos seguintes links:

    Navegue até o Endpoint Privado do espaço de trabalho do Azure Machine Learning. Os FQDNs do espaço de trabalho estão listados na guia "Visão geral".

  2. Acesse o recurso de computação na topologia da Rede Virtual:

    Prossiga para acessar um recurso de computação na topologia da Rede Virtual do Azure. Isso provavelmente requer o acesso a uma Máquina Virtual numa Rede Virtual interligada com a Rede Virtual do Hub.

  3. Resolver FQDNs do espaço de trabalho:

    Abra um prompt de comando, shell ou PowerShell. Em seguida, para cada um dos FQDN da área de trabalho, execute o seguinte comando:

    nslookup <workspace FQDN>

    O resultado de cada nslookup deve fornecer um dos dois endereços IP privados no Ponto de Extremidade Privado para o workspace do Azure Machine Learning. Se tal não acontecer, significa que existe uma configuração incorreta na solução DNS personalizada.

    Causas possíveis:

    • O recurso de computação que executa os comandos de solução de problemas não está usando o Servidor DNS para resolução de DNS
    • As Zonas DNS Privadas escolhidas ao criar o Ponto de Extremidade Privado não estão vinculadas à rede virtual do Servidor DNS
    • Os encaminhadores condicionais do Servidor DNS para o IP do Servidor Virtual DNS do Azure não foram configurados corretamente
    • Os encaminhadores condicionais do Servidor DNS local para o Servidor DNS não foram configurados corretamente

Para obter informações sobre como integrar pontos de extremidade privados em sua configuração de DNS, consulte Configuração de DNS do ponto de extremidade privado do Azure.