Udostępnij za pośrednictwem


Izolacja zarządzanej sieci wirtualnej obszaru roboczego

DOTYCZY: Rozszerzenie interfejsu wiersza polecenia platformy Azure w wersji 2 (current)Zestaw PYTHON SDK azure-ai-ml v2 (bieżąca)

Usługa Azure Machine Learning zapewnia obsługę izolacji zarządzanej sieci wirtualnej (zarządzanej sieci wirtualnej). Izolacja zarządzanej sieci wirtualnej usprawnia i automatyzuje konfigurację izolacji sieci za pomocą wbudowanej sieci wirtualnej zarządzanej przez usługę Azure Machine Learning na poziomie obszaru roboczego. Zarządzana sieć wirtualna zabezpiecza zarządzane zasoby usługi Azure Machine Learning, takie jak wystąpienia obliczeniowe, klastry obliczeniowe, bezserwerowe obliczenia i zarządzane punkty końcowe online.

Zabezpieczanie obszaru roboczego za pomocą sieci zarządzanej zapewnia izolację sieci na potrzeby dostępu wychodzącego z obszaru roboczego i zarządzanych zasobów obliczeniowych. Utworzona sieć wirtualna platformy Azure i zarządzanie nią służy do zapewnienia dostępu przychodzącego izolacji sieci do obszaru roboczego. Na przykład prywatny punkt końcowy dla obszaru roboczego jest tworzony w usłudze Azure Virtual Network. Wszyscy klienci łączący się z siecią wirtualną mogą uzyskiwać dostęp do obszaru roboczego za pośrednictwem prywatnego punktu końcowego. W przypadku uruchamiania zadań na zarządzanych obliczeniach sieć zarządzana ogranicza dostęp do zasobów obliczeniowych.

Architektura zarządzanej sieci wirtualnej

Po włączeniu izolacji zarządzanej sieci wirtualnej dla obszaru roboczego zostanie utworzona zarządzana sieć wirtualna. Zarządzane zasoby obliczeniowe tworzone dla obszaru roboczego automatycznie używają tej zarządzanej sieci wirtualnej. Zarządzana sieć wirtualna może używać prywatnych punktów końcowych dla zasobów platformy Azure używanych przez obszar roboczy, takich jak Azure Storage, Azure Key Vault i Azure Container Registry.

Istnieją dwa różne tryby konfiguracji dla ruchu wychodzącego z zarządzanej sieci wirtualnej:

Napiwek

Niezależnie od używanego trybu ruchu wychodzącego można skonfigurować ruch do zasobów platformy Azure w celu korzystania z prywatnego punktu końcowego. Na przykład możesz zezwolić na cały ruch wychodzący do Internetu, ale ograniczyć komunikację z zasobami platformy Azure, dodając reguły ruchu wychodzącego dla zasobów.

Tryb wychodzący opis Scenariusze
Zezwalaj na ruch wychodzący z Internetu Zezwalaj na cały ruch wychodzący z zarządzanej sieci wirtualnej. Potrzebujesz nieograniczonego dostępu do zasobów uczenia maszynowego w Internecie, takich jak pakiety języka Python lub wstępnie wytrenowane modele.1
Zezwalaj tylko na zatwierdzony ruch wychodzący Ruch wychodzący jest dozwolony przez określenie tagów usługi. * Chcesz zminimalizować ryzyko eksfiltracji danych, ale musisz przygotować wszystkie wymagane artefakty uczenia maszynowego w środowisku prywatnym.
* Chcesz skonfigurować dostęp wychodzący do zatwierdzonej listy usług, tagów usług lub nazw FQDN.
Disabled Ruch przychodzący i wychodzący nie jest ograniczony lub używasz własnej sieci wirtualnej platformy Azure do ochrony zasobów. Chcesz, aby publiczny ruch przychodzący i wychodzący z obszaru roboczego lub obsługiwał izolację sieci z własną siecią wirtualną platformy Azure.

1: Możesz użyć reguł ruchu wychodzącego z dozwolonym tylko zatwierdzonym trybem ruchu wychodzącego, aby osiągnąć taki sam wynik, jak w przypadku zezwalania na ruch wychodzący z Internetu. Różnice są następujące:

  • Musisz dodać reguły dla każdego połączenia wychodzącego, które należy zezwolić.
  • Dodawanie reguł ruchu wychodzącego nazwy FQDN zwiększa koszty , ponieważ ten typ reguły używa usługi Azure Firewall. Aby uzyskać więcej informacji, zobacz Ceny
  • Domyślne reguły zezwalania tylko na zatwierdzone dane wychodzące zostały zaprojektowane tak, aby zminimalizować ryzyko eksfiltracji danych. Wszelkie dodane reguły ruchu wychodzącego mogą zwiększyć ryzyko.

Zarządzana sieć wirtualna jest wstępnie skonfigurowana z wymaganymi regułami domyślnymi. Jest ona również skonfigurowana dla połączeń prywatnych punktów końcowych z obszarem roboczym, domyślnym magazynem obszaru roboczego, rejestrem kontenerów i magazynem kluczy, jeśli są skonfigurowane jako prywatne lub tryb izolacji obszaru roboczego jest ustawiony tak, aby zezwalał tylko na zatwierdzony ruch wychodzący. Po wybraniu trybu izolacji należy wziąć pod uwagę tylko inne wymagania dotyczące ruchu wychodzącego, które mogą być konieczne.

Na poniższym diagramie przedstawiono zarządzaną sieć wirtualną skonfigurowaną do zezwalania na ruch wychodzący z Internetu:

Diagram izolacji zarządzanej sieci wirtualnej skonfigurowanej dla ruchu wychodzącego z Internetu.

Na poniższym diagramie przedstawiono zarządzaną sieć wirtualną skonfigurowaną do zezwalania tylko na zatwierdzone dane wychodzące:

Uwaga

W tej konfiguracji magazyn, magazyn kluczy i rejestr kontenerów używany przez obszar roboczy są oflagowane jako prywatne. Ponieważ są one oflagowane jako prywatne, prywatny punkt końcowy jest używany do komunikowania się z nimi.

Diagram izolacji zarządzanej sieci wirtualnej skonfigurowany do zezwalania tylko na zatwierdzone wychodzące.

Uwaga

Po skonfigurowaniu zarządzanego obszaru roboczego sieci wirtualnej w celu zezwalania na ruch wychodzący z Internetu nie można ponownie skonfigurować obszaru roboczego do wyłączenia. Podobnie po skonfigurowaniu zarządzanego obszaru roboczego sieci wirtualnej tak, aby zezwalał tylko na zatwierdzony ruch wychodzący, nie można ponownie skonfigurować obszaru roboczego, aby zezwolić na ruch wychodzący z Internetu. Pamiętaj o tym podczas wybierania trybu izolacji dla zarządzanej sieci wirtualnej w swoim obszarze roboczym.

Azure Machine Learning Studio

Jeśli chcesz użyć zintegrowanego notesu lub utworzyć zestawy danych na domyślnym koncie magazynu z poziomu programu Studio, klient musi mieć dostęp do domyślnego konta magazynu. Utwórz prywatny punkt końcowy lub punkt końcowy usługi dla domyślnego konta magazynu w sieci wirtualnej platformy Azure używanej przez klientów.

Część usługi Azure Machine Learning Studio działa lokalnie w przeglądarce internetowej klienta i komunikuje się bezpośrednio z domyślnym magazynem dla obszaru roboczego. Utworzenie prywatnego punktu końcowego lub punktu końcowego usługi (domyślnego konta magazynu) w sieci wirtualnej klienta gwarantuje, że klient może komunikować się z kontem magazynu.

Aby uzyskać więcej informacji na temat tworzenia prywatnego punktu końcowego lub punktu końcowego usługi, zobacz artykuły Connect privately to a storage account and Service Endpoints (Łączenie prywatnie z kontem magazynu i punktami końcowymi usługi).

Zabezpieczone skojarzone zasoby

Jeśli dodasz następujące usługi do sieci wirtualnej przy użyciu punktu końcowego usługi lub prywatnego punktu końcowego (wyłączając dostęp publiczny), zezwól zaufanym usługi firmy Microsoft na dostęp do tych usług:

Usługa Informacje o punkcie końcowym Zezwalaj na zaufane informacje
Azure Key Vault Prywatny punkt końcowy
usługi
Zezwalaj zaufanym usługi firmy Microsoft na obejście tej zapory
Konto magazynu platformy Azure Prywatny punkt końcowy usługi i prywatny punkt końcowy
Udzielanie dostępu z wystąpień zasobów platformy Azure lub
udzielanie dostępu do zaufanych usług platformy Azure
Azure Container Registry Prywatny punkt końcowy Zezwalaj na zaufane usługi

Wymagania wstępne

Przed wykonaniem kroków opisanych w tym artykule upewnij się, że masz następujące wymagania wstępne:

  • Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto. Wypróbuj bezpłatną lub płatną wersję usługi Azure Machine Learning.

  • Dostawca zasobów Microsoft.Network musi być zarejestrowany dla subskrypcji platformy Azure. Ten dostawca zasobów jest używany przez obszar roboczy podczas tworzenia prywatnych punktów końcowych dla zarządzanej sieci wirtualnej.

    Aby uzyskać informacje na temat rejestrowania dostawców zasobów, zobacz Rozwiązywanie błędów dotyczących rejestracji dostawcy zasobów.

  • Tożsamość platformy Azure używana podczas wdrażania sieci zarządzanej wymaga następujących akcji kontroli dostępu opartej na rolach (RBAC) platformy Azure w celu utworzenia prywatnych punktów końcowych:

    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/read
    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/write
  • Interfejs wiersza polecenia platformy ml Azure i rozszerzenie interfejsu wiersza polecenia platformy Azure. Aby uzyskać więcej informacji, zobacz Instalowanie, konfigurowanie i używanie interfejsu wiersza polecenia (wersja 2).

    Napiwek

    Zarządzana sieć wirtualna usługi Azure Machine Learning została wprowadzona 23 maja 2023 r. Jeśli masz starszą wersję rozszerzenia ml, może być konieczne zaktualizowanie go w celu uzyskania przykładów w tym artykule. Aby zaktualizować rozszerzenie, użyj następującego polecenia interfejsu wiersza polecenia platformy Azure:

    az extension update -n ml
    
  • W przykładach interfejsu wiersza polecenia w tym artykule założono, że używasz powłoki Bash (lub zgodnej). Na przykład z systemu Linux lub Podsystem Windows dla systemu Linux.

  • Przykłady interfejsu wiersza polecenia platformy Azure w tym artykule służą ws do reprezentowania nazwy obszaru roboczego i rg reprezentowania nazwy grupy zasobów. Zmień te wartości zgodnie z potrzebami podczas używania poleceń z subskrypcją platformy Azure.

Uwaga

Jeśli używasz obszaru roboczego interfejsu użytkownika, pamiętaj, aby dodać do tożsamości rolę Osoba zatwierdzająca połączenie sieciowe przedsiębiorstwa usługi Azure AI. Aby uzyskać więcej informacji, zobacz Tożsamość zarządzana przypisana przez użytkownika.

Konfigurowanie zarządzanej sieci wirtualnej w celu zezwolenia na ruch wychodzący z Internetu

Napiwek

Tworzenie zarządzanej sieci wirtualnej jest odroczone do momentu utworzenia zasobu obliczeniowego lub ręcznego uruchomienia aprowizacji. W przypadku zezwalania na automatyczne tworzenie może upłynąć około 30 minut, aby utworzyć pierwszy zasób obliczeniowy, ponieważ aprowizacja sieci może potrwać około 30 minut . Aby uzyskać więcej informacji, zobacz Ręczne aprowizuj sieć.

Ważne

Jeśli planujesz przesyłanie bezserwerowych zadań platformy Spark, musisz ręcznie rozpocząć aprowizację. Aby uzyskać więcej informacji, zobacz sekcję Konfigurowanie zadań platformy Spark bezserwerowych .

Aby skonfigurować zarządzaną sieć wirtualną zezwalającą na komunikację wychodzącą z Internetu, możesz użyć parametru --managed-network allow_internet_outbound lub pliku konfiguracji YAML zawierającego następujące wpisy:

managed_network:
  isolation_mode: allow_internet_outbound

Możesz również zdefiniować reguły ruchu wychodzącego do innych usług platformy Azure, na których opiera się obszar roboczy. Te reguły definiują prywatne punkty końcowe, które umożliwiają zasobowi platformy Azure bezpieczną komunikację z zarządzaną siecią wirtualną. Poniższa reguła pokazuje dodawanie prywatnego punktu końcowego do zasobu obiektu blob platformy 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

Zarządzaną sieć wirtualną można skonfigurować przy użyciu az ml workspace create poleceń lub az ml workspace update :

  • Utwórz nowy obszar roboczy:

    Poniższy przykład tworzy nowy obszar roboczy. Parametr --managed-network allow_internet_outbound konfiguruje zarządzaną sieć wirtualną dla obszaru roboczego:

    az ml workspace create --name ws --resource-group rg --managed-network allow_internet_outbound
    

    Aby utworzyć obszar roboczy przy użyciu pliku YAML, użyj parametru --file i określ plik YAML zawierający ustawienia konfiguracji:

    az ml workspace create --file workspace.yaml --resource-group rg --name ws
    

    Poniższy przykład YAML definiuje obszar roboczy z zarządzaną siecią wirtualną:

    name: myworkspace
    location: EastUS
    managed_network:
      isolation_mode: allow_internet_outbound
    
  • Aktualizowanie istniejącego obszaru roboczego:

    Ostrzeżenie

    Przed zaktualizowaniem istniejącego obszaru roboczego w celu korzystania z zarządzanej sieci wirtualnej należy usunąć wszystkie zasoby obliczeniowe dla obszaru roboczego. Obejmuje to wystąpienie obliczeniowe, klaster obliczeniowy i zarządzane punkty końcowe online.

    Poniższy przykład aktualizuje istniejący obszar roboczy. Parametr --managed-network allow_internet_outbound konfiguruje zarządzaną sieć wirtualną dla obszaru roboczego:

    az ml workspace update --name ws --resource-group rg --managed-network allow_internet_outbound
    

    Aby zaktualizować istniejący obszar roboczy przy użyciu pliku YAML, użyj parametru --file i określ plik YAML zawierający ustawienia konfiguracji:

    az ml workspace update --file workspace.yaml --name ws --resource-group MyGroup
    

    Poniższy przykład YAML definiuje zarządzaną sieć wirtualną dla obszaru roboczego. Przedstawiono również sposób dodawania połączenia prywatnego punktu końcowego do zasobu używanego przez obszar roboczy; w tym przykładzie prywatny punkt końcowy magazynu obiektów 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
    

Konfigurowanie zarządzanej sieci wirtualnej tak, aby zezwalała tylko na zatwierdzony ruch wychodzący

Napiwek

Zarządzana sieć wirtualna jest automatycznie aprowizowana podczas tworzenia zasobu obliczeniowego. W przypadku zezwalania na automatyczne tworzenie może upłynąć około 30 minut, aby utworzyć pierwszy zasób obliczeniowy, ponieważ aprowizacja sieci może potrwać około 30 minut . Jeśli skonfigurowano reguły ruchu wychodzącego nazwy FQDN, pierwsza reguła FQDN dodaje około 10 minut do czasu aprowizacji. Aby uzyskać więcej informacji, zobacz Ręczne aprowizuj sieć.

Ważne

Jeśli planujesz przesyłanie bezserwerowych zadań platformy Spark, musisz ręcznie rozpocząć aprowizację. Aby uzyskać więcej informacji, zobacz sekcję Konfigurowanie zadań platformy Spark bezserwerowych .

Aby skonfigurować zarządzaną sieć wirtualną zezwalającą tylko na zatwierdzoną komunikację wychodzącą, można użyć parametru --managed-network allow_only_approved_outbound lub pliku konfiguracji YAML zawierającego następujące wpisy:

managed_network:
  isolation_mode: allow_only_approved_outbound

Można również zdefiniować reguły ruchu wychodzącego, aby zdefiniować zatwierdzoną komunikację wychodzącą. Regułę ruchu wychodzącego można utworzyć dla typu service_tag, fqdni private_endpoint. Poniższa reguła pokazuje dodawanie prywatnego punktu końcowego do zasobu obiektu blob platformy Azure, tagu usługi do usługi Azure Data Factory i nazwy FQDN do :pypi.org

Ważne

  • Dodanie ruchu wychodzącego dla tagu usługi lub nazwy FQDN jest prawidłowe tylko wtedy, gdy zarządzana sieć wirtualna jest skonfigurowana na wartość allow_only_approved_outbound.
  • Jeśli dodasz reguły ruchu wychodzącego, firma Microsoft nie może zagwarantować eksfiltracji danych.

Ostrzeżenie

Reguły ruchu wychodzącego nazwy FQDN są implementowane przy użyciu usługi Azure Firewall. Jeśli używasz reguł nazwy FQDN dla ruchu wychodzącego, opłaty za usługę Azure Firewall zostaną dodane do rozliczeń. Aby uzyskać więcej informacji, zobacz Cennik.

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

Zarządzaną sieć wirtualną można skonfigurować przy użyciu az ml workspace create poleceń lub az ml workspace update :

  • Utwórz nowy obszar roboczy:

    W poniższym przykładzie użyto parametru --managed-network allow_only_approved_outbound do skonfigurowania zarządzanej sieci wirtualnej:

    az ml workspace create --name ws --resource-group rg --managed-network allow_only_approved_outbound
    

    Poniższy plik YAML definiuje obszar roboczy z zarządzaną siecią wirtualną:

    name: myworkspace
    location: EastUS
    managed_network:
      isolation_mode: allow_only_approved_outbound
    

    Aby utworzyć obszar roboczy przy użyciu pliku YAML, użyj parametru --file :

    az ml workspace create --file workspace.yaml --resource-group rg --name ws
    
  • Aktualizowanie istniejącego obszaru roboczego

    Ostrzeżenie

    Przed zaktualizowaniem istniejącego obszaru roboczego w celu korzystania z zarządzanej sieci wirtualnej należy usunąć wszystkie zasoby obliczeniowe dla obszaru roboczego. Obejmuje to wystąpienie obliczeniowe, klaster obliczeniowy i zarządzane punkty końcowe online.

    W poniższym przykładzie użyto parametru --managed-network allow_only_approved_outbound do skonfigurowania zarządzanej sieci wirtualnej dla istniejącego obszaru roboczego:

    az ml workspace update --name ws --resource-group rg --managed-network allow_only_approved_outbound
    

    Poniższy plik YAML definiuje zarządzaną sieć wirtualną dla obszaru roboczego. Przedstawiono również sposób dodawania zatwierdzonego ruchu wychodzącego do zarządzanej sieci wirtualnej. W tym przykładzie dla tagu usługi jest dodawana reguła ruchu wychodzącego:

    Ostrzeżenie

    Reguły ruchu wychodzącego nazwy FQDN są implementowane przy użyciu usługi Azure Firewall. Jeśli używasz reguł nazwy FQDN dla ruchu wychodzącego, opłaty za usługę Azure Firewall zostaną dodane do rozliczeń. Aby uzyskać więcej informacji, zobacz Cennik.

    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
    

Konfigurowanie dla zadań platformy Spark bezserwerowych

Napiwek

Kroki opisane w tej sekcji są wymagane tylko w przypadku planowania przesyłania bezserwerowych zadań platformy Spark. Jeśli nie zamierzasz przesyłać bezserwerowych zadań platformy Spark, możesz pominąć tę sekcję.

Aby włączyć bezserwerowe zadania platformy Spark dla zarządzanej sieci wirtualnej, należy wykonać następujące czynności:

  • Skonfiguruj zarządzaną sieć wirtualną dla obszaru roboczego i dodaj wychodzący prywatny punkt końcowy dla konta usługi Azure Storage.
  • Po skonfigurowaniu zarządzanej sieci wirtualnej aprowizacja i flaga zezwala na zadania platformy Spark.
  1. Skonfiguruj wychodzący prywatny punkt końcowy.

    Użyj pliku YAML, aby zdefiniować konfigurację zarządzanej sieci wirtualnej i dodać prywatny punkt końcowy dla konta usługi Azure Storage. Ustaw również :spark_enabled: true

    Napiwek

    Ten przykład dotyczy zarządzanej sieci wirtualnej skonfigurowanej przy użyciu funkcji isolation_mode: allow_internet_outbound zezwalania na ruch internetowy. Jeśli chcesz zezwolić tylko na zatwierdzony ruch wychodzący, użyj polecenia isolation_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
    

    Możesz użyć pliku konfiguracji YAML z az ml workspace update poleceniem, określając --file parametr i nazwę pliku YAML. Na przykład następujące polecenie aktualizuje istniejący obszar roboczy przy użyciu pliku YAML o nazwie workspace_pe.yml:

    az ml workspace update --file workspace_pe.yml --resource_group rg --name ws
    

    Uwaga

    Po włączeniu opcji Zezwalaj tylko zatwierdzony ruch wychodzący (isolation_mode: allow_only_approved_outbound) zależności pakietów conda zdefiniowane w konfiguracji sesji platformy Spark nie zostaną zainstalowane. Aby rozwiązać ten problem, przekaż samodzielne koło pakietów języka Python bez zależności zewnętrznych do konta usługi Azure Storage i utwórz prywatny punkt końcowy na to konto magazynu. Użyj ścieżki do koła pakietów języka Python jako py_files parametru w zadaniu platformy Spark. Ustawienie reguły ruchu wychodzącego nazwy FQDN nie spowoduje obejścia tego problemu, ponieważ propagacja reguły nazwy FQDN nie jest obsługiwana przez platformę Spark.

  2. Aprowizuj zarządzaną sieć wirtualną.

    Uwaga

    Jeśli obszar roboczy jest już skonfigurowany dla publicznego punktu końcowego (na przykład z usługą Azure Virtual Network) i ma włączony dostęp do sieci publicznej, należy go wyłączyć przed aprowizowaniem zarządzanej sieci wirtualnej. Jeśli nie wyłączysz dostępu do sieci publicznej podczas aprowizacji zarządzanej sieci wirtualnej, prywatne punkty końcowe zarządzanego punktu końcowego mogą nie zostać pomyślnie utworzone.

    W poniższym przykładzie pokazano, jak aprowizować zarządzaną sieć wirtualną dla zadań bezserwerowych platformy Spark przy użyciu parametru --include-spark .

    az ml workspace provision-network -g my_resource_group -n my_workspace_name --include-spark
    

Ręczne aprowizuj zarządzaną sieć wirtualną

Zarządzana sieć wirtualna jest automatycznie aprowizowana podczas tworzenia wystąpienia obliczeniowego. W przypadku automatycznej aprowizacji tworzenie pierwszego wystąpienia obliczeniowego może potrwać około 30 minut, ponieważ aprowizacja sieci jest również zajęła około 30 minut . Jeśli skonfigurowano reguły ruchu wychodzącego nazwy FQDN (dostępne tylko z trybem zezwalania tylko na zatwierdzenie), pierwsza reguła nazwy FQDN dodaje około 10 minut do czasu aprowizacji. Jeśli masz duży zestaw reguł ruchu wychodzącego do aprowizacji w sieci zarządzanej, ukończenie aprowizacji może potrwać dłużej. Zwiększony czas aprowizacji może spowodować przekroczenie limitu czasu utworzenia pierwszego wystąpienia obliczeniowego.

Aby skrócić czas oczekiwania i uniknąć potencjalnych błędów przekroczenia limitu czasu, zalecamy ręczne aprowizowanie sieci zarządzanej. Następnie poczekaj na zakończenie aprowizacji przed utworzeniem wystąpienia obliczeniowego.

Uwaga

Aby utworzyć wdrożenie online, musisz ręcznie aprowizować sieć zarządzaną lub najpierw utworzyć wystąpienie obliczeniowe, które będzie automatycznie aprowizować.

W poniższym przykładzie pokazano, jak aprowizować zarządzaną sieć wirtualną.

Napiwek

Jeśli planujesz przesłać zadania platformy Spark bezserwerowe, dodaj --include-spark parametr .

az ml workspace provision-network -g my_resource_group -n my_workspace_name

Aby sprawdzić, czy aprowizacja została ukończona, użyj następującego polecenia:

az ml workspace show -n my_workspace_name -g my_resource_group --query managed_network

Konfigurowanie kompilacji obrazu

Gdy usługa Azure Container Registry dla obszaru roboczego znajduje się za siecią wirtualną, nie można jej używać do bezpośredniego kompilowania obrazów platformy Docker. Zamiast tego skonfiguruj obszar roboczy tak, aby używał klastra obliczeniowego lub wystąpienia obliczeniowego do kompilowania obrazów.

Ważne

Zasób obliczeniowy używany do tworzenia obrazów platformy Docker musi mieć dostęp do repozytoriów pakietów używanych do trenowania i wdrażania modeli. Jeśli używasz sieci skonfigurowanej do zezwalania tylko na zatwierdzone wychodzące, może być konieczne dodanie reguł zezwalających na dostęp do publicznych repozytoriów lub używanie prywatnych pakietów języka Python.

Aby zaktualizować obszar roboczy do tworzenia obrazów platformy Docker przy użyciu klastra obliczeniowego lub wystąpienia obliczeniowego, użyj az ml workspace update polecenia z parametrem --image-build-compute :

az ml workspace update --name ws --resource-group rg --image-build-compute mycompute

Zarządzanie regułami ruchu wychodzącego

Aby wyświetlić listę zarządzanych reguł ruchu wychodzącego sieci wirtualnej dla obszaru roboczego, użyj następującego polecenia:

az ml workspace outbound-rule list --workspace-name ws --resource-group rg

Aby wyświetlić szczegóły reguły ruchu wychodzącego zarządzanej sieci wirtualnej, użyj następującego polecenia:

az ml workspace outbound-rule show --rule rule-name --workspace-name ws --resource-group rg

Aby usunąć regułę ruchu wychodzącego z zarządzanej sieci wirtualnej, użyj następującego polecenia:

az ml workspace outbound-rule remove --rule rule-name --workspace-name ws --resource-group rg

Lista wymaganych reguł

Napiwek

Te reguły są automatycznie dodawane do zarządzanej sieci wirtualnej.

Prywatne punkty końcowe:

  • Gdy tryb izolacji zarządzanej sieci wirtualnej to Allow internet outbound, reguły ruchu wychodzącego prywatnego punktu końcowego są tworzone automatycznie jako wymagane reguły z zarządzanej sieci wirtualnej dla obszaru roboczego i skojarzonych zasobów z wyłączonym dostępem do sieci publicznej (usługa Key Vault, konto magazynu, rejestr kontenerów, obszar roboczy usługi Azure Machine Learning).
  • Gdy tryb izolacji zarządzanej sieci wirtualnej to Allow only approved outbound, reguły ruchu wychodzącego prywatnego punktu końcowego są tworzone automatycznie jako wymagane reguły z zarządzanej sieci wirtualnej dla obszaru roboczego i skojarzonych zasobów niezależnie od trybu dostępu do sieci publicznej dla tych zasobów (usługa Key Vault, konto magazynu, rejestr kontenerów, obszar roboczy usługi Azure Machine Learning).

Reguły tagów usługi dla ruchu wychodzącego :

  • AzureActiveDirectory
  • AzureMachineLearning
  • BatchNodeManagement.region
  • AzureResourceManager
  • AzureFrontDoor.FirstParty
  • MicrosoftContainerRegistry
  • AzureMonitor

Reguły tagów usługi dla ruchu przychodzącego :

  • AzureMachineLearning

Lista reguł ruchu wychodzącego specyficznego dla scenariusza

Scenariusz: Uzyskiwanie dostępu do publicznych pakietów uczenia maszynowego

Aby umożliwić instalację pakietów języka Python na potrzeby trenowania i wdrażania, dodaj reguły wychodzącej nazwy FQDN, aby zezwolić na ruch do następujących nazw hostów:

Ostrzeżenie

Reguły ruchu wychodzącego nazwy FQDN są implementowane przy użyciu usługi Azure Firewall. Jeśli używasz reguł nazwy FQDN dla ruchu wychodzącego, opłaty za usługę Azure Firewall zostaną dodane do rozliczeń. Aby uzyskać więcej informacji, zobacz Cennik.

Uwaga

Nie jest to pełna lista hostów wymaganych dla wszystkich zasobów języka Python w Internecie, tylko najczęściej używanych. Jeśli na przykład potrzebujesz dostępu do repozytorium GitHub lub innego hosta, musisz zidentyfikować i dodać hosty wymagane dla tego scenariusza.

Nazwa hosta Przeznaczenie
anaconda.com
*.anaconda.com
Służy do instalowania pakietów domyślnych.
*.anaconda.org Służy do pobierania danych repozytorium.
pypi.org Służy do wyświetlania listy zależności z domyślnego indeksu, jeśli istnieje, a indeks nie jest zastępowany przez ustawienia użytkownika. Jeśli indeks jest zastępowany, należy również zezwolić na *.pythonhosted.orgwartość .
pytorch.org
*.pytorch.org
Używane przez niektóre przykłady na podstawie PyTorch.
*.tensorflow.org Używane przez niektóre przykłady na podstawie biblioteki Tensorflow.

Scenariusz: używanie pulpitu lub sieci Web programu Visual Studio Code z wystąpieniem obliczeniowym

Jeśli planujesz używać programu Visual Studio Code z usługą Azure Machine Learning, dodaj reguły wychodzącej nazwy FQDN , aby zezwolić na ruch do następujących hostów:

Ostrzeżenie

Reguły ruchu wychodzącego nazwy FQDN są implementowane przy użyciu usługi Azure Firewall. Jeśli używasz reguł nazwy FQDN dla ruchu wychodzącego, opłaty za usługę Azure Firewall zostaną dodane do rozliczeń. Aby uzyskać więcej informacji, zobacz Cennik.

  • *.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

Scenariusz: Używanie punktów końcowych wsadowych lub ParallelRunStep

Jeśli planujesz używać punktów końcowych wsadowych usługi Azure Machine Learning do wdrożenia lub ParallelRunStep, dodaj reguły wychodzących prywatnych punktów końcowych, aby zezwolić na ruch do następujących zasobów podrzędnych dla domyślnego konta magazynu:

  • queue
  • table
  • Prywatny punkt końcowy do usług Azure AI
  • Prywatny punkt końcowy do usługi Azure AI Search

Scenariusz: korzystanie z modeli HuggingFace

Jeśli planujesz używać modeli HuggingFace z usługą Azure Machine Learning, dodaj reguły nazw FQDN dla ruchu wychodzącego, aby zezwolić na ruch do następujących hostów:

Ostrzeżenie

Reguły ruchu wychodzącego nazwy FQDN są implementowane przy użyciu usługi Azure Firewall. Jeśli używasz reguł nazwy FQDN dla ruchu wychodzącego, opłaty za usługę Azure Firewall zostaną dodane do rozliczeń. Aby uzyskać więcej informacji, zobacz Cennik.

  • docker.io
  • *.docker.io
  • *.docker.com
  • production.cloudflare.docker.com
  • cdn.auth0.com
  • cdn-lfs.huggingface.co

Scenariusz: Włączanie dostępu z wybranych adresów IP

Jeśli chcesz włączyć dostęp z określonych adresów IP, użyj następujących akcji:

  1. Dodaj regułę wychodzącego prywatnego punktu końcowego , aby zezwolić na ruch do obszaru roboczego usługi Azure Machine Learning. Umożliwia to wystąpieniom obliczeniowym utworzonym w zarządzanej sieci wirtualnej dostęp do obszaru roboczego.

    Napiwek

    Nie można dodać tej reguły podczas tworzenia obszaru roboczego, ponieważ obszar roboczy jeszcze nie istnieje.

  2. Włącz dostęp do sieci publicznej do obszaru roboczego. Aby uzyskać więcej informacji, zobacz Dostęp do sieci publicznej włączony.

  3. Dodaj swoje adresy IP do zapory dla usługi Azure Machine Learning. Aby uzyskać więcej informacji, zobacz Włączanie dostępu tylko z zakresów adresów IP.

    Uwaga

    Obsługiwane są tylko adresy IPv4.

Prywatne punkty końcowe

Prywatne punkty końcowe są obecnie obsługiwane dla następujących usług platformy Azure:

  • Azure Machine Learning
  • Rejestry usługi Azure Machine Learning
  • Azure Storage (wszystkie podtypy zasobów)
  • Azure Container Registry
  • Azure Key Vault
  • Usługi platformy Azure AI
  • Azure AI Search (dawniej Cognitive Search)
  • Azure SQL Server
  • Azure Data Factory
  • Azure Cosmos DB (wszystkie podtypy zasobów)
  • Azure Event Hubs
  • Azure Redis Cache
  • Azure Databricks
  • Azure Database for MariaDB
  • Pojedynczy serwer usługi Azure Database for PostgreSQL
  • Serwer elastyczny usługi Azure Database for PostgreSQL
  • Azure Database for MySQL
  • Usługa Azure API Management

Podczas tworzenia prywatnego punktu końcowego należy podać typ zasobu i podźródło , z którym łączy się punkt końcowy. Niektóre zasoby mają wiele typów i podźródła. Aby uzyskać więcej informacji, zobacz , co to jest prywatny punkt końcowy.

Podczas tworzenia prywatnego punktu końcowego dla zasobów zależności usługi Azure Machine Learning, takich jak Azure Storage, Azure Container Registry i Azure Key Vault, zasób może znajdować się w innej subskrypcji platformy Azure. Jednak zasób musi znajdować się w tej samej dzierżawie co obszar roboczy usługi Azure Machine Learning.

Ważne

Podczas konfigurowania prywatnych punktów końcowych dla zarządzanej sieci wirtualnej usługi Azure Machine Learning prywatne punkty końcowe są tworzone tylko podczas tworzenia pierwszego obliczenia lub wymuszania zarządzanej aprowizacji sieci wirtualnej. Aby uzyskać więcej informacji na temat wymuszania aprowizacji zarządzanej sieci wirtualnej, zobacz Konfigurowanie zadań platformy Spark bezserwerowych.

Cennik

Funkcja zarządzanej sieci wirtualnej usługi Azure Machine Learning jest bezpłatna. Opłaty są jednak naliczane za następujące zasoby, które są używane przez zarządzaną sieć wirtualną:

  • Azure Private Link — prywatne punkty końcowe używane do zabezpieczania komunikacji między zarządzaną siecią wirtualną a zasobami platformy Azure korzystają z usługi Azure Private Link. Aby uzyskać więcej informacji na temat cen, zobacz Cennik usługi Azure Private Link.

  • Reguły ruchu wychodzącego nazwy FQDN — reguły ruchu wychodzącego nazwy FQDN są implementowane przy użyciu usługi Azure Firewall. Jeśli używasz reguł nazwy FQDN dla ruchu wychodzącego, opłaty za usługę Azure Firewall zostaną dodane do rozliczeń. Usługa Azure Firewall (standardowa jednostka SKU) jest aprowizowana przez usługę Azure Machine Learning.

    Ważne

    Zapora nie zostanie utworzona do momentu dodania reguły FQDN ruchu wychodzącego. Aby uzyskać więcej informacji na temat cen, zobacz Cennik usługi Azure Firewall i wyświetl ceny dla wersji standardowej.

Ograniczenia

  • Usługa Azure AI Studio nie obsługuje używania własnej sieci wirtualnej platformy Azure do zabezpieczania centrum, projektu ani zasobów obliczeniowych. Za pomocą funkcji sieci zarządzanej można zabezpieczyć te zasoby tylko za pomocą funkcji sieci zarządzanej.
  • Po włączeniu izolacji zarządzanej sieci wirtualnej obszaru roboczego (zezwalaj na ruch wychodzący z Internetu lub zezwalaj tylko na zatwierdzony ruch wychodzący) nie można go wyłączyć.
  • Zarządzana sieć wirtualna używa połączenia prywatnego punktu końcowego w celu uzyskania dostępu do twoich zasobów prywatnych. Nie możesz mieć prywatnego punktu końcowego i punktu końcowego usługi w tym samym czasie dla zasobów platformy Azure, takich jak konto magazynu. Zalecamy używanie prywatnych punktów końcowych we wszystkich scenariuszach.
  • Zarządzana sieć wirtualna jest usuwana po usunięciu obszaru roboczego.
  • Ochrona przed eksfiltracją danych jest automatycznie włączona dla tylko zatwierdzonego trybu ruchu wychodzącego. Jeśli dodasz inne reguły ruchu wychodzącego, takie jak do nazw FQDN, to firma Microsoft nie będzie mogła zagwarantować ochrony przed eksfiltracją danych do celów ruchu wychodzącego.
  • Tworzenie klastra obliczeniowego w innym regionie niż obszar roboczy nie jest obsługiwane podczas korzystania z zarządzanej sieci wirtualnej.
  • Platforma Kubernetes i dołączone maszyny wirtualne nie są obsługiwane w zarządzanej sieci wirtualnej rozwiązania Azure Machine Learning.
  • Korzystanie z reguł ruchu wychodzącego FQDN zwiększa koszt zarządzanej sieci wirtualnej, ponieważ reguły FQDN korzystają z usługi Azure Firewall. Aby uzyskać więcej informacji, zobacz Cennik.
  • Reguły ruchu wychodzącego FQDN obsługują tylko porty 80 i 443.
  • Jeśli wystąpienie obliczeniowe znajduje się w sieci zarządzanej i nie ma skonfigurowanego publicznego adresu IP, użyj polecenia az ml compute connect-ssh, aby nawiązać z nim połączenie przy użyciu protokołu SSH.
  • W przypadku korzystania z zarządzanej sieci wirtualnej nie możesz wdrażać zasobów obliczeniowych w niestandardowej sieci wirtualnej. Zasoby obliczeniowe można tworzyć tylko w zarządzanej sieci wirtualnej.
  • Zarządzana izolacja sieci nie może ustanowić połączenia prywatnego z zarządzanej sieci wirtualnej do zasobów lokalnych użytkownika. Aby uzyskać listę obsługiwanych połączeń prywatnych, zobacz Prywatne punkty końcowe.
  • Jeśli sieć zarządzana jest skonfigurowana tak, aby zezwalała tylko na zatwierdzony ruch wychodzący, nie można użyć reguły FQDN w celu uzyskania dostępu do kont usługi Azure Storage. Zamiast tego należy użyć prywatnego punktu końcowego.

Migracja zasobów obliczeniowych

Jeśli masz istniejący obszar roboczy i chcesz włączyć zarządzaną sieć wirtualną, obecnie nie ma obsługiwanej ścieżki migracji dla istniejących zarządzanych zasobów obliczeniowych. Należy usunąć wszystkie istniejące zarządzane zasoby obliczeniowe i utworzyć je ponownie po włączeniu zarządzanej sieci wirtualnej. Poniższa lista zawiera zasoby obliczeniowe, które należy usunąć i utworzyć ponownie:

  • Klaster obliczeniowy
  • Wystąpienie obliczeniowe
  • Zarządzane punkty końcowe online

Następne kroki