Freigeben über


Sichern von verwalteten Onlineendpunkten mithilfe der Netzwerkisolation

GILT FÜR:Azure CLI ML-Erweiterung v2 (aktuell)Python SDK azure-ai-ml v2 (aktuell)

In diesem Artikel erfahren Sie, wie Sie die Netzwerkisolation verwenden, um die Sicherheit eines von Azure Machine Learning verwalteten Onlineendpunkts zu verbessern. Die Netzwerkisolation trägt dazu bei, die eingehende und ausgehende Kommunikation mit und von Ihrem Endpunkt zu sichern.

Um die eingehende Kommunikation zu sichern, können Sie einen verwalteten Onlineendpunkt erstellen, der den privaten Endpunkt eines Azure Machine Learning-Arbeitsbereichs verwendet. Um nur genehmigte ausgehende Kommunikation für Bereitstellungen zuzulassen, können Sie den Arbeitsbereich mit einem verwalteten virtuellen Netzwerk konfigurieren. In diesem Artikel erfahren Sie, wie Sie diese Schritte ausführen, um die Endpunktsicherheit zu verbessern. Außerdem wird gezeigt, wie Sie eine Bereitstellung erstellen, die die privaten Endpunkte des verwalteten virtuellen Netzwerks des Arbeitsbereichs für ausgehende Kommunikation verwendet.

Wenn Sie die Legacymethode für die Netzwerkisolation verwenden möchten, lesen Sie die folgenden Beispiele für Bereitstellungsdatei im GitHub-Repository für Azureml-Beispiele :

Voraussetzungen

  • Ein Azure-Abonnement. Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

  • Die Azure CLI und die Azure CLI-Erweiterung ml , installiert und konfiguriert. Weitere Informationen finden Sie unter Installieren und Einrichten der CLI (v2).For more information, see Install and set up the CLI (v2).

    Tipp

    Das Feature für verwaltete virtuelle Azure Machine Learning-Netzwerke wurde am 23. Mai 2023 eingeführt. Wenn Sie über eine ältere Version der ml Erweiterung verfügen, müssen Sie sie möglicherweise aktualisieren, damit die Beispiele in diesem Artikel funktionieren. Verwenden Sie zum Aktualisieren der Erweiterung den folgenden Azure CLI-Befehl:

    az extension update -n ml
    
  • Eine Bash-Shell oder eine kompatible Shell, z. B. eine Shell auf einem Linux-System oder Windows-Subsystem für Linux. In den Azure CLI-Beispielen in diesem Artikel wird davon ausgegangen, dass Sie diesen Shelltyp verwenden.

  • Eine Azure-Ressourcengruppe, in der Sie oder der Dienstprinzipal, den Sie verwenden, Zugriff als „Mitwirkender“ haben. Anweisungen zum Erstellen einer Ressourcengruppe finden Sie unter "Einrichten".

  • Eine vom Benutzer zugewiesene verwaltete Identität mit entsprechenden Berechtigungen, wenn Sie eine verwaltete Identität zum Erstellen und Verwalten von Onlineendpunkten und Onlinebereitstellungen verwenden möchten. Ausführliche Informationen zu erforderlichen Berechtigungen finden Sie unter Einrichten der Authentifizierung zwischen Azure Machine Learning und anderen Diensten. Beispielsweise müssen Sie Ihrer verwalteten Identität spezifische Azure-rollenbasierte Zugriffssteuerungsberechtigungen (Azure RBAC) für Azure Key Vault erteilen.

Migrieren von der älteren Netzwerkisolationsmethode zu einem arbeitsbereichverwalteten virtuellen Netzwerk

Wenn Sie die Legacymethode für die Netzwerkisolation von verwalteten Onlineendpunkten verwenden und zu einem verwalteten virtuellen Netzwerk migrieren möchten, um Ihre Endpunkte zu schützen, führen Sie die folgenden Schritte aus:

  1. Erstellen Sie einen neuen Arbeitsbereich, und aktivieren Sie ein verwaltetes virtuelles Netzwerk. Weitere Informationen zum Konfigurieren eines verwalteten Netzwerks für Ihren Arbeitsbereich finden Sie unter verwaltete Virtuelle Netzwerkisolation für Arbeitsbereiche.
  2. (Optional) Wenn Ihre Bereitstellungen auf andere private Ressourcen als Azure Storage, Key Vault und Azure Container Registry zugreifen, fügen Sie ausgehende Regeln zu den Netzwerkeinstellungen Ihres Arbeitsbereichs hinzu. Insbesondere ist das Netzwerk standardmäßig mit Regeln für Azure Storage, Key Vault und ContainerRegistrierung konfiguriert. Fügen Sie Regeln mit privaten Endpunkten für alle anderen privaten Ressourcen hinzu, die Sie verwenden.
  3. (Optional) Wenn Sie eine Azure Machine Learning-Registrierung verwenden möchten, konfigurieren Sie private Endpunkte für ausgehende Kommunikation mit Ihrer Registrierung, dessen Speicherkonto und deren Instanz der Containerregistrierung.
  4. Erstellen Sie Onlineendpunkte und Bereitstellungen im neuen Arbeitsbereich. Wenn Sie Azure Machine Learning-Registrierungen verwenden, können Sie Komponenten direkt daraus bereitstellen. Weitere Informationen finden Sie unter Bereitstellen des Modells aus der Registrierung auf einem Onlineendpunkt in einem Arbeitsbereich.
  5. Aktualisieren Sie Anwendungen, die Endpunkte aufrufen, damit die Anwendungen die Bewertungs-URIs der neuen Onlineendpunkte verwenden.
  6. Nachdem Sie Ihre neuen Endpunkte überprüft haben, löschen Sie die Onlineendpunkte in Ihrem alten Arbeitsbereich.

Wenn Sie während der Migration keine Ausfallzeiten vermeiden müssen, können Sie einen einfacheren Ansatz ergreifen. Wenn Sie keine Computeinstanzen, Onlineendpunkte und Bereitstellungen in Ihrem alten Arbeitsbereich verwalten müssen, können Sie die Computeinstanzen löschen und dann den Arbeitsbereich aktualisieren, um ein verwaltetes virtuelles Netzwerk zu aktivieren.

Einschränkungen

  • Die v1_legacy_mode Kennzeichnung muss auf false gesetzt werden, um den v1-Legacy-Modus in Ihrem Azure Machine Learning-Arbeitsbereich zu deaktivieren. Wenn diese Einstellung aktiviert ist, können Sie keinen verwalteten Onlineendpunkt erstellen. Weitere Informationen finden Sie unter Netzwerkisolationsänderung mit unserer neuen API-Plattform in Azure Resource Manager.

  • Wenn Ihr Azure Machine Learning-Arbeitsbereich über einen privaten Endpunkt verfügt, der vor dem 24. Mai 2022 erstellt wurde, müssen Sie diesen privaten Endpunkt erneut erstellen, bevor Sie Ihre Onlineendpunkte für die Verwendung privater Endpunkte konfigurieren. Weitere Informationen zum Erstellen eines privaten Endpunkts für Ihren Arbeitsbereich finden Sie unter Konfigurieren eines privaten Endpunkts für einen Azure Machine Learning-Arbeitsbereich.

    Tipp

    Um das Erstellungsdatum eines Arbeitsbereichs anzuzeigen, können Sie die Arbeitsbereichseigenschaften überprüfen.

    1. Wechseln Sie im Azure Machine Learning Studio zur oberen rechten Ecke, und wählen Sie den Namen Ihres Arbeitsbereichs aus.
    2. Wählen Sie im Fenster "Verzeichnis + Abonnement + Arbeitsbereich" die Option "Alle Eigenschaften im Azure-Portal anzeigen" aus.
    3. Wechseln Sie auf der Seite "Übersicht" des Azure-Portals zur oberen rechten Ecke, und wählen Sie die JSON-Ansicht aus.
    4. Wählen Sie im Ressourcen-JSON-Fenster unter API-Versionen die neueste API-Version aus.
    5. Überprüfen Sie im properties Abschnitt des JSON-Codes den creationTime Wert.

    Alternativ können Sie eine der folgenden Methoden verwenden:

    • Python SDK: Workspace.get(name=<workspace-name>, subscription_id=<subscription-ID>, resource_group=<resource-group-name>).get_details()
    • REST-API: curl https://management.azure.com/subscriptions/<subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/?api-version=2023-10-01 -H "Authorization:Bearer <access-token>"
    • PowerShell:Get-AzMLWorkspace -Name <workspace-name> -ResourceGroupName <resource-group-name>
  • Wenn Sie die Netzwerkisolation zum Sichern von Onlineendpunkten verwenden, können Sie arbeitsbereichsbezogene Ressourcen aus einer anderen Ressourcengruppe als Ihrer Arbeitsbereichsressourcengruppe verwenden. Diese Ressourcen müssen jedoch demselben Abonnement und Mandanten wie Ihr Arbeitsbereich angehören. Ressourcen, die einem Arbeitsbereich zugeordnet sind, umfassen Azure Container Registry, Azure Storage, Azure Key Vault und Application Insights.

Hinweis

In diesem Artikel wird die Netzwerkisolation beschrieben, die für Datenebenenvorgänge gilt. Diese Vorgänge ergeben sich aus Bewertungsanforderungen oder Modellbereitstellungen. Steuerungsebenenvorgänge, z. B. Anforderungen zum Erstellen, Aktualisieren, Löschen oder Abrufen von Authentifizierungsschlüsseln, werden über das öffentliche Netzwerk an Azure Resource Manager gesendet.

Vorbereiten Ihres Systems

  1. Erstellen Sie Umgebungsvariablen, indem Sie die folgenden Befehle ausführen. Ersetzen Sie <resource-group-name> mit der Ressourcengruppe für Ihren Arbeitsbereich. Ersetzen Sie <workspace-name> durch den Namen Ihres Arbeitsbereichs.

    export RESOURCEGROUP_NAME="<resource-group-name>"
    export WORKSPACE_NAME="<workspace-name>"
    
  2. Erstellen Sie Ihren Arbeitsbereich. Der Parameter -m allow_only_approved_outbound konfiguriert ein verwaltetes virtuelles Netzwerk für den Arbeitsbereich und blockiert ausgehenden Datenverkehr außer an genehmigte Zielen.

    az ml workspace create -g $RESOURCEGROUP_NAME -n $WORKSPACE_NAME -m allow_only_approved_outbound
    

    Wenn Sie alternativ zulassen möchten, dass die Bereitstellung ausgehenden Datenverkehr an das Internet sendet, heben Sie die Auskommentierung des folgenden Codes auf und führen ihn stattdessen aus.

    # az ml workspace create -g $RESOURCEGROUP_NAME -n $WORKSPACE_NAME -m allow_internet_outbound
    

    Weitere Informationen zum Erstellen eines neuen Arbeitsbereichs oder zum Aktualisieren Ihres vorhandenen Arbeitsbereichs für die Verwendung eines verwalteten virtuellen Netzwerks finden Sie unter Konfigurieren eines verwalteten virtuellen Netzwerks, um das Internet ausgehend zuzulassen.

  3. Stellen Sie das verwaltete virtuelle Netzwerk bereit. Anweisungen und weitere Informationen finden Sie unter Manuelles Bereitstellen eines verwalteten VNet.

    Wichtig

    Wenn Sie ein verwaltetes virtuelles Netzwerk für einen Arbeitsbereich zum ersten Mal einrichten, wird das Netzwerk nicht bereitgestellt. Sie können Onlinebereitstellungen erst erstellen, wenn Sie das verwaltete Netzwerk bereitstellen.

  4. Konfigurieren Sie die Containerregistrierung, die dem Arbeitsbereich zugeordnet ist, um einen Premium-Preisplan zu verwenden. Diese Einstellung ist erforderlich, um zugriff auf die Registrierung über einen privaten Endpunkt bereitzustellen. Weitere Informationen finden Sie unter Azure Container Registry-Tarife.

  5. Konfigurieren Sie Ihren Arbeitsbereich für die Verwendung eines Computeclusters oder einer Computeinstanz zum Erstellen von Images. Sie können die image_build_compute Eigenschaft zu diesem Zweck verwenden. Weitere Informationen und Anweisungen finden Sie unter Konfigurieren von Imagebuilds.

  6. Konfigurieren Sie Standardwerte für die Azure CLI, damit Sie vermeiden können, die Werte für Ihren Arbeitsbereich und die Ressourcengruppe mehrmals zu übergeben.

    az configure --defaults workspace=$WORKSPACE_NAME group=$RESOURCEGROUP_NAME
    
  7. Klonen Sie das Beispielrepository, um die Beispieldateien für den Endpunkt und die Bereitstellung abzurufen, und wechseln Sie dann zum Cli-Verzeichnis des Repositorys.

    git clone --depth 1 https://github.com/Azure/azureml-examples
    cd azureml-examples/cli
    

Die Befehle in diesem Artikel befinden sich in der deploy-managed-online-endpoint-workspacevnet.sh Datei im Cli-Verzeichnis. Die YAML-Konfigurationsdateien befinden sich im Verzeichnis endpoints/online/managed/sample/subdirectory.

Erstellen eines geschützten verwalteten Onlineendpunkts

Zum Erstellen eines gesicherten verwalteten Onlineendpunkts erstellen Sie den Endpunkt in Ihrem Arbeitsbereich. Anschließend legen Sie den Wert des Endpunkts public_network_access auf disabled fest, um die eingehende Kommunikation zu steuern.

Diese Einstellung zwingt den Onlineendpunkt, den privaten Endpunkt des Arbeitsbereichs für eingehende Kommunikation zu verwenden. Die einzige Möglichkeit, den Onlineendpunkt aufzurufen, besteht darin, einen privaten Endpunkt zu verwenden, der auf den Arbeitsbereich in Ihrem virtuellen Netzwerk zugreifen kann. Weitere Informationen finden Sie unter Sichere eingehende Bewertungsanforderungen und Konfigurieren eines privaten Endpunkts für einen Azure Machine Learning-Arbeitsbereich.

Da der Arbeitsbereich für ein verwaltetes virtuelles Netzwerk konfiguriert ist, verwenden alle Endpunktbereitstellungen die privaten Endpunkte des verwalteten virtuellen Netzwerks für ausgehende Kommunikation.

  1. Legen Sie den Namen des Endpunkts fest:

    export ENDPOINT_NAME="<YOUR_ENDPOINT_NAME>"
    
  2. Erstellen Sie einen Endpunkt, indem Sie public_network_access auf disabled setzen, um eingehenden Datenverkehr zu blockieren:

    Hinweis

    Das referenzierte Skript verwendet YAML-Konfigurationsdateien aus dem geklonten Repository. Stellen Sie sicher, dass Sie sich nach dem Klonen des Repositorys im richtigen Verzeichnis befinden oder den vollständigen Pfad zu Ihren YAML-Dateien bereitstellen. Überprüfen Sie in Azure Cloud Shell, ob auf die Dateien in Ihrem Cloudspeicher zugegriffen werden kann, bevor Sie die Befehle ausführen.

    az ml online-endpoint create --name $ENDPOINT_NAME -f endpoints/online/managed/sample/endpoint.yml --set public_network_access=disabled
    

    Wenn Sie alternativ dem Endpunkt gestatten möchten, Bewertungsanforderungen aus dem Internet zu empfangen, heben Sie die Auskommentierung des folgenden Codes auf und führen ihn stattdessen aus.

    # az ml online-endpoint create --name $ENDPOINT_NAME -f endpoints/online/managed/sample/endpoint.yml
    

Testen des Endpunkts

  1. Erstellen Sie eine Bereitstellung im verwalteten virtuellen Netzwerk des Arbeitsbereichs:

    az ml online-deployment create --name blue --endpoint $ENDPOINT_NAME -f endpoints/online/managed/sample/blue-deployment.yml --all-traffic
    

    Falls Sie eine Fehlermeldung zu einem Autorisierungsfehler erhalten, überprüfen Sie die Netzwerkkonfiguration des Speicherkontos des Arbeitsbereichs. Möglicherweise müssen Sie die Einstellungen für den Zugriff auf das öffentliche Netzwerk anpassen, um dem Arbeitsbereich Zugriff auf das Speicherkonto zu gewähren.

  2. Rufen Sie den Status der Bereitstellung ab:

    az ml online-endpoint show -n $ENDPOINT_NAME
    
  3. Testen Sie den Endpunkt, indem Sie eine Bewertungsanforderung ausgeben:

    az ml online-endpoint invoke --name $ENDPOINT_NAME --request-file endpoints/online/model-1/sample-request.json
    
  4. Holen Sie sich die Bereitstellungsprotokolle:

    az ml online-deployment get-logs --name blue --endpoint $ENDPOINT_NAME
    

Bereinigen von Ressourcen

  1. Wenn Sie den Endpunkt nicht mehr benötigen, führen Sie den folgenden Befehl aus, um ihn zu löschen.

    az ml online-endpoint delete --name $ENDPOINT_NAME --yes --no-wait
    
  2. Wenn Sie den Arbeitsbereich, die zugehörigen Ressourcen und die anderen Ressourcen in Ihrer Ressourcengruppe nicht mehr benötigen, löschen Sie sie. Ersetzen Sie <resource-group-name> durch den Namen der Ressourcengruppe, die Ihren Arbeitsbereich enthält.

    az group delete --resource-group <resource-group-name>
    

Problembehandlung

Die Erstellung eines Onlineendpunkts schlägt mit einer Meldung über den v1-Legacymodus fehl.

Verwaltete Onlineendpunkte sind ein Feature der Azure Machine Learning v2-API-Plattform. Wenn Ihr Azure Machine Learning-Arbeitsbereich für den Legacymodus v1 konfiguriert ist, funktionieren die verwalteten Onlineendpunkte nicht. Insbesondere gilt: Wenn die Arbeitsbereichseinstellung v1_legacy_mode auf true festgelegt ist, ist der v1-Legacymodus aktiviert, und v2-APIs werden nicht unterstützt.

Informationen zum Deaktivieren des v1-Legacymodus finden Sie unter Netzwerkisolationsänderung mit unserer neuen API-Plattform in Azure Resource Manager.

Wichtig

Wenden Sie sich an Ihr Netzwerksicherheitsteam, bevor Sie v1_legacy_mode auf false setzen, da der v1-Legacymodus möglicherweise aus einem bestimmten Grund aktiviert ist.

Fehler beim Erstellen eines Onlineendpunkts mit schlüsselbasierter Authentifizierung

Verwenden Sie den folgenden Befehl, um die Azure Key Vault-Netzwerkregeln für Ihren Arbeitsbereich aufzulisten. Ersetzen Sie <key-vault-name> durch den Namen Ihres Schlüsseltresors.

az keyvault network-rule list -n <key-vault-name>

Die Antwort für diesen Befehl ähnelt dem folgenden JSON-Code:

{
    "bypass": "AzureServices",
    "defaultAction": "Deny",
    "ipRules": [],
    "virtualNetworkRules": []
}

Wenn der Wert bypass nicht AzureServicesist, verwenden Sie die Anleitungen unter Konfigurieren von Azure Key Vault-Netzwerkeinstellungen , um ihn auf festzulegen AzureServices.

Fehler beim Imagedownload bei Onlinebereitstellungen

Hinweis

Dieses Problem gilt, wenn Sie die ältere Netzwerkisolationsmethode für verwaltete Onlineendpunkte verwenden. In dieser Methode erstellt Azure Machine Learning für jede Bereitstellung unter einem Endpunkt ein verwaltetes virtuelles Netzwerk.

  1. Überprüfen Sie, ob das egress-public-network-access Flag einen Wert von disabled für die Bereitstellung hat. Wenn dieses Flag aktiviert ist und die Sichtbarkeit der Containerregistrierung auf „privat“ festgelegt ist, dann ist dieser Fehler zu erwarten.

  2. Verwenden Sie den folgenden Befehl, um den Status der privaten Endpunktverbindung zu überprüfen. Ersetzen Sie <registry-name> durch den Namen der Azure Container Registry-Instanz für Ihren Arbeitsbereich:

    az acr private-endpoint-connection list -r <registry-name> --query "[?privateLinkServiceConnectionState.description=='Egress for Microsoft.MachineLearningServices/workspaces/onlineEndpoints'].{ID:id, status:privateLinkServiceConnectionState.status}"
    

    Überprüfen Sie im Antwortcode, ob das Feld status auf Approved festgelegt ist. Wenn der Wert nicht Approvedist, verwenden Sie den folgenden Befehl, um die Verbindung zu genehmigen. Ersetzen Sie durch <private-endpoint-connection-ID> die ID, die der vorherige Befehl zurückgibt.

    az network private-endpoint-connection approve --id <private-endpoint-connection-ID> --description "Approved"
    

Bewertungsendpunkt kann nicht aufgelöst werden

  1. Stellen Sie sicher, dass der Client, der die Bewertungsanforderung sendet, ein virtuelles Netzwerk ist, das auf den Azure Machine Learning-Arbeitsbereich zugreifen kann.

  2. Verwenden Sie den nslookup Befehl auf dem Endpunkthostnamen, um die IP-Adressinformationen abzurufen:

    nslookup <endpoint-name>.<endpoint-region>.inference.ml.azure.com
    

    Ihr Befehl könnte z. B. wie folgt aussehen:

    nslookup endpointname.westcentralus.inference.ml.azure.com
    

    Die Antwort enthält eine Adresse, die sich im vom virtuellen Netzwerk bereitgestellten Bereich befinden sollte.

    Hinweis

    • Für Kubernetes-Onlineendpunkt sollte der Endpunkthostname der CName (Domänenname) sein, der in Ihrem Kubernetes-Cluster angegeben ist.
    • Wenn der Endpunkt HTTP verwendet, ist die IP-Adresse im Endpunkt-URI enthalten, den Sie von der Studio-Benutzeroberfläche abrufen können.
    • Weitere Möglichkeiten zum Abrufen der IP-Adresse des Endpunkts finden Sie unter Aktualisieren Ihres DNS mit einem FQDN.
  3. Wenn der Befehl nslookup den Hostnamen nicht auflöst, führen Sie die Aktionen in einem der folgenden Abschnitte aus.

Verwaltete Onlineendpunkte

  1. Verwenden Sie den folgenden Befehl, um zu überprüfen, ob ein A-Eintrag in der privaten Domain Name System (DNS)-Zone für das virtuelle Netzwerk existiert.

    az network private-dns record-set list -z privatelink.api.azureml.ms -o tsv --query [].name
    

    Die Ergebnisse sollten einen Eintrag ähnlich wie *.<GUID>.inference.<region> enthalten.

  2. Wenn kein Rückschlusswert zurückgegeben wird, löschen Sie den privaten Endpunkt für den Arbeitsbereich, und erstellen Sie ihn erneut. Weitere Informationen finden Sie unter Konfigurieren eines privaten Endpunkts.

  3. Wenn der Arbeitsbereich mit einem privaten Endpunkt einen benutzerdefinierten DNS-Server verwendet, führen Sie den folgenden Befehl aus, um zu überprüfen, ob die Auflösung vom benutzerdefinierten DNS-Server ordnungsgemäß funktioniert:

    dig <endpoint-name>.<endpoint-region>.inference.ml.azure.com
    

Kubernetes-Onlineendpunkte

  1. Überprüfen Sie die DNS-Konfiguration im Kubernetes-Cluster.

  2. Überprüfen Sie, azureml-feob der Azure Machine Learning-Rückschlussrouter wie erwartet funktioniert. Führen Sie zum Ausführen dieser Überprüfung die folgenden Schritte aus:

    1. Führen Sie den folgenden Befehl im azureml-fe Pod aus:

      kubectl exec -it deploy/azureml-fe -- /bin/bash
      
    2. Führen Sie einen der folgenden Befehle aus:

      curl -vi -k https://localhost:<port>/api/v1/endpoint/<endpoint-name>/swagger.json
      "Swagger not found"
      

      Verwenden Sie für HTTP den folgenden Befehl:

      curl https://localhost:<port>/api/v1/endpoint/<endpoint-name>/swagger.json
      "Swagger not found"
      
  3. Wenn der curl HTTPS-Befehl fehlschlägt oder eine Zeitüberschreitung auftritt, aber der HTTP-Befehl funktioniert, überprüfen Sie, ob das Zertifikat gültig ist.

  4. Wenn der vorausgehende Prozess nicht zum A-Eintrag aufgelöst wird, verwenden Sie den folgenden Befehl, um zu überprüfen, ob die Auflösung über die virtuelle öffentliche IP-Adresse von Azure DNS, 168.63.129.16, funktioniert.

    dig @168.63.129.16 <endpoint-name>.<endpoint-region>.inference.ml.azure.com
    
  5. Wenn der vorherige Befehl erfolgreich ausgeführt wird, führen Sie die Problembehandlung für die bedingte Weiterleitung von Azure Private Link auf einem benutzerdefinierten DNS durch.

Onlinebereitstellungen können nicht bewertet werden

  1. Führen Sie den folgenden Befehl aus, um den Status einer Bereitstellung anzuzeigen, die nicht bewertet werden kann:

    az ml online-deployment show -e <endpoint-name> -n <deployment-name> --query '{name:name,state:provisioning_state}' 
    

    Ein Wert von Succeeded im state Feld zeigt eine erfolgreiche Bereitstellung an.

  2. Verwenden Sie für eine erfolgreiche Bereitstellung den folgenden Befehl, um zu überprüfen, ob Datenverkehr der Bereitstellung zugewiesen ist:

    az ml online-endpoint show -n <endpoint-name>  --query traffic
    

    Die Antwort dieses Befehls sollte den Prozentsatz des Datenverkehrs auflisten, der jeder Bereitstellung zugewiesen ist.

    Tipp

    Dieser Schritt ist nicht notwendig, wenn Sie den azureml-model-deployment-Header in Ihrer Anforderung verwenden, um diese Bereitstellung als Ziel zu definieren.

  3. Wenn die Datenverkehrszuweisungen oder der Bereitstellungsheader ordnungsgemäß festgelegt sind, verwenden Sie den folgenden Befehl, um die Protokolle für den Endpunkt abzurufen:

    az ml online-deployment get-logs  -e <endpoint-name> -n <deployment-name> 
    
  4. Überprüfen Sie die Protokolle, um zu sehen, ob es ein Problem bei der Ausführung des Bewertungscodes gibt, wenn Sie eine Anforderung an die Bereitstellung übermitteln.