Zabezpieczanie środowiska szkoleniowego usługi Azure Machine Edukacja za pomocą sieci wirtualnych (SDKv1)

DOTYCZY: Zestaw SDK języka Python azureml w wersji 1

Z tego artykułu dowiesz się, jak zabezpieczyć środowiska szkoleniowe za pomocą sieci wirtualnej w usłudze Azure Machine Edukacja przy użyciu zestawu SDK języka Python w wersji 1.

Za pomocą usługi Azure Machine Edukacja wystąpienia obliczeniowego i klastra obliczeniowego można bezpiecznie trenować modele w sieci wirtualnej. Podczas planowania środowiska można skonfigurować wystąpienie obliczeniowe/klaster z publicznym adresem IP lub bez tego adresu. Ogólne różnice między nimi są następujące:

  • Brak publicznego adresu IP: zmniejsza koszty, ponieważ nie ma tych samych wymagań dotyczących zasobów sieciowych. Zwiększa bezpieczeństwo, usuwając wymóg ruchu przychodzącego z Internetu. Istnieją jednak dodatkowe zmiany konfiguracji wymagane do włączenia dostępu wychodzącego do wymaganych zasobów (identyfikator entra firmy Microsoft, usługa Azure Resource Manager itp.).
  • Publiczny adres IP: działa domyślnie, ale kosztuje więcej ze względu na dodatkowe zasoby sieciowe platformy Azure. Wymaga komunikacji przychodzącej z usługi Azure Machine Edukacja za pośrednictwem publicznego Internetu.

Poniższa tabela zawiera różnice między tymi konfiguracjami:

Konfigurowanie Z publicznym adresem IP Bez publicznego adresu IP
Ruch przychodzący AzureMachineLearning tag usługi. Brak
Ruch wychodzący Domyślnie dostęp do publicznego Internetu nie ma żadnych ograniczeń.
Możesz ograniczyć dostęp do tych elementów przy użyciu sieciowej grupy zabezpieczeń lub zapory.
Domyślnie nie może uzyskać dostępu do Internetu. Jeśli nadal może wysyłać ruch wychodzący do Internetu, wynika to z domyślnego dostępu wychodzącego platformy Azure i masz sieciową grupę zabezpieczeń, która zezwala na ruch wychodzący do Internetu. Nie zalecamy używania domyślnego dostępu wychodzącego.
Jeśli potrzebujesz dostępu wychodzącego do Internetu, zalecamy użycie bramy translatora adresów sieci wirtualnej lub zapory, jeśli musisz kierować ruch wychodzący do wymaganych zasobów w Internecie.
Zasoby sieciowe platformy Azure Publiczny adres IP, moduł równoważenia obciążenia, interfejs sieciowy Brak

Możesz również użyć usługi Azure Databricks lub HDInsight do trenowania modeli w sieci wirtualnej.

Napiwek

Firma Microsoft zaleca korzystanie z usługi Azure Machine Edukacja zarządzanych sieci wirtualnych zamiast kroków opisanych w tym artykule. W przypadku zarządzanej sieci wirtualnej usługa Azure Machine Edukacja obsługuje zadanie izolacji sieci dla obszaru roboczego i zarządzanych zasobów obliczeniowych. Możesz również dodać prywatne punkty końcowe dla zasobów wymaganych przez obszar roboczy, na przykład konto usługi Azure Storage. Aby uzyskać więcej informacji, zobacz Obszar roboczy zarządzana izolacja sieci.

Uwaga

Aby uzyskać informacje na temat korzystania z programu Azure Machine Edukacja Studio i zestawu PYTHON SDK w wersji 2, zobacz Bezpieczne środowisko trenowania (wersja 2).

Aby zapoznać się z samouczkiem dotyczącym tworzenia bezpiecznego obszaru roboczego, zobacz Samouczek: tworzenie bezpiecznego obszaru roboczego w witrynie Azure Portal lub Samouczek: tworzenie bezpiecznego obszaru roboczego przy użyciu szablonu.

Z tego artykułu dowiesz się, jak zabezpieczyć następujące szkoleniowe zasoby obliczeniowe w sieci wirtualnej:

  • Klaster obliczeniowy usługi Azure Machine Edukacja
  • Wystąpienie obliczeniowe usługi Azure Machine Learning
  • Azure Databricks
  • Maszyna wirtualna
  • Klaster usługi HDInsight

Ważne

Elementy w tym artykule oznaczone jako "wersja zapoznawcza" są obecnie dostępne w publicznej wersji zapoznawczej. Wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone. Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.

Wymagania wstępne

  • Przeczytaj artykuł Omówienie zabezpieczeń sieci, aby poznać typowe scenariusze sieci wirtualnej i ogólną architekturę sieci wirtualnej.

  • Istniejąca sieć wirtualna i podsieć do użycia z zasobami obliczeniowymi. Ta sieć wirtualna musi należeć do tej samej subskrypcji co obszar roboczy usługi Azure Machine Edukacja.

    • Zalecamy umieszczenie kont magazynu używanych przez obszar roboczy i zadania szkoleniowe w tym samym regionie świadczenia usługi Azure, który ma być używany dla wystąpień obliczeniowych i klastrów. Jeśli nie są one w tym samym regionie świadczenia usługi Azure, możesz ponieść koszty transferu danych i zwiększyć opóźnienie sieci.
    • Upewnij się, że w Twojej sieci wirtualnej jest dozwolona komunikacja za pośrednictwem protokołu WebSocket do *.instances.azureml.net i *.instances.azureml.ms. Elementy WebSocket są używane przez program Jupyter w wystąpieniach obliczeniowych.
  • Istniejąca podsieć w sieci wirtualnej. Ta podsieć jest używana podczas tworzenia wystąpień obliczeniowych i klastrów.

    • Upewnij się, że podsieć nie jest delegowana do innych usług platformy Azure.
    • Upewnij się, że podsieć zawiera wystarczającą ilość wolnych adresów IP. Każde wystąpienie obliczeniowe wymaga jednego adresu IP. Każdy węzeł w klastrze obliczeniowym wymaga jednego adresu IP.
  • Jeśli masz własny serwer DNS, zalecamy używanie przekazywania DNS w celu rozpoznawania w pełni kwalifikowanych nazw domen (FQDN) wystąpień obliczeniowych i klastrów. Aby uzyskać więcej informacji, zobacz Use a custom DNS with Azure Machine Edukacja (Używanie niestandardowego systemu DNS z usługą Azure Machine Edukacja).

  • Aby wdrożyć zasoby w sieci wirtualnej lub podsieci, konto użytkownika musi mieć uprawnienia do następujących akcji w kontroli dostępu opartej na rolach platformy Azure (Azure RBAC):

    • "Microsoft.Network/*/read" w zasobie sieci wirtualnej. To uprawnienie nie jest wymagane w przypadku wdrożeń szablonów usługi Azure Resource Manager (ARM).
    • "Microsoft.Network/virtualNetworks/join/action" w zasobie sieci wirtualnej.
    • "Microsoft.Network/virtualNetworks/subnets/join/action" w zasobie podsieci.

    Aby uzyskać więcej informacji na temat kontroli dostępu opartej na rolach platformy Azure z siecią, zobacz Wbudowane role sieciowe

Ograniczenia

Klaster obliczeniowy/wystąpienie usługi Azure Machine Edukacja

  • Klastry obliczeniowe można tworzyć w innym regionie i sieci wirtualnej niż obszar roboczy. Jednak ta funkcja jest dostępna tylko przy użyciu zestawu SDK w wersji 2, interfejsu wiersza polecenia w wersji 2 lub studio. Aby uzyskać więcej informacji, zobacz wersję 2 bezpiecznych środowisk szkoleniowych.

  • Wdrażanie klastra obliczeniowego/wystąpienia w sieci wirtualnej nie jest obsługiwane w usłudze Azure Lighthouse.

  • Port 445 musi być otwarty w celu komunikacji sieci prywatnej między wystąpieniami obliczeniowymi a domyślnym kontem magazynu podczas trenowania. Jeśli na przykład obliczenia znajdują się w jednej sieci wirtualnej, a konto magazynu znajduje się w innej sieci, nie blokuj portu 445 do sieci wirtualnej konta magazynu.

Azure Databricks

  • Sieć wirtualna musi znajdować się w tej samej subskrypcji i regionie co obszar roboczy usługi Azure Machine Edukacja.
  • Jeśli konta usługi Azure Storage dla obszaru roboczego są również zabezpieczone w sieci wirtualnej, muszą znajdować się w tej samej sieci wirtualnej co klaster usługi Azure Databricks.
  • Oprócz podsieci databricks-private i databricks-public używanych przez usługę Azure Databricks wymagana jest również domyślna podsieć utworzona dla sieci wirtualnej.
  • Usługa Azure Databricks nie używa prywatnego punktu końcowego do komunikowania się z siecią wirtualną.

Aby uzyskać więcej informacji na temat korzystania z usługi Azure Databricks w sieci wirtualnej, zobacz Deploy Azure Databricks in your Azure Virtual Network (Wdrażanie usługi Azure Databricks w usłudze Azure Virtual Network).

Azure HDInsight lub maszyna wirtualna

  • Usługa Azure Machine Edukacja obsługuje tylko maszyny wirtualne z systemem Ubuntu.

Wystąpienie obliczeniowe/klaster bez publicznego adresu IP

Ważne

Jeśli używasz wystąpień obliczeniowych lub klastrów obliczeniowych skonfigurowanych dla żadnego publicznego adresu IP bez zgody na korzystanie z wersji zapoznawczej, musisz je usunąć i ponownie utworzyć po 20 stycznia 2023 r. (gdy funkcja jest ogólnie dostępna).

Jeśli wcześniej używano wersji zapoznawczej żadnego publicznego adresu IP, może być również konieczne zmodyfikowanie ruchu przychodzącego i wychodzącego, ponieważ wymagania zostały zmienione pod kątem ogólnej dostępności:

  • Wymagania dotyczące ruchu wychodzącego — dwa dodatkowe wychodzące, które są używane tylko do zarządzania wystąpieniami obliczeniowymi i klastrami. Miejsce docelowe tych tagów usługi jest własnością firmy Microsoft:
    • AzureMachineLearning tag usługi na porcie UDP 5831.
    • BatchNodeManagement tag usługi na porcie TCP 443.

Następujące konfiguracje są dodatkiem do tych wymienionych w sekcji Wymagania wstępne i są specyficzne dla tworzenia wystąpień obliczeniowych/klastrów skonfigurowanych dla żadnego publicznego adresu IP:

  • Aby komunikować się z usługami azure Machine Edukacja z sieci wirtualnej, musisz użyć prywatnego punktu końcowego obszaru roboczego dla zasobu obliczeniowego. Aby uzyskać więcej informacji, zobacz Konfigurowanie prywatnego punktu końcowego dla obszaru roboczego usługi Azure Machine Edukacja.

  • W sieci wirtualnej zezwól na ruch wychodzący do następujących tagów usługi lub w pełni kwalifikowanych nazw domen (FQDN):

    Tag usługi Protokół Port Uwagi
    AzureMachineLearning TCP
    UDP
    443/8787/18881
    5831
    Komunikacja z usługą Azure Machine Learning.
    BatchNodeManagement.<region> DOWOLNE 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Komunikacja w usłudze Azure Batch. Wystąpienie obliczeniowe i klaster obliczeniowy są implementowane przy użyciu usługi Azure Batch.
    Storage.<region> TCP 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Ten tag usługi służy do komunikowania się z kontem usługi Azure Storage używanym przez usługę Azure Batch.

    Ważne

    Dostęp wychodzący do Storage.<region> programu może być potencjalnie używany do eksfiltrowania danych z obszaru roboczego. Za pomocą zasad punktu końcowego usługi można wyeliminować tę lukę w zabezpieczeniach. Aby uzyskać więcej informacji, zobacz artykuł Ochrona przed eksfiltracją danych w usłudze Azure Machine Edukacja.

    Nazwa FQDN Protokół Port Uwagi
    <region>.tundra.azureml.ms UDP 5831 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning.
    graph.windows.net TCP 443 Komunikacja z interfejsem API programu Microsoft Graph.
    *.instances.azureml.ms TCP 443/8787/18881 Komunikacja z usługą Azure Machine Learning.
    *.<region>.batch.azure.com DOWOLNE 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Komunikacja w usłudze Azure Batch.
    *.<region>.service.batch.azure.com DOWOLNE 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Komunikacja w usłudze Azure Batch.
    *.blob.core.windows.net TCP 443 Komunikacja z usługą Azure Blob Storage.
    *.queue.core.windows.net TCP 443 Komunikacja z usługą Azure Queue Storage.
    *.table.core.windows.net TCP 443 Komunikacja z usługą Azure Table Storage.
  • Utwórz zaporę i reguły ruchu wychodzącego lub bramę translatora adresów sieciowych i grupy usług sieciowych, aby zezwolić na ruch wychodzący. Ponieważ środowisko obliczeniowe nie ma publicznego adresu IP, nie może komunikować się z zasobami w publicznym Internecie bez tej konfiguracji. Na przykład nie będzie można komunikować się z identyfikatorem Entra firmy Microsoft ani z usługą Azure Resource Manager. Zainstalowanie pakietów języka Python ze źródeł publicznych wymaga również tej konfiguracji.

    Aby uzyskać więcej informacji na temat ruchu wychodzącego używanego przez usługę Azure Machine Learning, zobacz następujące artykuły:

Użyj poniższych informacji, aby utworzyć wystąpienie obliczeniowe lub klaster bez publicznego adresu IP:

Aby utworzyć wystąpienie obliczeniowe lub klaster obliczeniowy bez publicznego adresu IP, użyj interfejsu użytkownika usługi Azure Machine Edukacja Studio, aby utworzyć zasób:

  1. Zaloguj się do usługi Azure Machine Edukacja Studio, a następnie wybierz swoją subskrypcję i obszar roboczy.

  2. Wybierz stronę Obliczenia na pasku nawigacyjnym po lewej stronie.

  3. Wybierz pozycję + Nowy na pasku nawigacyjnym wystąpienia obliczeniowego lub klastra obliczeniowego.

  4. Skonfiguruj potrzebny rozmiar i konfigurację maszyny wirtualnej, a następnie wybierz pozycję Dalej.

  5. W obszarze Zaawansowane Ustawienia wybierz pozycję Włącz sieć wirtualną, sieć wirtualną i podsieć, a na koniec wybierz opcję Brak publicznego adresu IP w sekcji Sieć wirtualna/podsieć.

    A screenshot of how to configure no public IP for compute instance and compute cluster.

Napiwek

Możesz również użyć rozszerzenia zestawu Azure Machine Edukacja SDK w wersji 2 lub interfejsu wiersza polecenia platformy Azure dla usługi ML w wersji 2. Aby uzyskać informacje na temat tworzenia wystąpienia obliczeniowego lub klastra bez publicznego adresu IP, zobacz artykuł Secure an Azure Machine Edukacja training environment (Wersja 2 środowiska szkoleniowego Secure an Azure Machine Edukacja).

Wystąpienie obliczeniowe/klaster z publicznym adresem IP

Następujące konfiguracje są dodatkiem do tych wymienionych w sekcji Wymagania wstępne i są specyficzne dla tworzenia wystąpień obliczeniowych/klastrów, które mają publiczny adres IP:

  • W przypadku umieszczenia wielu wystąpień obliczeniowych/klastrów w jednej sieci wirtualnej może być konieczne zażądanie zwiększenia limitu przydziału dla co najmniej jednego zasobu. Maszyna Edukacja wystąpienia obliczeniowego lub klastra automatycznie przydziela zasoby sieciowe w grupie zasobów, która zawiera sieć wirtualną. Dla każdego wystąpienia obliczeniowego lub klastra usługa przydziela następujące zasoby:

    • Sieciowa grupa zabezpieczeń jest tworzona automatycznie. Ta sieciowa grupa zabezpieczeń zezwala na przychodzący ruch TCP na porcie 44224 z tagu AzureMachineLearning usługi.

      Ważne

      Wystąpienie obliczeniowe i klaster obliczeniowy automatycznie tworzą sieciową grupę zabezpieczeń z wymaganymi regułami.

      Jeśli masz inną sieciową grupę zabezpieczeń na poziomie podsieci, reguły w sieciowej grupie zabezpieczeń na poziomie podsieci nie mogą powodować konfliktu z regułami w automatycznie utworzonej sieciowej grupie zabezpieczeń.

      Aby dowiedzieć się, jak sieciowe grupy zabezpieczeń filtrować ruch sieciowy, zobacz Jak sieciowe grupy zabezpieczeń filtrować ruch sieciowy.

    • Jeden moduł równoważenia obciążenia

    W przypadku klastrów obliczeniowych te zasoby są usuwane za każdym razem, gdy klaster jest skalowany w dół do 0 węzłów i tworzony podczas skalowania w górę.

    W przypadku wystąpienia obliczeniowego te zasoby są zachowywane do momentu usunięcia wystąpienia. Zatrzymanie wystąpienia nie powoduje usunięcia zasobów.

    Ważne

    Te zasoby są ograniczone przez limity zasobów subskrypcji. Jeśli grupa zasobów sieci wirtualnej jest zablokowana, usunięcie klastra obliczeniowego/wystąpienia zakończy się niepowodzeniem. Nie można usunąć modułu równoważenia obciążenia do momentu usunięcia klastra obliczeniowego/wystąpienia. Upewnij się również, że nie ma przypisania usługi Azure Policy, które uniemożliwia tworzenie sieciowych grup zabezpieczeń.

  • W sieci wirtualnej zezwól na przychodzący ruch TCP na porcie 44224 z tagu AzureMachineLearning usługi.

    Ważne

    Wystąpienie obliczeniowe/klaster jest dynamicznie przypisywany adres IP podczas jego tworzenia. Ponieważ adres nie jest znany przed utworzeniem, a dostęp przychodzący jest wymagany w ramach procesu tworzenia, nie można go statycznie przypisać w zaporze. Zamiast tego, jeśli używasz zapory z siecią wirtualną, musisz utworzyć trasę zdefiniowaną przez użytkownika, aby zezwolić na ten ruch przychodzący.

  • W sieci wirtualnej zezwól na ruch wychodzący do następujących tagów usługi:

    Tag usługi Protokół Port Uwagi
    AzureMachineLearning TCP
    UDP
    443/8787/18881
    5831
    Komunikacja z usługą Azure Machine Learning.
    BatchNodeManagement.<region> DOWOLNE 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Komunikacja w usłudze Azure Batch. Wystąpienie obliczeniowe i klaster obliczeniowy są implementowane przy użyciu usługi Azure Batch.
    Storage.<region> TCP 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Ten tag usługi służy do komunikowania się z kontem usługi Azure Storage używanym przez usługę Azure Batch.

    Ważne

    Dostęp wychodzący do Storage.<region> programu może być potencjalnie używany do eksfiltrowania danych z obszaru roboczego. Za pomocą zasad punktu końcowego usługi można wyeliminować tę lukę w zabezpieczeniach. Aby uzyskać więcej informacji, zobacz artykuł Ochrona przed eksfiltracją danych w usłudze Azure Machine Edukacja.

    Nazwa FQDN Protokół Port Uwagi
    <region>.tundra.azureml.ms UDP 5831 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning.
    graph.windows.net TCP 443 Komunikacja z interfejsem API programu Microsoft Graph.
    *.instances.azureml.ms TCP 443/8787/18881 Komunikacja z usługą Azure Machine Learning.
    *.<region>.batch.azure.com DOWOLNE 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Komunikacja w usłudze Azure Batch.
    *.<region>.service.batch.azure.com DOWOLNE 443 Zastąp element <region> regionem platformy Azure zawierającym obszar roboczy usługi Azure Machine Learning. Komunikacja w usłudze Azure Batch.
    *.blob.core.windows.net TCP 443 Komunikacja z usługą Azure Blob Storage.
    *.queue.core.windows.net TCP 443 Komunikacja z usługą Azure Queue Storage.
    *.table.core.windows.net TCP 443 Komunikacja z usługą Azure Table Storage.

DOTYCZY: Zestaw SDK języka Python azureml w wersji 1

import datetime
import time

from azureml.core.compute import ComputeTarget, ComputeInstance
from azureml.core.compute_target import ComputeTargetException

# Choose a name for your instance
# Compute instance name should be unique across the azure region
compute_name = "ci{}".format(ws._workspace_id)[:10]

# Verify that instance does not exist already
try:
    instance = ComputeInstance(workspace=ws, name=compute_name)
    print('Found existing instance, use it.')
except ComputeTargetException:
    compute_config = ComputeInstance.provisioning_configuration(
        vm_size='STANDARD_D3_V2',
        ssh_public_access=False,
        vnet_resourcegroup_name='vnet_resourcegroup_name',
        vnet_name='vnet_name',
        subnet_name='subnet_name',
        # admin_user_ssh_public_key='<my-sshkey>'
    )
    instance = ComputeInstance.create(ws, compute_name, compute_config)
    instance.wait_for_completion(show_output=True)

Po zakończeniu procesu tworzenia wytrenujesz model. Aby uzyskać więcej informacji, zobacz Wybieranie i używanie docelowego obiektu obliczeniowego do trenowania.

Azure Databricks

  • Sieć wirtualna musi znajdować się w tej samej subskrypcji i regionie co obszar roboczy usługi Azure Machine Edukacja.
  • Jeśli konta usługi Azure Storage dla obszaru roboczego są również zabezpieczone w sieci wirtualnej, muszą znajdować się w tej samej sieci wirtualnej co klaster usługi Azure Databricks.
  • Oprócz podsieci databricks-private i databricks-public używanych przez usługę Azure Databricks wymagana jest również domyślna podsieć utworzona dla sieci wirtualnej.
  • Usługa Azure Databricks nie używa prywatnego punktu końcowego do komunikowania się z siecią wirtualną.

Aby uzyskać szczegółowe informacje na temat korzystania z usługi Azure Databricks z siecią wirtualną, zobacz Deploy Azure Databricks in your Azure Virtual Network (Wdrażanie usługi Azure Databricks w usłudze Azure Virtual Network).

Wymagany publiczny dostęp do Internetu do trenowania modeli

Ważne

Chociaż w poprzednich sekcjach tego artykułu opisano konfiguracje wymagane do tworzenia zasobów obliczeniowych, informacje o konfiguracji w tej sekcji są wymagane do używania tych zasobów do trenowania modeli.

Usługa Azure Machine Learning wymaga dostępu do publicznego Internetu zarówno dla ruchu przychodzącego, jak i wychodzącego. Poniższe tabele zawierają omówienie wymaganego dostępu i celu, jaki służy. W przypadku tagów usługi kończących się na elemencie .regionzastąp region element regionem świadczenia usługi zawierającym obszar roboczy. Na przykład : Storage.westus

Napiwek

Wymagana karta zawiera wymaganą konfigurację ruchu przychodzącego i wychodzącego. Karta sytuacyjna zawiera opcjonalne konfiguracje ruchu przychodzącego i wychodzącego wymagane przez określone konfiguracje, które można włączyć.

Kierunek Protokół i
ports
Tag usługi Purpose
Wychodzący TCP: 80, 443 AzureActiveDirectory Uwierzytelnianie za pomocą usługi Microsoft Entra ID.
Wychodzący TCP: 443, 18881
UDP: 5831
AzureMachineLearning Korzystanie z usług Azure Machine Learning.
Funkcja IntelliSense języka Python w notesach używa portu 18881.
Tworzenie, aktualizowanie i usuwanie wystąpienia obliczeniowego usługi Azure Machine Edukacja używa portu 5831.
Wychodzący DOWOLNY: 443 BatchNodeManagement.region Komunikacja z zapleczem usługi Azure Batch dla usługi Azure Machine Edukacja wystąpieniami obliczeniowymi/klastrami.
Wychodzący TCP: 443 AzureResourceManager Tworzenie zasobów platformy Azure przy użyciu usługi Azure Machine Edukacja, interfejsu wiersza polecenia platformy Azure i zestawu AZURE Machine Edukacja SDK.
Wychodzący TCP: 443 Storage.region Uzyskiwanie dostępu do danych przechowywanych na koncie usługi Microsoft Azure Storage dla klastra obliczeniowego i wystąpienia obliczeniowego. Aby uzyskać informacje na temat zapobiegania eksfiltracji danych za pośrednictwem tego ruchu wychodzącego, zobacz Ochrona eksfiltracji danych.
Wychodzący TCP: 443 AzureFrontDoor.FrontEnd
* Nie jest wymagane na platformie Microsoft Azure obsługiwanej przez firmę 21Vianet.
Globalny punkt wejścia dla usługiAzure Machine Learning studio. Przechowywanie obrazów i środowisk dla rozwiązania AutoML. Aby uzyskać informacje na temat zapobiegania eksfiltracji danych za pośrednictwem tego ruchu wychodzącego, zobacz Ochrona eksfiltracji danych.
Wychodzący TCP: 443 MicrosoftContainerRegistry.region
Pamiętaj, że ten tag ma zależność od tagu AzureFrontDoor.FirstParty
Uzyskiwanie dostępu do obrazów platformy Docker dostarczonych przez firmę Microsoft. Konfiguracja routera usługi Azure Machine Edukacja dla usługi Azure Kubernetes Service.

Napiwek

Jeśli potrzebujesz adresów IP zamiast tagów usługi, użyj jednej z następujących opcji:

Adresy IP mogą się okresowo zmieniać.

Może być również konieczne zezwolenie na ruch wychodzący do programu Visual Studio Code i witryn innych niż Microsoft na potrzeby instalacji pakietów wymaganych przez projekt uczenia maszynowego. W poniższej tabeli wymieniono często używane repozytoria na potrzeby uczenia maszynowego:

Nazwa hosta Purpose
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ść .
cloud.r-project.org Używany podczas instalowania pakietów CRAN na potrzeby programowania w języku R.
*.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.
code.visualstudio.com Wymagane do pobrania i zainstalowania programu Visual Studio Code desktop. Nie jest to wymagane dla sieci Web programu Visual Studio Code.
update.code.visualstudio.com
*.vo.msecnd.net
Służy do pobierania bitów serwera programu Visual Studio Code zainstalowanych w wystąpieniu obliczeniowym za pomocą skryptu instalacji.
marketplace.visualstudio.com
vscode.blob.core.windows.net
*.gallerycdn.vsassets.io
Wymagane do pobrania i zainstalowania rozszerzeń programu Visual Studio Code. Te hosty umożliwiają zdalne połączenie z wystąpieniami obliczeniowymi udostępnianymi przez rozszerzenie usługi Azure ML dla programu Visual Studio Code. Aby uzyskać więcej informacji, zobacz Połączenie z wystąpieniem obliczeniowym usługi Azure Machine Learning w programie Visual Studio Code.
raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/* Służy do pobierania bitów serwera websocket, które są instalowane w wystąpieniu obliczeniowym. Serwer websocket służy do przesyłania żądań od klienta programu Visual Studio Code (aplikacji klasycznej) do serwera programu Visual Studio Code uruchomionego w wystąpieniu obliczeniowym.

Uwaga

W przypadku korzystania z rozszerzenia usługi Azure Machine Edukacja VS Code zdalne wystąpienie obliczeniowe będzie wymagać dostępu do repozytoriów publicznych w celu zainstalowania pakietów wymaganych przez rozszerzenie. Jeśli wystąpienie obliczeniowe wymaga serwera proxy dostępu do tych publicznych repozytoriów lub Internetu, należy ustawić i wyeksportować HTTP_PROXY zmienne środowiskowe i HTTPS_PROXY w ~/.bashrc pliku wystąpienia obliczeniowego. Ten proces można zautomatyzować w czasie aprowizacji przy użyciu skryptu niestandardowego.

W przypadku korzystania z usługi Azure Kubernetes Service (AKS) z usługą Azure Machine Edukacja zezwól na następujący ruch do sieci wirtualnej usługi AKS:

Aby uzyskać informacje na temat korzystania z rozwiązania zapory, zobacz Use a firewall with Azure Machine Edukacja (Używanie zapory z usługą Azure Machine Edukacja).

Następne kroki

Ten artykuł jest częścią serii dotyczącej zabezpieczania przepływu pracy usługi Azure Machine Edukacja. Zobacz inne artykuły z tej serii: