Rede virtual gerenciada do Azure Data Factory

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

Data Factory no Microsoft Fabric é a próxima geração de Azure Data Factory, com uma arquitetura mais simples, IA interna e novos recursos. Se você não estiver familiarizado com a integração de dados, comece com Fabric Data Factory. As cargas de trabalho existentes do ADF podem ser atualizadas para Fabric para acessar novos recursos em ciência de dados, análise em tempo real e relatórios.

Este artigo explica redes virtuais gerenciadas e pontos de extremidade privados gerenciados em Azure Data Factory.

Rede virtual gerenciada

Quando você cria um runtime de integração do Azure em uma rede virtual gerenciada pelo Data Factory, o runtime de integração é provisionado com a rede virtual gerenciada. Ele utiliza endpoints privados para se conectar de forma segura a armazenamentos de dados compatíveis.

A criação de um runtime de integração em uma rede virtual gerenciada garante que o processo de integração de dados seja isolado e seguro.

Benefícios de usar a rede virtual gerenciada:

  • Com uma rede virtual gerenciada, você pode facilitar o gerenciamento da rede virtual para o Data Factory. Não é necessário criar uma sub-rede para um runtime de integração que, eventualmente, usaria muitos IPs privados de sua rede virtual e exigiria um planejamento prévio de infraestrutura de rede.
  • Você não precisa de conhecimento profundo de redes Azure para integrar dados com segurança. Em vez disso, começar com extração, transformação e carregamento seguro (ETL) é muito mais simples para engenheiros de dados.
  • A rede virtual gerenciada, juntamente com os pontos de extremidade privados gerenciados, protege contra a exfiltração dos dados.

A data factory suporta a rede virtual gerenciada apenas na mesma região da data factory.

Observação

Um runtime de integração global existente não pode alternar para um runtime de integração na rede virtual gerenciada de um Data Factory e vice-versa.

Diagrama que mostra a arquitetura de rede virtual gerenciada pelo Data Factory.

Há duas maneiras de habilitar a rede virtual gerenciada no data factory:

  1. Habilite a rede virtual gerenciada durante a criação do data factory.

Captura de tela de como habilitar a rede virtual gerenciada durante a criação do data factory.

  1. Habilite a rede virtual gerenciada no runtime de integração.

Captura de tela de ativar a rede virtual gerenciada em tempo de execução de integração.

Pontos de extremidade privados gerenciados

Endpoints privados gerenciados são endpoints privados que você cria na rede virtual gerenciada pela Data Factory que estabelecem um link privado para recursos do Azure. A Data Factory gerencia esses endpoints privados para você.

O Data Factory dá suporte a links privados. Você pode usar o Link Privado do Azure para acessar serviços da plataforma Azure as a service (PaaS) como Armazenamento do Azure, Azure Cosmos DB e Azure Synapse Analytics.

Quando você usa um link privado, o tráfego entre seus armazenamentos de dados e a rede virtual gerenciada percorre inteiramente a rede de backbone Microsoft. O link privado protege contra riscos de exfiltração dos dados. Você estabelece um link privado para um recurso criando um ponto de extremidade privado.

Um endpoint privado usa um endereço IP privado na rede virtual gerenciada para trazer o serviço para ele. Os pontos de extremidade privados são mapeados para um recurso específico no Azure e não para todo o serviço. Você pode limitar a conectividade a um recurso específico que sua organização aprova. Para mais informações, confira Links privados e pontos de extremidade privados.

Observação

O provedor de recursos Microsoft.Network deve estar registrado em sua assinatura.

  1. Certifique-se de habilitar a rede virtual gerenciada na fábrica de dados.

  2. Crie um novo endpoint privado gerenciado no Gerenciar hub.

    Captura de tela que exibe novos endpoints privados gerenciados.

  3. Quando você cria um endpoint privado gerenciado no Data Factory, cria uma conexão de endpoint privado em estado Pendente . Esse estado inicia um fluxo de trabalho de aprovação. O proprietário do recurso de link privado é responsável por aprovar ou rejeitar a conexão.

    Screenshot que mostra a opção Gerenciar aprovações em Azure portal.

  4. Se o proprietário aprova a conexão, o link privado é estabelecido. Caso contrário, o link privado não é estabelecido. Em ambos os casos, o ponto de extremidade privado gerenciado é atualizado com o status da conexão.

    Captura de tela que mostra como aprovar um endpoint privado gerenciado.

Somente um endpoint privado gerenciado em estado aprovado pode enviar tráfego para um recurso de conexão privada específico.

Observação

DNS personalizado não é suportado em rede virtual gerenciada.

Observação

A rede virtual gerenciada e o ponto de extremidade privado gerenciado estão sob a assinatura da Microsoft.

Criação interativa

As capacidades de autoria interativa suportam funcionalidades como conexão de teste, navegação por listas de pastas e tabelas, obtenção de esquemas e pré-visualização de dados. Você pode ativar a autoria interativa ao criar ou editar um runtime de integração com o Azure em uma rede virtual gerenciada pelo Azure Data Factory. O serviço backend pré-aloca computação para funcionalidades de autoria interativa. Caso contrário, o cálculo é alocado toda vez que você realiza uma operação interativa, o que leva mais tempo. O tempo de vida (TTL) para autoria interativa é 60 minutos por padrão, o que significa que ela se torna automaticamente desativada 60 minutos após a última operação de autoria interativa. Você pode alterar o valor TTL de acordo com suas necessidades.

Captura de tela que mostra a criação interativa.

Vida útil

atividade Copy

Por padrão, toda atividade de cópia gera um novo cálculo baseado na configuração da atividade de cópia. Com a rede virtual gerenciada ativada, o tempo de inicialização da computação fria leva alguns minutos, e o movimento de dados só pode começar até que esteja completo. Se seus pipelines contêm múltiplas atividades de cópia sequencial, ou se você tem muitas atividades de cópia em um loop foreach e não consegue rodá-las todas em paralelo, você pode ativar um valor de tempo de vida (TTL) na configuração de runtime de integração do Azure. Especificar um valor TTL e os números de unidade de integração de dados (DIU) necessários para a atividade de cópia mantém os cálculos correspondentes ativos por um período de tempo após a conclusão da execução. Se uma nova atividade de cópia começar durante o tempo TTL, ela reutiliza os cálculos existentes e o tempo de inicialização é muito reduzido. Após a conclusão da segunda atividade de cópia, os cálculos permanecem ativos novamente pelo tempo TTL. Você pode escolher entre os tamanhos de computação pré-definidos, que vão de pequenos a médios e grandes. Alternativamente, você pode personalizar o tamanho do processamento com base nas suas necessidades e necessidades em tempo real.

Observação

Reconfigurar o número da DIU não afeta a execução atual da atividade de cópia.

Observação

A medida DIU de 2 DIU não é suportada para a atividade Copy em uma rede virtual gerenciada.

O Data Factory usa o DIU que você seleciona no TTL para executar todas as atividades de cópia. O tamanho do DIU não é escalado automaticamente de acordo com as necessidades reais, então você precisa escolher DIUs suficientes.

Aviso

Selecionar poucas DIUs para rodar muitas atividades faz com que muitas permaneçam pendentes na fila, o que afeta seriamente o desempenho geral.

Pipeline e atividade externa

Assim como no copy, você pode ajustar o tamanho do computo e a duração TTL conforme suas necessidades. No entanto, diferente do copy, você não pode desabilitar pipeline e TTL externo.

Observação

O TTL (tempo de vida útil) só é aplicável à rede virtual gerenciada.

Captura de tela que mostra a Configuração de TTL.

Use a tabela a seguir como referência para determinar o número ótimo de nós para executar tanto pipelines quanto atividades externas.

Tipo de atividade Capacidade
Atividade de pipeline Aproximadamente 50 por nó
Atividades de script e de pesquisa com SQL alwaysEncrypted tendem a consumir mais recursos em comparação com outras atividades de pipeline, sendo o número sugerido em torno de 4 por nó
Atividade externa Aproximadamente 800 por nó

Comparação de TTLs diferentes

A tabela a seguir lista as diferenças entre os tipos de TTL:

Recurso Criação interativa Copiar escala de cálculo Escala de computação externa & de pipeline
Quando entrar em vigor Imediatamente após a habilitação Primeira execução da atividade Primeira execução da atividade
Pode ser desabilitado S S N
A computação reservada é configurável N S S

Observação

Você não pode habilitar o TTL no runtime de integração de Azure de resolução automática padrão. Você pode criar um novo Azure runtime de integração para ele.

Observação

Quando TTL em escala de cópia, pipeline ou computação externa é ativada, recursos de computação reservados determinam a faturação. Como resultado, a saída da atividade não inclui o BillingReference, pois esse valor é relevante exclusivamente em cenários não TTL.

Criar uma rede virtual gerenciada por meio de Azure PowerShell

$subscriptionId = ""
$resourceGroupName = ""
$factoryName = ""
$managedPrivateEndpointName = ""
$integrationRuntimeName = ""
$apiVersion = "2018-06-01"
$privateLinkResourceId = ""

$vnetResourceId = "subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.DataFactory/factories/${factoryName}/managedVirtualNetworks/default"
$privateEndpointResourceId = "subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.DataFactory/factories/${factoryName}/managedVirtualNetworks/default/managedprivateendpoints/${managedPrivateEndpointName}"
$integrationRuntimeResourceId = "subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.DataFactory/factories/${factoryName}/integrationRuntimes/${integrationRuntimeName}"

# Create managed Virtual Network resource
New-AzResource -ApiVersion "${apiVersion}" -ResourceId "${vnetResourceId}" -Properties @{}

# Create managed private endpoint resource
New-AzResource -ApiVersion "${apiVersion}" -ResourceId "${privateEndpointResourceId}" -Properties @{
        privateLinkResourceId = "${privateLinkResourceId}"
        groupId = "blob"
    }

# Create integration runtime resource enabled with virtual network
New-AzResource -ApiVersion "${apiVersion}" -ResourceId "${integrationRuntimeResourceId}" -Properties @{
        type = "Managed"
        typeProperties = @{
            computeProperties = @{
                location = "AutoResolve"
                dataFlowProperties = @{
                    computeType = "General"
                    coreCount = 8
                    timeToLive = 0
                }
            }
        }
        managedVirtualNetwork = @{
            type = "ManagedVirtualNetworkReference"
            referenceName = "default"
        }
    }

Observação

Você pode obter o groupId de outras fontes de dados a partir de um recurso de link privado.

Observação

O referenceName só deve ser definido como "padrão" se você criar por meio do comando do PowerShell.

Conexão de saída

Fontes de dados e serviços com suporte

Os seguintes serviços têm suporte nativo para endpoints privados. Eles podem ser conectados por meio de um link privado de uma rede virtual gerenciada do Data Factory:

  • Azure Databricks
  • Azure Functions (plano Premium)
  • Azure Key Vault
  • Azure Machine Learning
  • Link Privado do Azure
  • Microsoft Purview

Para obter o suporte de fontes de dados, você pode conferir a Visão geral do conector. Você pode acessar todas as fontes de dados com suporte do Data Factory por meio de uma rede pública.

Fontes de dados locais

Para saber como acessar fontes de dados on-premises de uma rede virtual gerenciada do Data Factory usando um ponto de extremidade privado, consulte Acessar o SQL Server local de uma rede virtual gerenciada do Data Factory usando um ponto de extremidade privado.

Comunicações de saída por meio do ponto de extremidade público de uma rede virtual gerenciada do Data Factory

Todas as portas são abertas para comunicações de saída.

Limitações e problemas conhecidos

Criação de serviço vinculado para Key Vault

Quando você cria um serviço vinculado para o Key Vault, não há referência de tempo de execução de integração. Portanto, não é possível criar pontos de extremidade privados durante a criação do serviço vinculado do Key Vault. Mas quando você cria um serviço vinculado para armazenamentos de dados que faz referência ao Key Vault, e este serviço vinculado referencia um runtime de integração em que a rede virtual gerenciada está habilitada, você pode criar um ponto de extremidade privado para o Key Vault durante a criação.

  • Test connection: Essa operação para um serviço vinculado de Key Vault valida apenas o formato de URL, mas não faz nenhuma operação de rede.
  • Usando ponto de extremidade privado: a coluna aparece sempre em branco, mesmo se você criar um ponto de extremidade privado para o Key Vault.

Criação de serviço vinculado de Azure HDInsight

A coluna Usando ponto de extremidade privado sempre aparece em branco mesmo que você crie um ponto de extremidade privado para HDInsight usando um serviço de conexão privada e um balanceador de carga com redirecionamento de porta.

Captura de tela que mostra um endpoint privado para o Key Vault.

Nome de domínio totalmente qualificado (FQDN) de Azure HDInsight

Se você criou um serviço personalizado de link privado, o FQDN deve terminar com azurehdinsight.net sem o nome de domínio sem o nome privado inicial ao criar um endpoint privado. Se você usa o privatelink no nome de domínio, certifique-se de que ele é válido e que você consegue resolver.

Restrições de acesso na rede virtual gerenciada com pontos de extremidade privados

Você não consegue acessar cada recurso PaaS quando ambos os lados estão expostos a um link privado e a um endpoint privado. Esse problema é uma limitação conhecida dos links privados e dos endpoints privados.

Por exemplo, você tem um ponto de extremidade privado gerenciado para a conta de armazenamento A. Você também pode acessar a conta de armazenamento B por meio da rede pública na mesma rede virtual gerenciada. Mas quando a conta de armazenamento B tem uma conexão de ponto de extremidade privado a partir de outra rede virtual gerenciada ou de uma rede virtual do cliente, você não pode acessar a conta de armazenamento B na sua rede virtual gerenciada através da rede pública.

Consulte os seguintes tutoriais: