Como configurar uma rede gerenciada para hubs do Azure AI Studio
Importante
Alguns dos recursos descritos neste artigo podem estar disponíveis apenas na visualização. Essa visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.
Temos dois aspetos de isolamento de rede. Um deles é o isolamento de rede para acessar um hub do Azure AI Studio. Outro é o isolamento de rede de recursos de computação para seu hub e projeto (como instância de computação, ponto de extremidade online gerenciado e sem servidor). Este documento explica este último destacado no diagrama. Você pode usar o isolamento de rede integrado do hub para proteger seus recursos de computação.
Você precisa configurar as seguintes configurações de isolamento de rede.
- Escolha o modo de isolamento de rede. Você tem duas opções: permitir o modo de saída pela Internet ou permitir apenas o modo de saída aprovado.
- Se você usar a integração do Visual Studio Code com permitir somente o modo de saída aprovado, crie regras de saída FQDN descritas na seção Usar código do Visual Studio.
- Se você usar modelos HuggingFace em Modelos com permissão apenas para o modo de saída aprovado, crie regras de saída FQDN descritas na seção Usar modelos HuggingFace.
- Se você usar um dos modelos de código aberto com permitir apenas o modo de saída aprovado, crie regras de saída FQDN descritas na seção selecionada pela IA do Azure.
Arquitetura de isolamento de rede e modos de isolamento
Quando você habilita o isolamento de rede virtual gerenciada, uma rede virtual gerenciada é criada para o hub. Os recursos de computação gerenciados criados para o hub usam automaticamente essa rede virtual gerenciada. A rede virtual gerenciada pode usar pontos de extremidade privados para recursos do Azure que são usados pelo seu hub, como o Armazenamento do Azure, o Cofre da Chave do Azure e o Registro de Contêiner do Azure.
Há três modos de configuração diferentes para o tráfego de saída da rede virtual gerenciada:
Modo de saída | Description | Cenários |
---|---|---|
Permitir saída da Internet | Permita todo o tráfego de saída da Internet a partir da rede virtual gerida. | Você deseja acesso irrestrito a recursos de aprendizado de máquina na Internet, como pacotes python ou modelos pré-treinados.1 |
Permitir apenas saída aprovada | O tráfego de saída é permitido especificando tags de serviço. | * Você quer minimizar o risco de exfiltração de dados, mas precisa preparar todos os artefatos de aprendizado de máquina necessários em seu ambiente privado. * Você deseja configurar o acesso de saída a uma lista aprovada de serviços, tags de serviço ou FQDNs. |
Desativado | O tráfego de entrada e saída não é restrito. | Você quer entrada e saída pública do hub. |
1 Você pode usar regras de saída com permitir apenas o modo de saída aprovado para obter o mesmo resultado que usar permitir saída pela Internet. As diferenças são:
- Sempre use pontos de extremidade privados para acessar recursos do Azure.
- Você deve adicionar regras para cada conexão de saída que precisa permitir.
- Adicionar regras de saída FQDN aumenta seus custos , pois esse tipo de regra usa o Firewall do Azure. Se você usar regras de FQDN de saída, as cobranças pelo Firewall do Azure serão incluídas na sua cobrança. Para obter mais informações, veja os Preços.
- As regras padrão para permitir apenas saída aprovada são projetadas para minimizar o risco de exfiltração de dados. Quaisquer regras de saída adicionadas podem aumentar o seu risco.
A rede virtual gerenciada é pré-configurada com as regras padrão necessárias. Ele também é configurado para conexões de ponto de extremidade privado com seu hub, o armazenamento padrão do hub, o registro de contêiner e o cofre de chaves se estiverem configurados como privados ou se o modo de isolamento do hub estiver definido para permitir apenas saída aprovada. Depois de escolher o modo de isolamento, você só precisa considerar outros requisitos de saída que talvez seja necessário adicionar.
O diagrama a seguir mostra uma rede virtual gerenciada configurada para permitir a saída da Internet:
O diagrama a seguir mostra uma rede virtual gerenciada configurada para permitir apenas saída aprovada:
Nota
Nessa configuração, o armazenamento, o cofre de chaves e o registro de contêiner usados pelo hub são sinalizados como privados. Como eles são sinalizados como privados, um ponto de extremidade privado é usado para se comunicar com eles.
Pré-requisitos
Antes de seguir as etapas neste artigo, verifique se você tem os seguintes pré-requisitos:
Uma subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
O provedor de recursos Microsoft.Network deve estar registrado para sua assinatura do Azure. Esse provedor de recursos é usado pelo hub ao criar pontos de extremidade privados para a rede virtual gerenciada.
Para obter informações sobre como registrar provedores de recursos, consulte Resolver erros para registro de provedor de recursos.
A identidade do Azure que você usa ao implantar uma rede gerenciada requer as seguintes ações de controle de acesso baseado em função do Azure (Azure RBAC) para criar pontos de extremidade privados:
- Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/read
- Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/write
Limitações
- Atualmente, o Azure AI Studio não suporta trazer a sua própria rede virtual, apenas suporta o isolamento de rede virtual gerida.
- Depois de habilitar o isolamento de rede virtual gerenciado da sua IA do Azure, você não poderá desabilitá-lo.
- A rede virtual gerenciada usa a conexão de ponto de extremidade privada para acessar seus recursos privados. Não pode ter um ponto final privado e um ponto final de serviço ao mesmo tempo para os seus recursos do Azure, como uma conta de armazenamento. Recomendamos a utilização de pontos finais privados em todos os cenários.
- A rede virtual gerenciada é excluída quando a IA do Azure é excluída.
- A proteção contra a transferência de dados não autorizada é ativada automaticamente para o único modo de saída aprovado. Se adicionar outras regras de saída, como FQDNs, a Microsoft não pode garantir a sua proteção contra a transferência de dados não autorizada qpara esses destinos de saída.
- Usar regras de saída FQDN aumenta o custo da rede virtual gerenciada porque as regras FQDN usam o Firewall do Azure. Para obter mais informações, veja os Preços.
- As regras de saída FQDN apenas suportam as portas 80 e 443.
- Ao usar uma instância de computação com uma rede gerenciada, use o
az ml compute connect-ssh
comando para se conectar à computação usando SSH.
Configurar uma rede virtual gerida para permitir a saída da Internet
Gorjeta
A criação da VNet gerenciada é adiada até que um recurso de computação seja criado ou o provisionamento seja iniciado manualmente. Ao permitir a criação automática, pode levar cerca de 30 minutos para criar o primeiro recurso de computação, pois também está provisionando a rede.
Crie um novo hub:
Entre no portal do Azure e escolha Azure AI Studio no menu Criar um recurso.
Selecione + Novo Azure AI.
Forneça as informações necessárias na guia Noções básicas .
Na guia Rede, selecione Privado com saída da Internet.
Para adicionar uma regra de saída, selecione Adicionar regras de saída definidas pelo usuário na guia Rede. Na barra lateral Regras de saída, forneça as seguintes informações:
- Nome da regra: um nome para a regra. O nome deve ser exclusivo para este hub.
- Tipo de destino: Private Endpoint é a única opção quando o isolamento de rede é privado com saída de internet. A rede virtual gerenciada pelo hub não oferece suporte à criação de um ponto de extremidade privado para todos os tipos de recursos do Azure. Para obter uma lista de recursos suportados, consulte a seção Pontos de extremidade privados.
- Assinatura: a assinatura que contém o recurso do Azure para o qual você deseja adicionar um ponto de extremidade privado.
- Grupo de recursos: o grupo de recursos que contém o recurso do Azure ao qual você deseja adicionar um ponto de extremidade privado.
- Tipo de recurso: O tipo do recurso do Azure.
- Nome do recurso: o nome do recurso do Azure.
- Sub Resource: O subrecurso do tipo de recurso do Azure.
Selecione Guardar para guardar o registo. Você pode continuar usando Adicionar regras de saída definidas pelo usuário para adicionar regras.
Continue criando o hub normalmente.
Atualizar um hub existente:
Entre no portal do Azure e selecione o hub para o qual você deseja habilitar o isolamento de rede virtual gerenciado.
Selecione Rede e, em seguida, selecione Privado com Saída da Internet.
Para adicionar uma regra de saída, selecione Adicionar regras de saída definidas pelo usuário na guia Rede. Na barra lateral de regras de saída, forneça as mesmas informações usadas ao criar um hub na seção "Criar um novo hub".
Para excluir uma regra de saída, selecione excluir para a regra.
Selecione Salvar na parte superior da página para salvar as alterações na rede virtual gerenciada.
Configurar uma rede virtual gerida para permitir apenas saídas aprovadas
Gorjeta
A VNet gerenciada é provisionada automaticamente quando você cria um recurso de computação. Ao permitir a criação automática, pode levar cerca de 30 minutos para criar o primeiro recurso de computação, pois também está provisionando a rede. Se você configurou regras de saída FQDN, a primeira regra FQDN adiciona cerca de 10 minutos ao tempo de provisionamento.
Crie um novo hub:
Entre no portal do Azure e escolha Azure AI Studio no menu Criar um recurso.
Selecione + Novo Azure AI.
Forneça as informações necessárias na guia Noções básicas .
Na guia Rede, selecione Privado com Saída Aprovada.
Para adicionar uma regra de saída, selecione Adicionar regras de saída definidas pelo usuário na guia Rede. Na barra lateral Regras de saída, forneça as seguintes informações:
- Nome da regra: um nome para a regra. O nome deve ser exclusivo para este hub.
- Tipo de destino: Ponto de extremidade privado, etiqueta de serviço ou FQDN. A etiqueta de serviço e o FQDN só estão disponíveis quando o isolamento de rede é privado com saída aprovada.
Se o tipo de destino for Ponto de extremidade privado, forneça as seguintes informações:
- Assinatura: a assinatura que contém o recurso do Azure para o qual você deseja adicionar um ponto de extremidade privado.
- Grupo de recursos: o grupo de recursos que contém o recurso do Azure ao qual você deseja adicionar um ponto de extremidade privado.
- Tipo de recurso: O tipo do recurso do Azure.
- Nome do recurso: o nome do recurso do Azure.
- Sub Resource: O subrecurso do tipo de recurso do Azure.
Gorjeta
A VNet gerenciada pelo hub não oferece suporte à criação de um ponto de extremidade privado para todos os tipos de recursos do Azure. Para obter uma lista de recursos suportados, consulte a seção Pontos de extremidade privados.
Se o tipo de destino for Service Tag, forneça as seguintes informações:
- Etiqueta de serviço: a etiqueta de serviço a ser adicionada às regras de saída aprovadas.
- Protocolo: O protocolo para permitir a etiqueta de serviço.
- Intervalos de portas: os intervalos de portas para permitir a etiqueta de serviço.
Se o tipo de destino for FQDN, forneça as seguintes informações:
- Destino FQDN: O nome de domínio totalmente qualificado a ser adicionado às regras de saída aprovadas.
Selecione Guardar para guardar o registo. Você pode continuar usando Adicionar regras de saída definidas pelo usuário para adicionar regras.
Continue criando o hub normalmente.
Atualizar um hub existente:
Entre no portal do Azure e selecione o hub para o qual você deseja habilitar o isolamento de rede virtual gerenciado.
Selecione Rede e, em seguida, selecione Privado com Saída Aprovada.
Para adicionar uma regra de saída, selecione Adicionar regras de saída definidas pelo usuário na guia Rede. Na barra lateral de regras de saída, forneça as mesmas informações que ao criar um hub na seção anterior "Criar um novo hub".
Para excluir uma regra de saída, selecione excluir para a regra.
Selecione Salvar na parte superior da página para salvar as alterações na rede virtual gerenciada.
Provisionar manualmente uma VNet gerenciada
A VNet gerenciada é provisionada automaticamente quando você cria uma instância de computação. Quando você depende do provisionamento automático, pode levar cerca de 30 minutos para criar a primeira instância de computação, pois também está provisionando a rede. Se você configurou regras de saída FQDN (disponível apenas com o modo permitido somente aprovado), a primeira regra FQDN adiciona cerca de 10 minutos ao tempo de provisionamento. Se você tiver um grande conjunto de regras de saída a serem provisionadas na rede gerenciada, pode levar mais tempo para que o provisionamento seja concluído. O aumento do tempo de provisionamento pode fazer com que a criação da primeira instância de computação atinja o tempo limite.
Para reduzir o tempo de espera e evitar possíveis erros de tempo limite, recomendamos o provisionamento manual da rede gerenciada. Em seguida, aguarde até que o provisionamento seja concluído antes de criar uma instância de computação.
Nota
Para criar uma implantação online, você deve provisionar manualmente a rede gerenciada ou criar uma instância de computação primeiro que a provisionará automaticamente.
Use as guias CLI do Azure ou SDK do Python para saber como provisionar manualmente a VNet gerenciada.
Gerenciar regras de saída
- Entre no portal do Azure e selecione o hub para o qual você deseja habilitar o isolamento de rede virtual gerenciado.
- Selecione Rede. A seção Azure AI Outbound access permite gerenciar regras de saída.
Para adicionar uma regra de saída, selecione Adicionar regras de saída definidas pelo usuário na guia Rede. Na barra lateral de regras de saída da IA do Azure, forneça as seguintes informações:
Para habilitar ou desabilitar uma regra, use a alternância na coluna Ativo.
Para excluir uma regra de saída, selecione excluir para a regra.
Lista de regras exigidas
Gorjeta
Essas regras são adicionadas automaticamente à VNet gerenciada.
Pontos finais privados:
- Quando o modo de isolamento para a rede virtual gerenciada é
Allow internet outbound
, as regras de saída de ponto de extremidade privado são criadas automaticamente como regras necessárias da rede virtual gerenciada para o hub e recursos associados com acesso à rede pública desabilitado (Cofre de Chaves, Conta de Armazenamento, Registro de Contêiner, hub). - Quando o modo de isolamento para a rede virtual gerenciada é
Allow only approved outbound
, as regras de saída de ponto de extremidade privado são criadas automaticamente como regras necessárias da rede virtual gerenciada para o hub e recursos associados, independentemente do modo de acesso à rede pública para esses recursos (Cofre de Chaves, Conta de Armazenamento, Registro de Contêiner, hub).
Regras da etiqueta de serviço de saída :
AzureActiveDirectory
Azure Machine Learning
BatchNodeManagement.region
AzureResourceManager
AzureFrontDoor.FirstParty
MicrosoftContainerRegistry
AzureMonitor
Regras da etiqueta de serviço de entrada :
AzureMachineLearning
Lista de regras de saída específicas do cenário
Cenário: Acessar pacotes públicos de aprendizado de máquina
Para permitir a instalação de pacotes Python para treinamento e implantação, adicione regras FQDN de saída para permitir o tráfego para os seguintes nomes de host:
Nota
Esta não é uma lista completa dos hosts necessários para todos os recursos Python na internet, apenas os mais comumente usados. Por exemplo, se precisar de aceder a um repositório do GitHub ou a outro anfitrião, deverá identificar e adicionar os anfitriões necessários para esse cenário.
Nome do anfitrião | Objetivo |
---|---|
anaconda.com *.anaconda.com |
Usado para instalar pacotes padrão. |
*.anaconda.org |
Usado para obter dados de recompra. |
pypi.org |
Usado para listar dependências do índice padrão, se houver, e o índice não é substituído pelas configurações do usuário. Se o índice for substituído, você também deverá permitir *.pythonhosted.org . |
pytorch.org *.pytorch.org |
Usado por alguns exemplos baseados em PyTorch. |
*.tensorflow.org |
Usado por alguns exemplos baseados no Tensorflow. |
Cenário: Usar o código do Visual Studio
O Visual Studio Code depende de hosts e portas específicos para estabelecer uma conexão remota.
Anfitriões
Se você planeja usar o Visual Studio Code com o hub, adicione regras FQDN de saída para permitir o tráfego para os seguintes hosts:
*.vscode.dev
vscode.blob.core.windows.net
*.gallerycdn.vsassets.io
raw.githubusercontent.com
*.vscode-unpkg.net
*.vscode-cdn.net
*.vscodeexperiments.azureedge.net
default.exp-tas.com
code.visualstudio.com
update.code.visualstudio.com
*.vo.msecnd.net
marketplace.visualstudio.com
pkg-containers.githubusercontent.com
github.com
Portas
Você deve permitir o tráfego de rede para as portas 8704 a 8710. O servidor VS Code seleciona dinamicamente a primeira porta disponível dentro deste intervalo.
Cenário: Use modelos HuggingFace
Se você planeja usar modelos HuggingFace com o hub, adicione regras FQDN de saída para permitir o tráfego para os seguintes hosts:
- docker.io
- *.docker.io
- *.docker.com
- production.cloudflare.docker.com
- cnd.auth0.com
- cdn-lfs.huggingface.co
Cenário: Curado pela IA do Azure
Esses modelos envolvem a instalação dinâmica de dependências em tempo de execução e exigem regras FQDN de saída para permitir o tráfego para os seguintes hosts:
*.anaconda.org *.anaconda.com anaconda.com pypi.org *.pythonhosted.org *.pytorch.org pytorch.org
Pontos finais privados
Atualmente, há suporte para pontos de extremidade privados para os seguintes serviços do Azure:
- Hub do AI Studio
- Pesquisa de IA do Azure
- Serviços de IA do Azure
- API Management do Azure
- Registo de Contentores do Azure
- Azure Cosmos DB (todos os tipos de subrecursos)
- Azure Data Factory
- Azure Database for MariaDB
- Base de Dados do Azure para MySQL
- Banco de Dados do Azure para Servidor Único PostgreSQL
- Banco de Dados do Azure para Servidor Flexível PostgreSQL
- Azure Databricks
- Hubs de Eventos do Azure
- Azure Key Vault
- Azure Machine Learning
- Registos do Azure Machine Learning
- Cache de Redis do Azure
- Azure SQL Server
- Armazenamento do Azure (todos os tipos de subrecursos)
Ao criar um ponto de extremidade privado, você fornece o tipo de recurso e o subrecurso ao qual o ponto de extremidade se conecta. Alguns recursos têm vários tipos e subrecursos. Para obter mais informações, consulte o que é um ponto de extremidade privado.
Quando você cria um ponto de extremidade privado para recursos de dependência de hub, como o Armazenamento do Azure, o Registro de Contêiner do Azure e o Cofre da Chave do Azure, o recurso pode estar em uma assinatura diferente do Azure. No entanto, o recurso deve estar no mesmo locatário que o hub.
Um ponto de extremidade privado é criado automaticamente para uma conexão se o recurso de destino for um recurso do Azure listado acima. Um ID de destino válido é esperado para o ponto de extremidade privado. Uma ID de destino válida para a conexão pode ser a ID do Azure Resource Manager de um recurso pai. O ID de destino também é esperado no destino da conexão ou no metadata.resourceid
. Para saber mais sobre conexões, consulte Como adicionar uma nova conexão no Azure AI Studio.
Preços
O recurso de rede virtual gerenciada pelo hub é gratuito. No entanto, você será cobrado pelos seguintes recursos usados pela rede virtual gerenciada:
Azure Private Link - Os pontos de extremidade privados usados para proteger as comunicações entre a rede virtual gerenciada e os recursos do Azure dependem do Azure Private Link. Para obter mais informações sobre preços, consulte Preços do Link Privado do Azure.
Regras de saída FQDN - As regras de saída FQDN são implementadas usando o Firewall do Azure. Se você usar regras de FQDN de saída, as cobranças pelo Firewall do Azure serão incluídas na sua cobrança. O SKU do Firewall do Azure é padrão. O Firewall do Azure é provisionado por hub.
Importante
O firewall não é criado até que você adicione uma regra FQDN de saída. Se você não usar regras FQDN, não será cobrado pelo Firewall do Azure. Para obter mais informações sobre preços, consulte Preços do Firewall do Azure.