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:
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.
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 irg
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
, fqdn
i 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.
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 poleceniaisolation_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 nazwieworkspace_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 jakopy_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.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.org wartość . |
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
Scenariusz: używanie przepływu monitów z usługą Azure OpenAI, bezpieczeństwem zawartości i usługą Azure AI Search
- 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:
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.
Włącz dostęp do sieci publicznej do obszaru roboczego. Aby uzyskać więcej informacji, zobacz Dostęp do sieci publicznej włączony.
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