Konfigurieren von ein- und ausgehendem Netzwerkdatenverkehr

Azure Machine Learning erfordert Zugriff auf Server und Dienste im öffentlichen Internet. Beim Implementieren der Netzwerkisolation müssen Sie wissen, welcher Zugriff erforderlich ist und wie Sie ihn aktivieren.

Hinweis

Die Informationen in diesem Artikel gelten für den Azure Machine Learning-Arbeitsbereich, der für die Verwendung eines Azure Virtual Network konfiguriert ist. Bei Verwendung eines verwalteten virtuellen Netzwerks wird automatisch die erforderliche Eingangs- und Ausgangskonfiguration für den Arbeitsbereich angewendet. Weitere Informationen finden Sie unter Verwaltetes virtuelles Azure Machine Learning-Netzwerk.

Allgemeine Begriffe und Informationen

In diesem Artikel werden die folgenden Begriffe und Informationen verwendet:

  • Azure-Diensttags: Mit einem Diensttag können die von einem Azure-Dienst verwendeten IP-Adressbereiche ganz einfach angegeben werden. Das Tag AzureMachineLearning stellt beispielsweise die IP-Adressen dar, die von Azure Machine Learning Service verwendet werden.

    Wichtig

    Azure-Diensttags werden nur von einigen Azure-Diensten unterstützt. Eine Liste der Diensttags, die von Netzwerksicherheitsgruppen und Azure Firewall unterstützt werden, finden Sie im Artikel Diensttags für virtuelle Netzwerke.

    Wenn Sie eine Nicht-Azure-Lösung wie die Firewall eines Drittanbieters verwenden, laden Sie hier eine Liste mit Azure-IP-Bereichen und -Diensttags herunter. Extrahieren Sie die Datei, und suchen Sie in der Datei nach dem Diensttag. Die IP-Adressen können sich von Zeit zu Zeit ändern.

  • Region: Bei einigen Diensttags können Sie eine Azure-Region angeben. Dadurch wird der Zugriff auf die IP-Adressen des Diensts in einer bestimmten Region beschränkt, in der Regel die Region, in der sich Ihr Dienst befindet. Ersetzen Sie die Vorkommen von <region> in diesem Artikel durch Ihre Azure-Region. BatchNodeManagement.<region> wird zu BatchNodeManagement.uswest, wenn sich Ihr Azure Machine Learning-Arbeitsbereich in der Region „USA, Westen“ befindet.

  • Azure Batch: Azure Machine Learning-Computecluster und -Compute-Instanzen basieren auf einer Back-End-Instanz von Azure Batch. Dieser Back-End-Dienst wird in einem Microsoft-Abonnement gehostet.

  • Ports: Die folgenden Ports werden in diesem Artikel verwendet. Wenn ein Portbereich verwendet wird, der in dieser Tabelle nicht aufgeführt ist, ist er spezifisch für den Dienst, und es gibt möglicherweise keine veröffentlichten Informationen darüber, wofür er verwendet wird:

    Port BESCHREIBUNG
    80 Ungesicherter Webverkehr (HTTP)
    443 Gesicherter Webverkehr (HTTPS)
    445 SMB-Verkehr für den Zugriff auf Dateifreigaben in Azure File Storage
    8787 Wird verwendet, wenn eine Verbindung zu RStudio auf einer Compute-Instanz hergestellt wird.
    18881 Wird verwendet, um eine Verbindung mit dem Sprachserver herzustellen, um IntelliSense für Notebooks auf einer Compute-Instanz zu aktivieren.
  • Protokoll: Sofern nicht anders angegeben, verwendet der gesamte in diesem Artikel erwähnte Netzwerkdatenverkehr TCP.

Basiskonfiguration

Bei dieser Konfiguration wird Folgendes angenommen:

  • Sie verwenden Docker-Images, die von einer von Ihnen bereitgestellten Containerregistrierung bereitgestellt werden, und verwenden keine von Microsoft bereitgestellten Images.
  • Sie verwenden ein privates Python-Paketrepository und greifen nicht auf öffentliche Paketrepositorys wie pypi.org, *.anaconda.com oder *.anaconda.org zu.
  • Die privaten Endpunkte können im VNet direkt miteinander kommunizieren. Beispielsweise verfügen alle Dienste über einen privaten Endpunkt im selben VNet:
    • Azure Machine Learning-Arbeitsbereich
    • Azure-Speicherkonto (Blob, Datei, Tabelle, Warteschlange)

Eingehender Datenverkehr

`Source` `Source`
ports
Destination Zielports Zweck
AzureMachineLearning Any VirtualNetwork 44224 Eingehender Datenverkehr an Compute-Instanz/-cluster. Nur erforderlich, wenn die Instanz/der Cluster für die Verwendung einer öffentlichen IP-Adresse konfiguriert ist.

Tipp

Für diese Art von Datenverkehr wird standardmäßig eine Netzwerksicherheitsgruppe (Network Security Group, NSG) erstellt. Weitere Informationen finden Sie unter Standardsicherheitsregeln.

Ausgehender Datenverkehr

Diensttag(s) Ports Zweck
AzureActiveDirectory 80, 443 Authentifizierung mit Microsoft Entra ID.
AzureMachineLearning 443, 8787, 18881
UDP: 5831
Verwenden von Azure Machine Learning Service.
BatchNodeManagement.<region> 443 Kommunikation mit Azure Batch
AzureResourceManager 443 Erstellen von Azure-Ressourcen mit Azure Machine Learning.
Storage.<region> 443 Zugreifen auf Daten, die im Azure Storage-Konto für Compute-Cluster und Compute-Instanzen gespeichert sind. Diese ausgehende Anforderung kann für die Datenexfiltration verwendet werden. Weitere Informationen finden Sie unter Schutz vor Datenexfiltration.
AzureFrontDoor.FrontEnd
* Nicht erforderlich in Microsoft Azure operated by 21Vianet.
443 Globaler Einstiegspunkt für Azure Machine Learning Studio. Speichern von Images und Umgebungen für AutoML.
MicrosoftContainerRegistry 443 Auf Docker-Images zugreifen, die von Microsoft bereitgestellt werden.
Frontdoor.FirstParty 443 Auf Docker-Images zugreifen, die von Microsoft bereitgestellt werden.
AzureMonitor 443 Wird zum Protokollieren von Überwachung und Metriken in Azure Monitor verwendet. Nur erforderlich, wenn kein Schutz für Azure Monitor für den Arbeitsbereich vorhanden ist.
* Dieser ausgehende Datenverkehr wird auch verwendet, um Informationen für Supportincidents zu protokollieren.
VirtualNetwork 443 Erforderlich, wenn private Endpunkte im virtuellen Netzwerk oder in virtuellen Netzwerken mit Peering vorhanden sind.

Wichtig

Wenn Compute-Instanzen oder Computecluster für keine öffentliche IP-Adresse konfiguriert sind, können sie standardmäßig nicht auf das Internet zugreifen. Wenn sie weiterhin ausgehenden Datenverkehr an das Internet senden können, liegt dies am ausgehenden Standardzugriff von Azure und daran, dass Sie über eine NSG verfügen, die ausgehenden Datenverkehr in das Internet zulässt. Der standardmäßige ausgehende Zugriff wird jedoch nicht empfohlen. Wenn Sie ausgehenden Zugriff auf das Internet benötigen, empfiehlt es sich, anstelle des ausgehenden Standardzugriffs eine der folgenden Optionen zu verwenden:

  • Azure Virtual Network NAT mit einer öffentlichen IP-Adresse: Weitere Informationen zur Verwendung von Virtual Network NAT finden Sie in der Dokumentation zu Virtual Network NAT.
  • Benutzerdefinierte Route und Firewall: Erstellen Sie eine benutzerdefinierte Route im Subnetz, das die Computeressource enthält. Der nächste Hop für die Route sollte auf die private IP-Adresse der Firewall mit dem Adresspräfix 0.0.0.0/0 verweisen.

Weitere Informationen finden Sie im Artikel Standardzugriff in ausgehender Richtung in Azure.

Ausgehender Datenverkehr

Diensttag(s) Ports Zweck
MicrosoftContainerRegistry und AzureFrontDoor.FirstParty 443 Ermöglicht die Verwendung von Docker-Images, die Microsoft für Training und Rückschlüsse bereitstellt. Dient außerdem zum Einrichten des Azure Machine Learning-Routers für Azure Kubernetes Service.

Um die Installation von Python-Paketen für Training und Bereitstellung zuzulassen, lassen Sie ausgehenden Datenverkehr an die folgenden Hostnamen zu:

Hinweis

Diese Liste ist nicht vollständig. Sie enthält nur die Hosts, die für die am häufigsten verwendeten Python-Ressourcen im Internet erforderlich sind. Wenn Sie z. B. Zugriff auf ein GitHub-Repository oder einen anderen Host benötigen, müssen Sie die erforderlichen Hosts für dieses Szenario ermitteln und hinzufügen.

Hostname Zweck
anaconda.com
*.anaconda.com
Wird verwendet, um Standardpakete zu installieren
*.anaconda.org Wird verwendet, um Repositorydaten abzurufen
pypi.org Wird zum Auflisten von Abhängigkeiten vom Standardindex verwendet, sofern vorhanden, und der Index wird nicht durch Benutzereinstellungen überschrieben. Wenn der Index überschrieben wird, müssen Sie auch *.pythonhosted.org zulassen.
pytorch.org
*.pytorch.org
Wird von einigen Beispielen verwendet, die auf PyTorch basieren.
*.tensorflow.org Wird von einigen Beispielen verwendet, die auf Tensorflow basieren.

Szenario: Installieren von RStudio in einer Compute-Instanz

Um die Installation von RStudio in einer Compute-Instanz zuzulassen, muss die Firewall den ausgehenden Zugriff auf die Websites zulassen, von denen das Docker-Image abgerufen werden soll. Fügen Sie der Azure Firewall-Richtlinie die folgende Anwendungsregel hinzu:

  • Name: AllowRStudioInstall
  • Quelltyp: IP-Adresse
  • Quell-IP-Adressen: Der IP-Adressbereich des Subnetzes, in dem Sie die Compute-Instanz erstellen. Beispiel: 172.16.0.0/24.
  • Zieltyp: FQDN
  • Ziel-FQDN:ghcr.io, pkg-containers.githubusercontent.com
  • Protokoll: Https:443.

Um die Installation von R-Paketen zuzulassen, lassen Sie ausgehenden Datenverkehr an cloud.r-project.org zu. Dieser Host wird zum Installieren von CRAN-Paketen verwendet.

Hinweis

Wenn Sie Zugriff auf ein GitHub-Repository oder einen anderen Host benötigen, müssen Sie die erforderlichen Hosts für dieses Szenario ermitteln und hinzufügen.

Szenario: Verwenden eines Computeclusters oder einer Compute-Instanz mit einer öffentlichen IP-Adresse

Wichtig

Eine Compute-Instanz oder ein Computecluster ohne öffentliche IP-Adresse benötigt keinen eingehenden Datenverkehr von der Azure Batch-Verwaltung und den Azure Machine Learning-Diensten. Wenn Sie jedoch mehrere Computeressourcen nutzen und einige davon eine öffentliche IP-Adresse verwenden, müssen Sie diesen Datenverkehr zulassen.

Wenn Sie eine Compute-Instanz oder einen Computecluster (mit öffentlicher IP-Adresse) von Azure Machine Learning Service verwenden, lassen Sie den eingehenden Datenverkehr vom Azure Machine Learning-Diensten zu. Bei Compute-Instanzen oder Computeclustern ohne öffentliche IP-Adresse (Vorschau) ist diese eingehende Kommunikation nicht erforderlich. Eine Netzwerksicherheitsgruppe, die diesen Datenverkehr zulässt, wird dynamisch für Sie erstellt. Sie müssen jedoch möglicherweise auch benutzerdefinierte Routen (UDR) erstellen, wenn Sie über eine Firewall verfügen. Wenn Sie eine benutzerdefinierte Route für diesen Datenverkehr erstellen, können Sie entweder IP-Adressen oder Diensttags verwenden, um den Datenverkehr weiterzuleiten.

Für den Azure Machine Learning Service müssen Sie die IP-Adresse sowohl den primären als auch den sekundären Regionen hinzufügen. Informationen zur sekundären Region finden Sie unter Regionsübergreifende Replikation in Azure. Wenn sich Ihr Azure Machine Learning Service z. B. in „USA, Osten 2“ befindet, ist die sekundäre Region „USA, Mitte“.

Laden Sie die Liste der IP-Adressen von Azure Machine Learning Service unter Azure-IP-Bereiche und -Diensttags herunter, und suchen Sie in der Datei nach AzureMachineLearning.<region>. Dabei gibt <region> Ihre Azure-Region an.

Wichtig

Die IP-Adressen können sich im Laufe der Zeit ändern.

Legen Sie beim Erstellen des UDR die Option Typ des nächsten Hops auf Internet fest. Das bedeutet, dass die eingehende Kommunikation von Azure Ihre Firewall übersprungen hat, um auf die Lastenausgleichsmodule mit öffentlichen IP-Adressen der Compute-Instanz und des Computeclusters zuzugreifen. UDR ist erforderlich, da die Compute-Instanz und der Computecluster bei der Erstellung zufällige öffentliche IP-Adressen erhalten und Sie die öffentlichen IP-Adressen vor der Erstellung nicht kennen können, um sie für Ihre Firewall zu registrieren und den eingehenden Datenverkehr von Azure an bestimmte IP-Adressen für die Compute-Instanz und den Computecluster zu ermöglichen. Die folgende Abbildung zeigt ein Beispiel für eine IP-Adress-basierte benutzerdefinierte Route (UDR) im Azure-Portal:

Abbildung einer benutzerdefinierten Routenkonfiguration

Informationen zum Konfigurieren von benutzerdefinierten Routen finden Sie unter Weiterleiten von Netzwerkdatenverkehr mit einer Routingtabelle.

Szenario: Firewall zwischen Azure Machine Learning- und Azure Storage-Endpunkten

Sie müssen auch ausgehenden Zugriff auf Storage.<region> an Port 445 zulassen.

Szenario: Arbeitsbereich, der mit aktiviertem Flag hbi_workspace erstellt wurde

Sie müssen auch ausgehenden Zugriff auf Keyvault.<region> zulassen. Dieser ausgehende Datenverkehr wird verwendet, um auf die Schlüsseltresorinstanz für den Azure Batch-Back-End-Dienst zuzugreifen.

Weitere Informationen zum hbi_workspace-Flag finden Sie im Artikel zur Datenverschlüsselung.

Szenario: Verwenden von Kubernetes-Computeressourcen

Kubernetes-Cluster, der hinter einem ausgehenden Proxyserver oder einer Firewall ausgeführt wird, benötigt eine zusätzliche ausgehende Netzwerkkonfiguration.

Neben den oben genannten Anforderungen sind für Azure Machine Learning auch die folgenden ausgehenden URLs erforderlich:

Ausgehender Endpunkt Port BESCHREIBUNG Training Rückschluss
*.kusto.windows.net
*.table.core.windows.net
*.queue.core.windows.net
443 Erforderlich zum Hochladen von Systemprotokollen in Kusto
<your ACR name>.azurecr.io
<your ACR name>.<region>.data.azurecr.io
443 Azure Container Registry, erforderlich zum Pullen von Docker-Images, die für Machine Learning-Workloads verwendet werden
<your storage account name>.blob.core.windows.net 443 Azure Blob Storage, erforderlich zum Abrufen von Machine Learning-Projektskripts, -Daten oder -Modellen sowie zum Hochladen von Auftragsprotokollen/-ausgaben
<your workspace ID>.workspace.<region>.api.azureml.ms
<region>.experiments.azureml.net
<region>.api.azureml.ms
443 API für Azure Machine Learning Service
pypi.org 443 Python-Paketindex zum Installieren von PIP-Paketen, die zum Initialisieren der Trainingsauftragsumgebung verwendet werden
archive.ubuntu.com
security.ubuntu.com
ppa.launchpad.net
80 Erforderlich, um die erforderlichen Sicherheitspatches herunterzuladen

Hinweis

  • Ersetzen Sie <your workspace workspace ID> durch die ID Ihres Arbeitsbereichs. Die ID finden Sie im Azure-Portal: Seite für Ihre Machine Learning-Ressource > Eigenschaften > Arbeitsbereichs-ID.
  • Ersetzen Sie <your storage account> durch den Namen des Speicherkontos.
  • Ersetzen Sie <your ACR name> durch den Namen der Azure Container Registry-Instanz für Ihren Arbeitsbereich.
  • Ersetzen Sie <region> durch die Azure-Region Ihres Arbeitsbereichs.

Clusterinterne Kommunikationsanforderungen

Zum Installieren der Azure Machine Learning-Erweiterung auf Kubernetes-Computeressourcen werden alle Azure Machine Learning-Komponenten im Namespace azureml bereitgestellt. Die folgende clusterinterne Kommunikation ist erforderlich, um sicherzustellen, dass die ML-Workloads im AKS-Cluster gut funktionieren.

  • Die Komponenten im azureml-Namespace sollten mit dem Kubernetes-API-Server kommunizieren können.
  • Die Komponenten im azureml-Namespace sollten mit dem miteinander kommunizieren können.
  • Die Komponenten im azureml-Namespace sollten mit kube-dns und konnectivity-agent im kube-system-Namespace kommunizieren können.
  • Wenn der Cluster für Rückschlüsse in Echtzeit verwendet wird, sollten azureml-fe-xxx-PODs mit den bereitgestellten Modell-PODs auf Port 5001 in einem anderen Namespace kommunizieren können. azureml-fe-xxx-PODs sollten die Ports 11001, 12001, 12101, 12201, 20000, 8000, 8001, 9001 für die interne Kommunikation öffnen.
  • Wenn der Cluster für Rückschlüsse in Echtzeit verwendet wird, sollte das bereitgestellte Modell PODs mit amlarc-identity-proxy-xxx-PODs auf Port 9999 kommunizieren können.

Szenario: Visual Studio Code

Visual Studio Code basiert auf bestimmten Hosts und Ports, um eine Remoteverbindung herzustellen.

Hosts

Die Hosts in diesem Abschnitt werden verwendet, um Visual Studio Code-Pakete zu installieren, um eine Remoteverbindung zwischen Visual Studio Code und Compute-Instanzen in Ihrem Azure Machine Learning-Arbeitsbereich einzurichten.

Hinweis

Diese Liste ist nicht vollständig. Sie enthält nur die Hosts, die für die am häufigsten verwendeten Visual Studio Code-Ressourcen im Internet erforderlich sind. Wenn Sie z. B. Zugriff auf ein GitHub-Repository oder einen anderen Host benötigen, müssen Sie die erforderlichen Hosts für dieses Szenario ermitteln und hinzufügen. Eine vollständige Liste der Hostnamen finden Sie unter Netzwerkverbindungen in Visual Studio Code.

Hostname Zweck
*.vscode.dev
*.vscode-unpkg.net
*.vscode-cdn.net
*.vscodeexperiments.azureedge.net
default.exp-tas.com
Erforderlich für den Zugriff auf vscode.dev (Visual Studio Code für das Web)
code.visualstudio.com Erforderlich zum Herunterladen und Installieren von VS Code Desktop. Dieser Host ist für VS Code Web nicht erforderlich.
update.code.visualstudio.com
*.vo.msecnd.net
Wird zum Abrufen von VS Code-Serverbits verwendet, die über ein Setupskript in der Compute-Instanz installiert werden.
marketplace.visualstudio.com
vscode.blob.core.windows.net
*.gallerycdn.vsassets.io
Erforderlich zum Herunterladen und Installieren von VS Code-Erweiterungen. Diese Hosts ermöglichen die Remoteverbindung mit Compute-Instanzen unter Verwendung der Azure Machine Learning-Erweiterung für VS Code. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit einer Azure Machine Learning-Compute-Instanz in Visual Studio Code (Vorschau).
https://github.com/microsoft/vscode-tools-for-ai/tree/master/azureml_remote_websocket_server/* Wird zum Abrufen von Websocket-Serverbits verwendet, die in der Compute-Instanz installiert werden. Der Websocket-Server wird verwendet, um Anforderungen des Visual Studio Code-Clients (Desktopanwendung) an den Visual Studio Code-Server zu übertragen, der in der Compute-Instanz ausgeführt wird.
vscode.download.prss.microsoft.com Für Download von Visual Studio Code (CDN) verwendet

Ports

Sie müssen den Netzwerkdatenverkehr an Ports 8704 bis 8710 zulassen. Der VS Code-Server wählt dynamisch den ersten verfügbaren Port in diesem Bereich aus.

Szenario: Firewall oder Azure Firewall von Drittanbietern ohne Diensttags

Die Anleitungen in diesem Abschnitt sind generisch, da jede Firewall über eine eigene Terminologie und bestimmte Konfigurationen verfügt. Wenn Sie Fragen haben, lesen Sie die Dokumentation für die von Ihnen verwendete Firewall.

Tipp

Wenn Sie Azure Firewall verwenden und die in diesem Abschnitt aufgeführten FQDNs anstelle von Diensttags verwenden wollen, verwenden Sie die folgenden Anleitungen:

  • FQDNs, die HTTP/S-Ports (80 und 443) verwenden, sollten als Anwendungsregeln konfiguriert werden.
  • FQDNs, die andere Ports verwenden, sollten als Netzwerkregeln konfiguriert werden.

Weitere Informationen finden Sie unter Unterschiede zwischen Anwendungsregeln und Netzwerkregeln.

Wenn sie nicht ordnungsgemäß konfiguriert ist, kann die Firewall Probleme bei der Verwendung Ihres Arbeitsbereichs verursachen. Es gibt verschiedene Hostnamen, die vom Azure Machine Learning-Arbeitsbereich verwendet werden. In den folgenden Abschnitten sind Hosts aufgeführt, die für Azure Machine Learning erforderlich sind.

Abhängigkeiten-API

Sie können auch die Azure Machine Learning-REST-API verwenden, um eine Liste von Hosts und Ports abzurufen, für die Sie ausgehenden Datenverkehr zulassen müssen. Verwenden Sie die folgenden Schritte, um diese API zu verwenden:

  1. Abrufen eines Authentifizierungstokens Der folgende Befehl zeigt, wie Sie mithilfe der Azure CLI ein Authentifizierungstoken und eine Abonnement-ID abrufen:

    TOKEN=$(az account get-access-token --query accessToken -o tsv)
    SUBSCRIPTION=$(az account show --query id -o tsv)
    
  2. Rufen Sie die API auf. Ersetzen Sie im folgenden Befehl die folgenden Werte:

    • Ersetzen Sie <region> durch die Azure-Region, in der sich Ihr Arbeitsbereich befindet. Beispiel: westus2.
    • Ersetzen Sie <resource-group> durch die Ressourcengruppe, die Ihren Arbeitsbereich enthält.
    • Ersetzen Sie <workspace-name> durch den Namen Ihres Arbeitsbereichs.
    az rest --method GET \
        --url "https://<region>.api.azureml.ms/rp/workspaces/subscriptions/$SUBSCRIPTION/resourceGroups/<resource-group>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>/outboundNetworkDependenciesEndpoints?api-version=2018-03-01-preview" \
        --header Authorization="Bearer $TOKEN"
    

Das Ergebnis des API-Aufrufs ist ein JSON-Dokument. Der folgende Codeausschnitt ist ein Auszug aus diesem Dokument:

{
  "value": [
    {
      "properties": {
        "category": "Azure Active Directory",
        "endpoints": [
          {
            "domainName": "login.microsoftonline.com",
            "endpointDetails": [
              {
                "port": 80
              },
              {
                "port": 443
              }
            ]
          }
        ]
      }
    },
    {
      "properties": {
        "category": "Azure portal",
        "endpoints": [
          {
            "domainName": "management.azure.com",
            "endpointDetails": [
              {
                "port": 443
              }
            ]
          }
        ]
      }
    },
...

Microsoft-Hosts

Die Hosts in den folgenden Tabellen befinden sich im Besitz von Microsoft und stellen Dienste bereit, die für die ordnungsgemäße Funktionsweise Ihres Arbeitsbereichs erforderlich sind. In den Tabellen sind die Hosts für die Regionen Azure Public, Azure Government und Microsoft Azure operated by 21Vianet aufgeführt.

Wichtig

Azure Machine Learning verwendet Azure Storage Accounts in Ihrem Abonnement und in von Microsoft verwalteten Abonnements. Gegebenenfalls werden in diesem Abschnitt die folgenden Begriffe verwendet, um sie voneinander zu unterscheiden:

  • Ihr Speicher: Das Azure-Speicherkonto/die Azure-Speicherkonten in Ihrem Abonnement, das zum Speichern Ihrer Daten und Artefakte wie Modelle, Trainingsdaten, Trainingsprotokolle und Python-Skripte verwendet wird.>
  • Microsoft-Speicher: Die Azure Machine Learning Compute-Instanz und die Compute-Cluster basieren auf Azure Batch und müssen auf Speicher zugreifen, der sich in einem Microsoft-Abonnement befindet. Dieser Speicher wird nur für die Verwaltung der Compute-Instanzen verwendet. Keine Ihrer Daten wird hier gespeichert.

Allgemeine Azure-Hosts

Erforderlich für Hosts Protokoll Ports
Microsoft Entra ID login.microsoftonline.com TCP 80, 443
Azure-Portal management.azure.com TCP 443
Azure Resource Manager management.azure.com TCP 443

Azure Machine Learning-Hosts

Wichtig

Ersetzen Sie <storage> in der folgenden Tabelle durch den Namen des Standardspeicherkontos für Ihren Azure Machine Learning-Arbeitsbereich. Ersetzen Sie <region> durch die Azure-Region Ihres Arbeitsbereichs.

Erforderlich für Hosts Protokoll Ports
Azure Machine Learning Studio ml.azure.com TCP 443
API *.azureml.ms TCP 443
API *.azureml.net TCP 443
Modellverwaltung *.modelmanagement.azureml.net TCP 443
Integriertes Notebook *.notebooks.azure.net TCP 443
Integriertes Notebook <storage>.file.core.windows.net TCP 443, 445
Integriertes Notebook <storage>.dfs.core.windows.net TCP 443
Integriertes Notebook <storage>.blob.core.windows.net TCP 443
Integriertes Notebook graph.microsoft.com TCP 443
Integriertes Notebook *.aznbcontent.net TCP 443
AutoML NLP, Vision automlresources-prod.azureedge.net TCP 443
AutoML NLP, Vision aka.ms TCP 443

Hinweis

AutoML NLP, Vision wird derzeit nur in öffentlichen Azure-Regionen unterstützt.

Azure Machine Learning-Compute-Instanz- und -Computeclusterhosts

Tipp

  • Der Host für Azure Key Vault wird nur benötigt, wenn Ihr Arbeitsbereich mit aktiviertem hbi_workspace Flag erstellt wurde.
  • Die Ports 8787 und 18881 für Recheninstanz werden nur benötigt, wenn Ihr Azure Machine-Arbeitsbereich einen privaten Endpunkt hat.
  • Ersetzen Sie <storage> in der folgenden Tabelle durch den Namen des Standardspeicherkontos für Ihren Azure Machine Learning-Arbeitsbereich.
  • Ersetzen Sie <region> durch die Azure-Region, die Ihren Arbeitsbereich für Azure Machine Learning enthält.
  • Die WebSocket-Kommunikation muss für die Compute-Instanz zugelassen werden. Wenn Sie den WebSockets-Datenverkehr blockieren, funktionieren Jupyter Notebooks nicht ordnungsgemäß.
Erforderlich für Hosts Protokoll Ports
Computecluster/-Instanz graph.windows.net TCP 443
Compute-Instanz *.instances.azureml.net TCP 443
Compute-Instanz *.instances.azureml.ms TCP 443, 8787, 18881
Compute-Instanz <region>.tundra.azureml.ms UDP 5831
Compute-Instanz *.<region>.batch.azure.com ANY 443
Compute-Instanz *.<region>.service.batch.azure.com ANY 443
Microsoft Speicherzugriff *.blob.core.windows.net TCP 443
Microsoft Speicherzugriff *.table.core.windows.net TCP 443
Microsoft Speicherzugriff *.queue.core.windows.net TCP 443
Ihr Speicherkonto <storage>.file.core.windows.net TCP 443, 445
Ihr Speicherkonto <storage>.blob.core.windows.net TCP 443
Azure-Schlüsseltresor *.vault.azure.net TCP 443

Docker-Images, die von Azure Machine Learning verwaltet werden

Erforderlich für Hosts Protokoll Ports
Microsoft Container Registry mcr.microsoft.com
*.data.mcr.microsoft.com
TCP 443

Tipp

  • Azure Container Registry ist für jedes benutzerdefinierte Docker-Image erforderlich. Dazu gehören geringfügige Änderungen (z. B. zusätzliche Pakete) an von Microsoft bereitgestellten Basisimages. Der Dienst ist auch für den internen Übermittlungsprozess für Trainingsaufträge von Azure Machine Learning erforderlich. Darüber hinaus wird Microsoft Container Registry unabhängig vom Szenario immer benötigt.
  • Wenn Sie die Verbundidentität verwenden möchten, befolgen Sie die Anleitungen im Artikel Bewährte Methoden zum Sichern von Active Directory-Verbunddiensten.

Verwenden Sie außerdem die Informationen im Abschnitt zu Computeressourcen mit öffentlicher IP-Adresse, um IP-Adressen für BatchNodeManagement und AzureMachineLearning hinzuzufügen.

Informationen zum Einschränken des Zugriffs auf Modelle, die in AKS bereitgestellt werden, finden Sie unter Steuern des ausgehenden Datenverkehrs in Azure Kubernetes Service.

Überwachung, Metriken und Diagnose

Wenn kein Schutz von Azure Monitor für den Arbeitsbereich vorhanden ist, müssen Sie ausgehenden Datenverkehr für die folgenden Hosts zulassen:

Wenn kein Schutz von Azure Monitor für den Arbeitsbereich vorhanden ist, müssen Sie ausgehenden Datenverkehr für die folgenden Hosts zulassen:

Hinweis

Die auf diesen Hosts protokollierten Informationen werden auch vom Microsoft-Support verwendet, um Probleme, die in Ihrem Arbeitsbereich auftreten, diagnostizieren zu können.

  • dc.applicationinsights.azure.com
  • dc.applicationinsights.microsoft.com
  • dc.services.visualstudio.com
  • *.in.applicationinsights.azure.com

Eine Liste der IP-Adressen für diese Hosts finden Sie unter Von Azure Monitor verwendete IP-Adressen.

Nächste Schritte

Dieser Artikel ist Teil einer Reihe zum Schützen eines Azure Machine Learning-Workflows. Sehen Sie sich auch die anderen Artikel in dieser Reihe an:

Weitere Informationen zum Konfigurieren von Azure Firewall finden Sie unter Tutorial: Bereitstellen und Konfigurieren von Azure Firewall über das Azure-Portal.