Konfigurowanie zapory na potrzeby dostępu do zasobów obliczeniowych bezserwerowych

Uwaga

Jeśli skonfigurowano zapory magazynu przy użyciu identyfikatorów podsieci z dokumentacji usługi Azure Databricks przed 31 października 2023 r., usługa Databricks zaleca zaktualizowanie obszarów roboczych zgodnie z instrukcjami opisanymi w tym artykule lub przy użyciu prywatnego punktu końcowego. Jeśli zdecydujesz się nie aktualizować istniejących obszarów roboczych, będą nadal działać bez zmian.

W tym artykule opisano sposób konfigurowania zapory usługi Azure Storage dla bezserwerowych obliczeń przy użyciu interfejsu użytkownika konsoli konta usługi Azure Databricks. Możesz również użyć interfejsu API konfiguracji Połączenie ivity sieci.

Aby skonfigurować prywatny punkt końcowy na potrzeby bezserwerowego dostępu obliczeniowego, zobacz Konfigurowanie łączności prywatnej z bezserwerowych obliczeń.

Omówienie włączania zapory dla obliczeń bezserwerowych

Bezserwerowa łączność sieciowa jest zarządzana przy użyciu konfiguracji łączności sieciowej (NCC). Administratorzy konta tworzą kontrolery domeny w konsoli konta i kontroler sieci może być dołączony do co najmniej jednego obszaru roboczego

Kontroler sieci zawiera listę tożsamości sieciowych dla typu zasobu platformy Azure jako reguły domyślne. Gdy kontroler domeny jest dołączony do obszaru roboczego, bezserwerowe zasoby obliczeniowe w tym obszarze roboczym używają jednej z tych sieci do łączenia zasobu platformy Azure. Możesz zezwolić na wyświetlanie listy tych sieci w zaporze zasobów platformy Azure.

Włączanie zapory NCC jest obsługiwane tylko w przypadku bezserwerowych magazynów SQL dla zarządzanych źródeł danych. Nie jest obsługiwana z innych zasobów obliczeniowych na bezserwerowej płaszczyźnie obliczeniowej ani magazynu głównego obszaru roboczego (głównego systemu plików DBFS).

Aby uzyskać więcej informacji na temat kontrolerów sieci, zobacz Co to jest konfiguracja łączności sieciowej (NCC)?.

Wpływ na koszty dostępu do magazynu między regionami

W przypadku ruchu między regionami z bezserwerowych magazynów SQL usługi Azure Databricks (na przykład obszar roboczy znajduje się w regionie Wschodnie stany USA, a magazyn usługi ADLS znajduje się w regionie Europa Zachodnia), usługa Azure Databricks kieruje ruch przez usługę Azure NAT Gateway.

Ważne

Obecnie nie ma żadnych opłat za korzystanie z tej funkcji. W nowszej wersji mogą być naliczane opłaty za użycie. Aby uniknąć tych opłat, usługa Databricks zaleca utworzenie obszaru roboczego w tym samym regionie co magazyn.

Wymagania

  • Obszar roboczy musi znajdować się w planie Premium.

  • Musisz być administratorem konta usługi Azure Databricks.

  • Każdy kontroler domeny może być dołączony do maksymalnie 50 obszarów roboczych.

  • Każde konto usługi Azure Databricks może mieć maksymalnie 10 kontrolerów sieciowych na region.

    • Musisz mieć WRITE dostęp do reguł sieci konta usługi Azure Storage.

Krok 1. Tworzenie konfiguracji łączności sieciowej i kopiowanie identyfikatorów podsieci

Usługa Databricks zaleca udostępnianie kontrolerów sieciowych między obszarami roboczymi w tej samej jednostce biznesowej, a te współużytkują ten sam region i właściwości łączności. Jeśli na przykład niektóre obszary robocze używają zapory magazynu, a inne obszary robocze używają alternatywnego podejścia usługi Private Link, użyj oddzielnych kontrolerów sieciowych dla tych przypadków użycia.

  1. Jako administrator konta przejdź do konsoli konta.
  2. Na pasku bocznym kliknij pozycję Zasoby w chmurze.
  3. Kliknij pozycję Konfiguracja Połączenie ivity sieci.
  4. Kliknij pozycję Dodaj konfiguracje Połączenie ivity sieci.
  5. Wpisz nazwę kontrolera domeny.
  6. Wybierz region. Musi to być zgodne z regionem obszaru roboczego.
  7. Kliknij przycisk Dodaj.
  8. Na liście kontrolerów domeny kliknij nową kontroler sieci.
  9. W obszarze Reguły domyślne w obszarze Tożsamości sieciowe kliknij pozycję Wyświetl wszystko.
  10. W oknie dialogowym kliknij przycisk Kopiuj podsieci i zapisz listę podsieci .
  11. Kliknij przycisk Zamknij.

Krok 2. Dołączanie kontrolera domeny do obszarów roboczych

Kontroler domeny można dołączyć do maksymalnie 50 obszarów roboczych w tym samym regionie co ncC.

Aby użyć interfejsu API w celu dołączenia kontrolera domeny do obszaru roboczego, zobacz interfejs API obszarów roboczych konta.

  1. Na pasku bocznym konsoli konta kliknij pozycję Obszary robocze.
  2. Kliknij nazwę obszaru roboczego.
  3. Kliknij pozycję Aktualizuj obszar roboczy.
  4. W polu Network Połączenie ivity Config (Konfiguracja sieci) wybierz pozycję NCC. Jeśli nie jest widoczny, upewnij się, że wybrano ten sam region zarówno dla obszaru roboczego, jak i kontrolera domeny.
  5. Kliknij Aktualizuj.
  6. Poczekaj 10 minut na zastosowanie zmiany.
  7. Uruchom ponownie wszystkie uruchomione bezserwerowe magazyny SQL w obszarze roboczym.

Krok 3. Blokowanie konta magazynu

Jeśli nie masz jeszcze ograniczonego dostępu do konta usługi Azure Storage tylko do sieci dozwolonych, zrób to teraz. Utworzenie zapory magazynu wpływa również na łączność z klasycznej płaszczyzny obliczeniowej do zasobów. Należy również dodać reguły sieciowe, aby łączyć się z kontami magazynu z klasycznych zasobów obliczeniowych.

  1. Przejdź do portalu Azure Portal.
  2. Przejdź do konta magazynu dla źródła danych.
  3. W lewym okienku nawigacyjnym kliknij pozycję Sieć.
  4. W polu Dostęp do sieci publicznej sprawdź wartość. Domyślnie wartość jest włączona ze wszystkich sieci. Zmień tę opcję na Włączone z wybranych sieci wirtualnych i adresów IP.

Krok 4. Dodawanie reguł sieci konta usługi Azure Storage

  1. Dodaj jedną regułę sieciową konta usługi Azure Storage dla każdej podsieci. Można to zrobić przy użyciu interfejsu wiersza polecenia platformy Azure, programu PowerShell, programu Terraform lub innych narzędzi automatyzacji. Należy pamiętać, że nie można wykonać tego kroku w interfejsie użytkownika witryny Azure Portal.

    W następującym przykładzie używany jest interfejs wiersza polecenia platformy Azure:

    az storage account network-rule add --subscription "<sub>" \
        --resource-group "<res>" --account-name "<account>" --subnet "<subnet>"
    
    • Zastąp <sub> ciąg nazwą subskrypcji platformy Azure dla konta magazynu.
    • Zastąp <res> ciąg grupą zasobów konta magazynu.
    • Zastąp <account> ciąg nazwą konta magazynu
    • Zastąp <subnet> element identyfikatorem zasobu usługi ARM (resourceId) podsieci bezserwerowej usługi SQL Warehouse.

    Po uruchomieniu wszystkich poleceń możesz użyć witryny Azure Portal, aby wyświetlić konto magazynu i potwierdzić, że w tabeli Sieci wirtualne znajduje się wpis reprezentujący nową podsieć. Nie można jednak wprowadzać zmian reguł sieciowych w witrynie Azure Portal.

    Napiwek

    Zignoruj wzmiankę "Niewystarczające uprawnienia" w kolumnie stan punktu końcowego lub ostrzeżenie poniżej listy sieciowej. Wskazują one tylko, że nie masz uprawnień do odczytu podsieci usługi Azure Databricks, ale nie zakłóca to możliwości kontaktu z usługą Azure Storage bezserwerowej podsieci usługi Azure Databricks.

    Przykładowe nowe wpisy na liście sieci wirtualnych

  2. Powtórz to polecenie raz dla każdej podsieci. Opcjonalnie można zautomatyzować proces tworzenia reguły sieciowej. Zobacz Automatyzowanie tworzenia reguł sieci.

  3. Aby potwierdzić, że konto magazynu używa tych ustawień w witrynie Azure Portal, przejdź do obszaru Sieć na koncie magazynu.

    Upewnij się, że opcja Dostęp do sieci publicznej jest ustawiona na włączone z wybranych sieci wirtualnych i adresów IP oraz dozwolonych sieci, są wymienione w sekcji Sieci wirtualne.

Automatyzowanie tworzenia reguł sieci

Możesz zautomatyzować tworzenie reguł sieci dla konta magazynu.

W tym przykładzie użyto dwóch podsieci na liście, których można użyć z pętlą, aby uruchomić polecenie dla każdej podsieci. W tym przykładzie mystorage-rg jest to grupa zasobów i myaccount konto magazynu.

#!/bin/bash
SUBNETS=(/subscriptions/8453a5d5-9e9e-40c7-87a4-0ab4cc197f48/resourceGroups/prod-azure-eastusc3-nephos2/providers/Microsoft.Network/virtualNetworks/kaas-vnet/subnets/worker-subnet /subscriptions/8453a5d5-9e9e-40c7-87a4-0ab4cc197f48/resourceGroups/prod-azure-eastusc3-nephos3/providers/Microsoft.Network/virtualNetworks/kaas-vnet/subnets/worker-subnet)
for SUBNET in ${SUBNETS[@]}
do
  az storage account network-rule add --subscription 9999999-1ff3-43f4-b91e-d0ceb97111111 --resource-group mystorage-rg --account-name myaccount --subnet ${SUBNET}
done