Isolamento de rede virtual gerenciado pelo espaço de trabalho
APLICA-SE A:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (current)
O Azure Machine Learning fornece suporte para isolamento de rede virtual gerenciada (VNet gerenciada). O isolamento de VNet gerenciado simplifica e automatiza sua configuração de isolamento de rede com uma VNet gerenciada do Azure Machine Learning interna no nível do espaço de trabalho. A VNet gerenciada protege seus recursos gerenciados do Azure Machine Learning, como instâncias de computação, clusters de computação, computação sem servidor e pontos de extremidade online gerenciados.
Proteger seu espaço de trabalho com uma rede gerenciada fornece isolamento de rede para acesso de saída do espaço de trabalho e cálculos gerenciados. Uma Rede Virtual do Azure que você cria e gerencia é usada para fornecer acesso de entrada de isolamento de rede ao espaço de trabalho. Por exemplo, um ponto de extremidade privado para o espaço de trabalho é criado em sua Rede Virtual do Azure. Qualquer cliente que se conecte à rede virtual pode acessar o espaço de trabalho por meio do ponto de extremidade privado. Ao executar trabalhos em computadores gerenciados, a rede gerenciada restringe o que a computação pode acessar.
Arquitetura de rede virtual gerenciada
Quando você habilita o isolamento de rede virtual gerenciado, uma VNet gerenciada é criada para o espaço de trabalho. Os recursos de computação gerenciados criados para o espaço de trabalho usam automaticamente essa VNet gerenciada. A VNet gerenciada pode usar pontos de extremidade privados para recursos do Azure que são usados pelo seu espaço de trabalho, como o Armazenamento do Azure, o Cofre da Chave do Azure e o Registro de Contêiner do Azure.
Há dois modos de configuração diferentes para o tráfego de saída da rede virtual gerenciada:
Gorjeta
Independentemente do modo de saída usado, o tráfego para os recursos do Azure pode ser configurado para usar um ponto de extremidade privado. Por exemplo, você pode permitir todo o tráfego de saída para a Internet, mas restringir a comunicação com os recursos do Azure adicionando regras de saída para os recursos.
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 gerenciada. | 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 ou você está usando sua própria Rede Virtual do Azure para proteger recursos. | Você deseja entrada e saída públicas do espaço de trabalho ou está lidando com o isolamento de rede com sua própria VNet do Azure. |
1: Você pode usar regras de saída com permitir somente o modo de saída aprovado para obter o mesmo resultado que usar permitir saída da Internet. As diferenças são:
- 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. 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 VNet gerenciada é pré-configurada com as regras padrão necessárias. Ele também é configurado para conexões de ponto de extremidade privado com seu espaço de trabalho, armazenamento padrão do espaço de trabalho, registro de contêiner e cofre de chaves se eles estiverem configurados como privados ou se o modo de isolamento do espaço de trabalho 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 VNet gerenciada configurada para permitir a saída da Internet:
O diagrama a seguir mostra uma VNet 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 espaço de trabalho são sinalizados como privados. Como eles são sinalizados como privados, um ponto de extremidade privado é usado para se comunicar com eles.
Nota
Depois que um espaço de trabalho VNet gerenciado é configurado para permitir a saída da Internet, o espaço de trabalho não pode ser reconfigurado para desabilitado. Da mesma forma, depois que um espaço de trabalho de rede virtual gerenciado é configurado para permitir apenas saída aprovada, o espaço de trabalho não pode ser reconfigurado para permitir a saída da Internet. Tenha isto em conta ao selecionar o modo de isolamento para a VNet gerida no seu espaço de trabalho.
Azure Machine Learning Studio
Se você quiser usar o bloco de anotações integrado ou criar conjuntos de dados na conta de armazenamento padrão do studio, seu cliente precisará acessar a conta de armazenamento padrão. Crie um ponto de extremidade privado ou ponto de extremidade de serviço para a conta de armazenamento padrão na Rede Virtual do Azure que os clientes usam.
Parte do estúdio do Azure Machine Learning é executado localmente no navegador da Web do cliente e se comunica diretamente com o armazenamento padrão para o espaço de trabalho. A criação de um ponto de extremidade privado ou ponto de extremidade de serviço (para a conta de armazenamento padrão) na rede virtual do cliente garante que o cliente possa se comunicar com a conta de armazenamento.
Para obter mais informações sobre como criar um ponto de extremidade privado ou ponto de extremidade de serviço, consulte os artigos Conectar-se de forma privada a uma conta de armazenamento e Pontos de extremidade de serviço.
Recursos associados seguros
Se você adicionar os seguintes serviços à rede virtual usando um ponto de extremidade de serviço ou um ponto de extremidade privado (desabilitando o acesso público), permita que serviços confiáveis da Microsoft acessem esses serviços:
Serviço | Informações sobre o ponto final | Permitir informações confiáveis |
---|---|---|
Azure Key Vault | Ponto de extremidade de serviço Ponto de extremidade privado |
Permitir que serviços confiáveis da Microsoft ignorem esse firewall |
Conta de armazenamento do Azure | Ponto final privado e de serviço Ponto final privado |
Conceder acesso a partir de instâncias de recursos do Azure ou Conceder acesso a serviços fidedignos do Azure |
Azure Container Registry | Ponto final privado | Permitir serviços confiáveis |
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. Experimente a versão gratuita ou paga do Azure Machine Learning.
O provedor de recursos Microsoft.Network deve estar registrado para sua assinatura do Azure. Este fornecedor de recursos é utilizado pelo espaço de trabalho ao criar endpoints privados para a rede virtual gerida.
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
A CLI do Azure e a
ml
extensão para a CLI do Azure. Para obter mais informações, consulte Instalar, configurar e usar a CLI (v2).Gorjeta
A VNet gerenciada do Azure Machine Learning foi apresentada em 23 de maio de 2023. Se você tiver uma versão mais antiga da extensão ml, talvez seja necessário atualizá-la para que os exemplos neste artigo funcionem. Para atualizar a extensão, use o seguinte comando da CLI do Azure:
az extension update -n ml
Os exemplos de CLI neste artigo pressupõem que você esteja usando o shell Bash (ou compatível). Por exemplo, de um sistema Linux ou Subsistema Windows para Linux.
Os exemplos da CLI do Azure neste artigo são usados
ws
para representar o nome do espaço de trabalho erg
para representar o nome do grupo de recursos. Altere esses valores conforme necessário ao usar os comandos com sua assinatura do Azure.
Nota
Se você estiver usando o espaço de trabalho UAI, certifique-se de adicionar a função Aprovador de Conexão de Rede Empresarial do Azure AI à sua identidade. Para obter mais informações, consulte Identidade gerenciada atribuída pelo usuário.
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. Para obter mais informações, consulte Provisionar manualmente a rede.
Importante
Se você planeja enviar trabalhos do Spark sem servidor, deverá iniciar manualmente o provisionamento. Para obter mais informações, consulte a seção Configurar para trabalhos do Spark sem servidor.
Para configurar uma VNet gerenciada que permita comunicações de saída pela Internet, você pode usar o --managed-network allow_internet_outbound
parâmetro ou um arquivo de configuração YAML que contenha as seguintes entradas:
managed_network:
isolation_mode: allow_internet_outbound
Você também pode definir regras de saída para outros serviços do Azure nos quais o espaço de trabalho depende. Essas regras definem pontos de extremidade privados que permitem que um recurso do Azure se comunique com segurança com a VNet gerenciada. A regra a seguir demonstra a adição de um ponto de extremidade privado a um recurso de Blob do Azure.
managed_network:
isolation_mode: allow_internet_outbound
outbound_rules:
- name: added-perule
destination:
service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
spark_enabled: true
subresource_target: blob
type: private_endpoint
Você pode configurar uma VNet gerenciada usando os az ml workspace create
comandos ou az ml workspace update
:
Crie um novo espaço de trabalho:
O exemplo a seguir cria um novo espaço de trabalho. O
--managed-network allow_internet_outbound
parâmetro configura uma VNet gerenciada para o espaço de trabalho:az ml workspace create --name ws --resource-group rg --managed-network allow_internet_outbound
Para criar um espaço de trabalho usando um arquivo YAML em vez disso, use o
--file
parâmetro e especifique o arquivo YAML que contém as definições de configuração:az ml workspace create --file workspace.yaml --resource-group rg --name ws
O exemplo de YAML a seguir define um espaço de trabalho com uma VNet gerenciada:
name: myworkspace location: EastUS managed_network: isolation_mode: allow_internet_outbound
Atualizar um espaço de trabalho existente:
Aviso
Antes de atualizar uma área de trabalho existente para utilizar uma rede virtual gerida, tem de eliminar todos os recursos de computação da área de trabalho. Isto inclui a instância de computação, o cluster de cálculo e os pontos finais online geridos.
O exemplo a seguir atualiza um espaço de trabalho existente. O
--managed-network allow_internet_outbound
parâmetro configura uma VNet gerenciada para o espaço de trabalho:az ml workspace update --name ws --resource-group rg --managed-network allow_internet_outbound
Para atualizar um espaço de trabalho existente usando o arquivo YAML, use o
--file
parâmetro e especifique o arquivo YAML que contém as definições de configuração:az ml workspace update --file workspace.yaml --name ws --resource-group MyGroup
O exemplo YAML a seguir define uma VNet gerenciada para o espaço de trabalho. Ele também demonstra como adicionar uma conexão de ponto de extremidade privada a um recurso usado pelo espaço de trabalho; Neste exemplo, um ponto de extremidade privado para um armazenamento de blob:
name: myworkspace managed_network: isolation_mode: allow_internet_outbound outbound_rules: - name: added-perule destination: service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME> spark_enabled: true subresource_target: blob type: private_endpoint
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. Para obter mais informações, consulte Provisionar manualmente a rede.
Importante
Se você planeja enviar trabalhos do Spark sem servidor, deverá iniciar manualmente o provisionamento. Para obter mais informações, consulte a seção Configurar para trabalhos do Spark sem servidor.
Para configurar uma VNet gerenciada que permita apenas comunicações de saída aprovadas, você pode usar o --managed-network allow_only_approved_outbound
parâmetro ou um arquivo de configuração YAML que contenha as seguintes entradas:
managed_network:
isolation_mode: allow_only_approved_outbound
Você também pode definir regras de saída para definir a comunicação de saída aprovada. Uma regra de saída pode ser criada para um tipo de service_tag
, fqdn
e private_endpoint
. A regra a seguir demonstra a adição de um ponto de extremidade privado a um recurso de Blob do Azure, uma marca de serviço ao Azure Data Factory e um FQDN a pypi.org
:
Importante
- Adicionar uma saída para uma etiqueta de serviço ou FQDN só é válido quando a VNet gerenciada está configurada como
allow_only_approved_outbound
. - Se você adicionar regras de saída, a Microsoft não poderá garantir a exfiltração de dados.
Aviso
As regras de saída FQDN são implementadas usando o Firewall do Azure. Se usar regras de FQDN de saída, as cobranças do Firewall do Azure serão adicionadas à sua cobrança. Para obter mais informações, veja os Preços.
managed_network:
isolation_mode: allow_only_approved_outbound
outbound_rules:
- name: added-servicetagrule
destination:
port_ranges: 80, 8080
protocol: TCP
service_tag: DataFactory
type: service_tag
- name: add-fqdnrule
destination: 'pypi.org'
type: fqdn
- name: added-perule
destination:
service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
spark_enabled: true
subresource_target: blob
type: private_endpoint
Você pode configurar uma VNet gerenciada usando os az ml workspace create
comandos ou az ml workspace update
:
Crie um novo espaço de trabalho:
O exemplo a seguir usa o
--managed-network allow_only_approved_outbound
parâmetro para configurar a VNet gerenciada:az ml workspace create --name ws --resource-group rg --managed-network allow_only_approved_outbound
O seguinte arquivo YAML define um espaço de trabalho com uma VNet gerenciada:
name: myworkspace location: EastUS managed_network: isolation_mode: allow_only_approved_outbound
Para criar um espaço de trabalho usando o arquivo YAML, use o
--file
parâmetro:az ml workspace create --file workspace.yaml --resource-group rg --name ws
Atualizar um espaço de trabalho existente
Aviso
Antes de atualizar uma área de trabalho existente para utilizar uma rede virtual gerida, tem de eliminar todos os recursos de computação da área de trabalho. Isto inclui a instância de computação, o cluster de cálculo e os pontos finais online geridos.
O exemplo a seguir usa o
--managed-network allow_only_approved_outbound
parâmetro para configurar a VNet gerenciada para um espaço de trabalho existente:az ml workspace update --name ws --resource-group rg --managed-network allow_only_approved_outbound
O seguinte arquivo YAML define uma VNet gerenciada para o espaço de trabalho. Ele também demonstra como adicionar uma saída aprovada à VNet gerenciada. Neste exemplo, uma regra de saída é adicionada para uma tag de serviço:
Aviso
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 do Firewall do Azure serão adicionadas à sua cobrança. Para obter mais informações, consulte Preços.
name: myworkspace_dep managed_network: isolation_mode: allow_only_approved_outbound outbound_rules: - name: added-servicetagrule destination: port_ranges: 80, 8080 protocol: TCP service_tag: DataFactory type: service_tag - name: add-fqdnrule destination: 'pypi.org' type: fqdn - name: added-perule destination: service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME> spark_enabled: true subresource_target: blob type: private_endpoint
Configurar para trabalhos do Spark sem servidor
Gorjeta
As etapas nesta seção só são necessárias se você planeja enviar trabalhos do Spark sem servidor. Se você não estiver enviando trabalhos do Spark sem servidor, ignore esta seção.
Para habilitar os trabalhos do Spark sem servidor para a VNet gerenciada, você deve executar as seguintes ações:
- Configure uma VNet gerenciada para o espaço de trabalho e adicione um ponto de extremidade privado de saída para a Conta de Armazenamento do Azure.
- Depois de configurar a VNet gerenciada, provisione-a e sinalize-a para permitir trabalhos do Spark.
Configure um ponto de extremidade privado de saída.
Use um arquivo YAML para definir a configuração de VNet gerenciada e adicionar um ponto de extremidade privado para a Conta de Armazenamento do Azure. Também definido
spark_enabled: true
:Gorjeta
Este exemplo é para uma VNet gerenciada configurada usando
isolation_mode: allow_internet_outbound
para permitir tráfego da Internet. Se quiser permitir apenas o tráfego de saída aprovado, useisolation_mode: allow_only_approved_outbound
.name: myworkspace managed_network: isolation_mode: allow_internet_outbound outbound_rules: - name: added-perule destination: service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME> spark_enabled: true subresource_target: blob type: private_endpoint
Você pode usar um arquivo de configuração YAML com o
az ml workspace update
comando, especificando o--file
parâmetro e o nome do arquivo YAML. Por exemplo, o comando a seguir atualiza um espaço de trabalho existente usando um arquivo YAML chamadoworkspace_pe.yml
:az ml workspace update --file workspace_pe.yml --resource_group rg --name ws
Nota
Quando Permitir Somente Saída Aprovada estiver habilitado (
isolation_mode: allow_only_approved_outbound
), as dependências do pacote conda definidas na configuração da sessão do Spark não serão instaladas. Para resolver esse problema, carregue uma roda de pacote Python independente sem dependências externas para uma conta de armazenamento do Azure e crie um ponto de extremidade privado para essa conta de armazenamento. Use o caminho para a roda de pacotes Python comopy_files
parâmetro em seu trabalho do Spark. A definição de uma regra de saída FQDN não ignorará esse problema, pois a propagação da regra FQDN não é suportada pelo Spark.Provisione a VNet gerenciada.
Nota
Se o seu espaço de trabalho já estiver configurado para um ponto de extremidade público (por exemplo, com uma Rede Virtual do Azure) e tiver o acesso à rede pública habilitado, você deverá desabilitá-lo antes de provisionar a VNet gerenciada. Se você não desabilitar o acesso à rede pública ao provisionar a rede virtual gerenciada, os pontos de extremidade privados para o ponto de extremidade gerenciado podem não ser criados com êxito.
O exemplo a seguir mostra como provisionar uma VNet gerenciada para trabalhos Spark sem servidor usando o
--include-spark
parâmetro.az ml workspace provision-network -g my_resource_group -n my_workspace_name --include-spark
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.
O exemplo a seguir mostra como provisionar uma VNet gerenciada.
Gorjeta
Se você planeja enviar trabalhos do Spark sem servidor, adicione o --include-spark
parâmetro.
az ml workspace provision-network -g my_resource_group -n my_workspace_name
Para verificar se o provisionamento foi concluído, use o seguinte comando:
az ml workspace show -n my_workspace_name -g my_resource_group --query managed_network
Configurar compilações de imagem
Quando o Registro de Contêiner do Azure para seu espaço de trabalho está atrás de uma rede virtual, ele não pode ser usado para criar imagens diretamente do Docker. Em vez disso, configure seu espaço de trabalho para usar um cluster de computação ou uma instância de computação para criar imagens.
Importante
O recurso de computação usado para criar imagens do Docker precisa ser capaz de acessar os repositórios de pacotes usados para treinar e implantar seus modelos. Se você estiver usando uma rede configurada para permitir apenas saída aprovada, talvez seja necessário adicionar regras que permitam o acesso a repositórios públicos ou usar pacotes Python privados.
Para atualizar um espaço de trabalho para usar um cluster de computação ou uma instância de computação para criar imagens do Docker, use o az ml workspace update
comando com o --image-build-compute
parâmetro:
az ml workspace update --name ws --resource-group rg --image-build-compute mycompute
Gerenciar regras de saída
Para listar as regras de saída de VNet gerenciadas para um espaço de trabalho, use o seguinte comando:
az ml workspace outbound-rule list --workspace-name ws --resource-group rg
Para exibir os detalhes de uma regra de saída de VNet gerenciada, use o seguinte comando:
az ml workspace outbound-rule show --rule rule-name --workspace-name ws --resource-group rg
Para remover uma regra de saída da rede virtual gerenciada, use o seguinte comando:
az ml workspace outbound-rule remove --rule rule-name --workspace-name ws --resource-group rg
Lista de regras exigidas
Gorjeta
Essas regras são adicionadas automaticamente à VNet gerenciada.
Pontos finais privados:
- Quando o modo de isolamento para a VNet gerenciada é
Allow internet outbound
, as regras de saída do ponto de extremidade privado são criadas automaticamente como regras necessárias da VNet gerenciada para o espaço de trabalho e recursos associados com o acesso à rede pública desabilitado (Cofre da Chave, Conta de Armazenamento, Registro de Contêiner, espaço de trabalho do Azure Machine Learning). - Quando o modo de isolamento para a VNet gerenciada é
Allow only approved outbound
, as regras de saída do ponto de extremidade privado são criadas automaticamente como regras necessárias da VNet gerenciada para o espaço de trabalho e recursos associados, independentemente do modo de acesso à rede pública para esses recursos (Cofre da Chave, Conta de Armazenamento, Registro de Contêiner, espaço de trabalho do Azure Machine Learning).
Regras da etiqueta de serviço de saída :
AzureActiveDirectory
AzureMachineLearning
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:
Aviso
As regras de saída FQDN são implementadas usando o Firewall do Azure. Se usar regras de FQDN de saída, as cobranças do Firewall do Azure serão adicionadas à sua cobrança. Para obter mais informações, veja os Preços.
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 a área de trabalho ou a Web do Visual Studio Code com instância de computação
Se você planeja usar o Visual Studio Code com o Azure Machine Learning, adicione regras FQDN de saída para permitir o tráfego para os seguintes hosts:
Aviso
As regras de saída FQDN são implementadas usando o Firewall do Azure. Se usar regras de FQDN de saída, as cobranças do Firewall do Azure serão adicionadas à sua cobrança. Para obter mais informações, veja os Preços.
*.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
vscode.download.prss.microsoft.com
Cenário: Usar pontos de extremidade em lote ou ParallelRunStep
Se você planeja usar pontos de extremidade em lote do Azure Machine Learning para implantação ou ParallelRunStep, adicione regras de ponto de extremidade privado de saída para permitir o tráfego para os seguintes subrecursos para a conta de armazenamento padrão:
queue
table
Cenário: Use o fluxo de prompt com o Azure OpenAI, a segurança de conteúdo e a Pesquisa de IA do Azure
- Ponto de extremidade privado para os Serviços de IA do Azure
- Ponto de extremidade privado para a Pesquisa de IA do Azure
Cenário: Use modelos HuggingFace
Se você planeja usar modelos HuggingFace com o Azure Machine Learning, adicione regras FQDN de saída para permitir o tráfego para os seguintes hosts:
Aviso
As regras de saída FQDN são implementadas usando o Firewall do Azure. Se usar regras de FQDN de saída, as cobranças do Firewall do Azure serão adicionadas à sua cobrança. Para obter mais informações, veja os Preços.
docker.io
*.docker.io
*.docker.com
production.cloudflare.docker.com
cdn.auth0.com
cdn-lfs.huggingface.co
Cenário: Habilitar o acesso a partir de endereços IP selecionados
Se você quiser habilitar o acesso de endereços IP específicos, use as seguintes ações:
Adicione uma regra de ponto de extremidade privado de saída para permitir o tráfego para o espaço de trabalho do Azure Machine Learning. Isso permite que instâncias de computação criadas na rede virtual gerenciada acessem o espaço de trabalho.
Gorjeta
Não é possível adicionar essa regra durante a criação do espaço de trabalho, pois o espaço de trabalho ainda não existe.
Habilite o acesso de rede pública ao espaço de trabalho. Para obter mais informações, consulte Acesso à rede pública habilitado.
Adicione seus endereços IP ao firewall do Azure Machine Learning. Para obter mais informações, consulte habilitar o acesso somente de intervalos de IP.
Nota
Apenas são suportados endereços IPv4.
Pontos finais privados
Atualmente, há suporte para pontos de extremidade privados para os seguintes serviços do Azure:
- Azure Machine Learning
- Registos do Azure Machine Learning
- Armazenamento do Azure (todos os tipos de subrecursos)
- Registo de Contentores do Azure
- Azure Key Vault
- Serviços de IA do Azure
- Azure AI Search (anteriormente Pesquisa Cognitiva)
- Azure SQL Server
- Azure Data Factory
- Azure Cosmos DB (todos os tipos de subrecursos)
- Hubs de Eventos do Azure
- Cache de Redis do Azure
- Azure Databricks
- Azure Database for MariaDB
- Banco de Dados do Azure para Servidor Único PostgreSQL
- Banco de Dados do Azure para Servidor Flexível PostgreSQL
- Base de Dados do Azure para MySQL
- API Management do Azure
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 do Azure Machine Learning, 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 espaço de trabalho do Azure Machine Learning.
Importante
Ao configurar pontos de extremidade privados para uma VNet gerenciada do Azure Machine Learning, os pontos de extremidade privados só são criados quando criados quando a primeira computação é criada ou quando o provisionamento de VNet gerenciado é forçado. Para obter mais informações sobre como forçar o provisionamento de VNet gerenciado, consulte Configurar para trabalhos do Spark sem servidor.
Preços
O recurso VNet gerido do Azure Machine Learning é gratuito. No entanto, será cobrado pelos seguintes recursos utilizados pela rede virtual gerida:
Azure Private Link - Os endpoints privados utilizados para proteger as comunicações entre a VNet gerida 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 usar regras de FQDN de saída, as cobranças do Firewall do Azure serão adicionadas à sua cobrança. O Firewall do Azure (SKU padrão) é provisionado pelo Azure Machine Learning.
Importante
O firewall não é criado até que você adicione uma regra FQDN de saída. Para obter mais informações sobre preços, consulte Preços do Firewall do Azure e exibir preços para a versão padrão .
Limitações
- O Azure AI Studio não suporta a utilização da sua própria Rede Virtual do Azure para proteger o hub, o projeto ou os recursos de computação. Você só pode usar o recurso de rede gerenciada para proteger esses recursos.
- Depois de habilitar o isolamento de rede virtual gerenciada do seu espaço de trabalho (permitir saída da Internet ou permitir apenas saída aprovada), você não poderá desativá-lo.
- A VNet gerida utiliza uma ligação de ponto final privado para aceder aos 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 VNet gerida é eliminada quando o espaço de trabalho é aliminado.
- 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.
- Não existe suporte para a criação de um cluster de cálculo numa região diferente do espaço de trabalho ao utilizar uma VNet gerida.
- Kubernetes e VMs ligados não são suportados numa VNet gerida pelo Azure Machine Learning.
- A utilização de regras de saída FQDN aumenta o custo da VNet gerida porque as regras FQDN utilizam Azure Firewall. Para obter mais informações, veja os Preços.
- As regras de saída FQDN apenas suportam as portas 80 e 443.
- Se sua instância de computação estiver numa rede gerida e estiver configurada para nenhum IP público, utilize o comando
az ml compute connect-ssh
para ligação a SSH. - Ao utilizar a Vnet gerida, não pode implemenntar recursos de computação dentro da sua Vnet personalizada. Os recursos de computação apenas podem ser criados dentro da Vnet gerida.
- O isolamento de rede com gerência não pode estabelecer uma ligação privada a partir da rede virtual gerida aos recursos nas instalações de um utilizador. Para obter a lista de conexões privadas suportadas, consulte Pontos de extremidade privados.
- Se sua rede gerenciada estiver configurada para permitir apenas saída aprovada, você não poderá usar uma regra FQDN para acessar Contas de Armazenamento do Azure. Em vez disso, você deve usar um ponto de extremidade privado.
Migração de recursos computacionais
Se você tiver um espaço de trabalho existente e quiser habilitar a VNet gerenciada para ele, atualmente não há nenhum caminho de migração suportado para recursos de computação gerenciados existentes. Você precisará excluir todos os recursos de computação gerenciados existentes e recriá-los depois de habilitar a VNet gerenciada. A lista a seguir contém os recursos de computação que devem ser excluídos e recriados:
- Cluster de cálculo
- Instância de computação
- Pontos finais online geridos