zarządzana sieć wirtualna Azure Data Factory

DOTYCZY: Azure Data Factory Azure Synapse Analytics

Napiwek

Data Factory w usłudze Microsoft Fabric jest następną generacją Azure Data Factory z prostszą architekturą, wbudowaną sztuczną inteligencją i nowymi funkcjami. Jeśli dopiero zaczynasz integrować dane, zacznij od Fabric Data Factory. Istniejące obciążenia ADF można zaktualizować do Fabric, aby uzyskać dostęp do nowych możliwości w zakresie nauki o danych, analiz w czasie rzeczywistym oraz raportowania.

W tym artykule opisano zarządzane sieci wirtualne i zarządzane prywatne punkty końcowe w Azure Data Factory.

Zarządzana sieć wirtualna

Podczas tworzenia środowiska Azure Integration Runtime w zarządzanej przez Data Factory sieci wirtualnej, środowisko Integration Runtime jest udostępniane w ramach zarządzanej sieci wirtualnej. Używa prywatnych punktów końcowych do bezpiecznego łączenia się z obsługiwanymi magazynami danych.

Utworzenie środowiska Integration Runtime w zarządzanej sieci wirtualnej gwarantuje, że proces integracji danych jest izolowany i bezpieczny.

Zalety korzystania z zarządzanej sieci wirtualnej:

  • Zarządzaną siecią wirtualną można odciążyć obciążenie związane z zarządzaniem siecią wirtualną w usłudze Data Factory. Nie musisz tworzyć podsieci dla środowiska Integration Runtime, które może ostatecznie korzystać z wielu prywatnych adresów IP z sieci wirtualnej i wymagałoby wcześniejszego planowania infrastruktury sieciowej.
  • Nie potrzebujesz głębokiej wiedzy o sieciach Azure, żeby bezpiecznie integrować dane. Zamiast tego, rozpoczęcie pracy z secure extract, transform, and load (ETL) jest znacznie prostsze dla inżynierów danych.
  • Zarządzana sieć wirtualna wraz z zarządzanymi prywatnymi punktami końcowymi chroni przed eksfiltracją danych.

Fabryka danych obsługuje zarządzaną sieć wirtualną tylko w tym samym regionie co fabryka danych.

Uwaga

Istniejące globalne środowisko Integration Runtime nie może przełączyć się do środowiska Integration Runtime w zarządzanej sieci wirtualnej usługi Data Factory i na odwrót.

Diagram przedstawiający architekturę sieci wirtualnej zarządzanej przez usługę Data Factory.

Istnieją dwa sposoby włączania zarządzanej sieci wirtualnej w fabryce danych:

  1. Włącz zarządzaną sieć wirtualną podczas tworzenia fabryki danych.

Zrzut ekranu przedstawiający włączanie zarządzanej sieci wirtualnej podczas tworzenia fabryki danych.

  1. Włącz zarządzaną sieć wirtualną w środowisku Integration Runtime.

Zrzut ekranu włączania zarządzanej sieci wirtualnej w środowisku uruchomieniowym integracji.

Zarządzane prywatne punkty końcowe

Zarządzane prywatne endpointy to prywatne endpointy, które tworzysz w zarządzanej wirtualnej sieci Data Factory i które nawiązują prywatne połączenie z zasobami Azure. Data Factory zarządza tymi prywatnymi punktami końcowymi za Ciebie.

Usługa Data Factory obsługuje łącza prywatne. Możesz użyć Azure Private Link, aby uzyskać dostęp do usług platformy Azure as a Service (PaaS), takich jak Azure Storage, Azure Cosmos DB oraz Azure Synapse Analytics.

W przypadku korzystania z łącza prywatnego ruch między magazynami danych i zarządzaną siecią wirtualną przechodzi całkowicie przez sieć szkieletową Microsoft. Usługa Private Link chroni przed ryzykiem eksfiltracji danych. Utworzysz prywatny link do zasobu, tworząc prywatny punkt końcowy.

Prywatny punkt końcowy używa prywatnego adresu IP w zarządzanej sieci wirtualnej, aby doprowadzić usługę do siebie. Prywatne punkty końcowe są mapowane na określony zasób w Azure, a nie na całą usługę. Możesz ograniczyć łączność do konkretnego zasobu, który twoja organizacja zatwierdza. Aby uzyskać więcej informacji, zobacz Linki prywatne i prywatne punkty końcowe.

Uwaga

Dostawca zasobów Microsoft.Network musi być zarejestrowany dla twojej subskrypcji.

  1. Upewnij się, że włączono zarządzaną sieć wirtualną w fabryce danych.

  2. Stwórz nowy zarządzany prywatny endpoint w hubie Zarządzaj.

    Zrzut ekranu przedstawiający nowe zarządzane prywatne punkty końcowe.

  3. Gdy tworzysz zarządzany prywatny endpoint w Data Factory, tworzysz połączenie z prywatnym endpointem w stanie oczekującym . Ten stan inicjuje proces zatwierdzania. Właściciel zasobu łącza prywatnego jest odpowiedzialny za zatwierdzanie lub odrzucanie połączenia.

    Zrzut ekranu przedstawiający opcję Zarządzaj zatwierdzeniami w portalu Azure.

  4. Jeśli właściciel zatwierdzi połączenie, zostanie nawiązane łącze prywatne. W przeciwnym razie prywatny link nie zostaje ustanowiony. W obu przypadkach zarządzany prywatny punkt końcowy zostanie zaktualizowany o stan połączenia.

    Zrzut ekranu przedstawiający zatwierdzanie zarządzanego prywatnego punktu końcowego.

Tylko zarządzany prywatny punkt końcowy w stanie zatwierdzonym może wysyłać ruch do określonego zasobu łącza prywatnego.

Uwaga

Niestandardowe DNS nie jest obsługiwane w zarządzanej sieci wirtualnej.

Uwaga

Zarówno zarządzana sieć wirtualna, jak i zarządzany prywatny punkt końcowy znajdują się w subskrypcji Microsoft.

Tworzenie interakcyjne

Interaktywne możliwości authoringu wspierają takie funkcje jak testowanie połączenia, przeglądanie listy folderów i tabel, pobieranie schematów oraz podgląd danych. Możesz włączyć interaktywne authoring, tworząc lub edytując runtime integracji z Azure w zarządzanej wirtualnej sieci Azure Data Factory. Usługa backendowa prealokuje czas obliczeniowy na interaktywne funkcje authoringu. W przeciwnym razie obliczenia są przydzielane za każdym razem, gdy wykonujesz operację interaktywną, co zajmuje więcej czasu. Domyślnie czas trwania (TTL) dla interaktywnego autorstwa wynosi 60 minut, co oznacza, że automatycznie wyłącza się 60 minut po ostatniej operacji autorstwa interaktywnego. Możesz zmieniać wartość TTL według swoich potrzeb.

Zrzut ekranu przedstawiający interaktywne opracowywanie.

Time to live (Czas wygaśnięcia)

działanie Kopiuj

Domyślnie każda aktywność kopiowania uruchamia nowy układ obliczeniowy na podstawie konfiguracji aktywności kopiowania. Przy włączonej zarządzanej sieci wirtualnej, czas uruchamiania zimnego obliczenia zajmuje kilka minut, a ruch danych nie może się rozpocząć, dopóki nie zostanie zakończony. Jeśli twoje potoki zawierają wiele sekwencyjnych działań kopiowania lub masz wiele działań kopiowania w pętli foreach i nie możesz uruchomić ich wszystkich równolegle, możesz włączyć wartość czasu do życia (TTL) w konfiguracji integracji Azure. Określenie wartości TTL oraz liczb jednostek integracji danych (DIU) wymaganych dla czynności kopiowania utrzymuje odpowiadające obliczenia w stanie przez pewien czas po zakończeniu wykonywania. Jeśli nowa aktywność kopiowania rozpocznie się w czasie TTL, ponownie wykorzystuje istniejące obliczenia, a czas uruchomienia zostaje znacznie skrócony. Po zakończeniu drugiej aktywności kopiowania obliczenia pozostają ponownie aktywne przez czas TTL. Możesz wybierać spośród zdefiniowanych rozmiarów obliczeniowych, od małych przez średnie aż po duże. Alternatywnie możesz dostosować rozmiar procesora do swoich wymagań i potrzeb w czasie rzeczywistym.

Uwaga

Rekonfiguracja numeru DIU nie wpływa na bieżące wykonywanie aktywności kopiowania.

Uwaga

Miara DIU 2 DIU nie jest obsługiwana dla aktywności działanie Kopiuj w zarządzanej sieci wirtualnej.

Data Factory używa DIU, które wybierasz w TTL, aby wykonać wszystkie kopiowanie. Rozmiar DIU nie jest automatycznie skalowany zgodnie z rzeczywistymi potrzebami, więc trzeba wybrać wystarczająco dużo DIU.

Ostrzeżenie

Wybór zbyt małej liczby DIU do przeprowadzenia wielu aktywności powoduje, że wiele z nich pozostaje w kolejce oczekującej, co poważnie wpływa na ogólną wydajność.

Potok i działanie zewnętrzne

Podobnie jak w copy, możesz dostosować rozmiar obliczeń i czas TTL do swoich potrzeb. Jednak w przeciwieństwie do kopiowania, nie możesz wyłączyć potoku i zewnętrznego TTL.

Uwaga

Czas wygaśnięcia (TTL) ma zastosowanie tylko do zarządzanej sieci wirtualnej.

Zrzut ekranu przedstawiający konfigurację czasu wygaśnięcia.

Użyj poniższej tabeli jako odniesienia, aby określić optymalną liczbę węzłów zarówno do uruchamiania potoków, jak i działań zewnętrznych.

Typ działania Wydajność
Działanie potoku Około 50 na węzeł
Działanie skryptu oraz działanie wyszukiwania z funkcją SQL "alwaysEncrypted" zazwyczaj zużywa więcej zasobów w porównaniu z innymi działaniami w potoku, a sugerowana liczba to około 4 na węzeł.
Działanie zewnętrzne Około 800 na węzeł

Porównanie różnych czasu wygaśnięcia

Poniższa tabela przedstawia różnice między typami TTL:

Funkcja Tworzenie interakcyjne Skopiuj skalę obliczeniową Skala linii przetwarzania i zasobów obliczeniowych zewnętrznych
Kiedy wejść w życie Natychmiast po włączeniu Pierwsze wykonanie działania Pierwsze wykonanie działania
Można wyłączyć Y Y N
Zarezerwowane zasoby obliczeniowe można konfigurować N Y Y

Uwaga

Nie można włączyć TTL w domyślnym środowisku uruchomieniowym integracji Azure z automatycznym rozwiązywaniem. Możesz utworzyć dla niego nowy Azure Integration Runtime.

Uwaga

Gdy aktywowany jest TTL Copy, Pipeline lub External compute scale, zarezerwowane zasoby obliczeniowe decydują o rozliczeniu. W rezultacie wyjście aktywności nie zawiera billingReference, ponieważ ta wartość jest istotna wyłącznie w scenariuszach nie-TTL.

Tworzenie zarządzanej sieci wirtualnej za pośrednictwem 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"
        }
    }

Uwaga

Identyfikator groupId innych źródeł danych można pobrać z zasobu łącza prywatnego.

Uwaga

Wartość referenceName powinna być ustawiana tylko jako "domyślna", jeśli tworzysz za pomocą polecenia programu PowerShell.

Połączenie wychodzące

Obsługiwane źródła danych i usługi

Następujące usługi obsługują natywny prywatny punkt końcowy. Można je połączyć za pośrednictwem łącza prywatnego z zarządzanej sieci wirtualnej usługi Data Factory:

  • Azure Databricks
  • Azure Functions (plan Premium)
  • Azure Key Vault
  • Azure Machine Learning
  • Azure Private Link
  • Microsoft Purview

Aby uzyskać informacje o obsłudze źródeł danych, zapoznaj się z omówieniem łącznika. Dostęp do wszystkich źródeł danych obsługiwanych przez usługę Data Factory można uzyskać za pośrednictwem sieci publicznej.

Lokalne źródła danych

Aby dowiedzieć się, jak uzyskać dostęp do lokalnych źródeł danych z zarządzanej sieci wirtualnej przy użyciu prywatnego punktu końcowego, zapoznaj się z tematem Dostęp do lokalnego serwera SQL z zarządzanej sieci wirtualnej usługi Data Factory przy użyciu prywatnego punktu końcowego.

Komunikacja wychodząca za pośrednictwem publicznego punktu końcowego z zarządzanej sieci wirtualnej usługi Data Factory

Wszystkie porty są otwierane dla komunikacji wychodzącej.

Ograniczenia i znane problemy

Tworzenie połączonej usługi dla Key Vault

Podczas tworzenia połączonej usługi dla Key Vault nie ma odwołania do środowiska Integration Runtime. Nie można więc tworzyć prywatnych punktów końcowych podczas tworzenia połączonej usługi Key Vault. Jednak podczas tworzenia połączonej usługi dla repozytoriów danych, które odwołują się do Key Vault, a ta połączona usługa odwołuje się do środowiska "Integration Runtime" z włączoną zarządzaną siecią wirtualną, można utworzyć prywatny punkt końcowy dla Key Vault podczas tworzenia.

  • Test connection: Ta operacja dla połączonej usługi Key Vault weryfikuje tylko format adresu URL, ale nie wykonuje żadnej operacji sieciowej.
  • Uzystanie prywatnego punktu końcowego: Ta kolumna jest zawsze wyświetlana jako pusta, nawet jeśli utworzysz prywatny punkt końcowy dla Key Vault.

Tworzenie połączonej usługi Azure HDInsight

Kolumna Using private endpoint (Korzystanie z prywatnego punktu końcowego) jest zawsze wyświetlana jako pusta, nawet jeśli utworzysz prywatny punkt końcowy dla usługi HDInsight przy użyciu usługi łącza prywatnego i modułu równoważenia obciążenia z przekazywaniem portów.

Screenshot przedstawiający prywatny punkt końcowy dla Key Vault.

Fully qualified domain name (FQDN) Azure HDInsight

Jeśli utworzyłeś niestandardową usługę linku prywatnego, FQDN powinien kończyć się azurehdinsight.net bez prowadzenia privatelink w nazwie domeny podczas tworzenia prywatnego endpointu. Jeśli używasz privatelink w nazwie domeny, upewnij się, że jest ona ważna i możesz rozwiązać problem.

Ograniczenia dostępu w zarządzanej sieci wirtualnej z prywatnymi punktami końcowymi

Nie masz dostępu do każdego zasobu PaaS, gdy obie strony są dostępne na prywatnym łączu i prywatnym punkcie końcowym. Problem ten jest znanym ograniczeniem łącza prywatnego i prywatnych punktów końcowych.

Na przykład masz zarządzany prywatny punkt końcowy dla konta magazynu A. Dostęp do konta magazynu B można również uzyskać za pośrednictwem sieci publicznej w tej samej zarządzanej sieci wirtualnej. Jednak jeśli konto magazynu B ma prywatne połączenie końcowe z innej zarządzanej przez ciebie sieci wirtualnej lub sieci wirtualnej klienta, to nie można uzyskać dostępu do konta magazynu B w twojej zarządzanej sieci wirtualnej przez sieć publiczną.

Zobacz następujące samouczki: