Tutorial: Erstellen eines sicheren Arbeitsbereichs mit Hilfe einer Vorlage

Vorlagen bieten eine praktische Möglichkeit, reproduzierbare Dienstbereitstellungen zu erstellen. Die Vorlage definiert, was erstellt wird. Außerdem enthält sie einige Informationen, die Sie bei der Verwendung der Vorlage angeben. Beispielsweise können Sie einen eindeutigen Namen für den Azure Machine Learning-Arbeitsbereich angeben.

In diesem Tutorial erfahren Sie, wie Sie eine Microsoft Bicep- und HashiCorp Terraform-Vorlage verwenden, um die folgenden Azure-Ressourcen zu erstellen:

  • Azure Virtual Network. Die folgenden Ressourcen werden hinter diesem VNet geschützt:
    • Azure Machine Learning-Arbeitsbereich
      • Azure Machine Learning-Computeinstanz
      • Azure Machine Learning-Computecluster
    • Azure Storage-Konto
    • Azure-Schlüsseltresor
    • Azure Application Insights
    • Azure Container Registry
    • Azure Bastion-Host
    • Azure Machine Learning-VM (Data Science Virtual Machine)
    • Die Bicep-Vorlage erstellt auch einen Azure Kubernetes Service-Cluster und eine separate Ressourcengruppe dafür.

Tipp

Microsoft empfiehlt die Verwendung von verwalteten virtuellen Netzwerken für Azure Machine Learning anstelle der Schritte in diesem Artikel. Mit einem verwalteten virtuellen Netzwerk übernimmt Azure Machine Learning die Aufgabe der Netzwerkisolation für Ihren Arbeitsbereich und Ihre verwalteten Computeressourcen. Sie können auch private Endpunkte für Ressourcen hinzufügen, die vom Arbeitsbereich benötigt werden, z. B. Azure Storage-Konto. Weitere Informationen finden Sie unter Verwaltete Netzwerkisolation auf Arbeitsbereichsebene (Vorschau).

Voraussetzungen

Für die Schritte in diesem Artikel benötigen Sie ein Azure-Abonnement. Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen.

Sie müssen auch über eine Bash- oder Azure PowerShell-Befehlszeile verfügen.

Tipp

Verwenden Sie beim Lesen dieses Artikels die Registerkarten in den einzelnen Abschnitten, um auszuwählen, ob Informationen zur Verwendung von Bicep- oder Terraform-Vorlagen angezeigt werden.

  1. Informationen zum Installieren der Befehlszeilentools finden Sie unter Einrichten von Bicep-Entwicklungs- und -Bereitstellungsumgebungen.

  2. Die in diesem Artikel verwendete Bicep-Vorlage befindet sich unter https://github.com/Azure/azure-quickstart-templates/blob/master/quickstarts/microsoft.machinelearningservices/machine-learning-end-to-end-secure. Verwenden Sie die folgenden Befehle, um das GitHub-Repository in Ihrer Entwicklungsumgebung zu klonen:

    Tipp

    Wenn der Befehl git in Ihrer Entwicklungsumgebung nicht verfügbar ist, können Sie ihn über https://git-scm.com/ installieren.

    git clone https://github.com/Azure/azure-quickstart-templates
    cd azure-quickstart-templates/quickstarts/microsoft.machinelearningservices/machine-learning-end-to-end-secure
    

Grundlegendes zur Vorlage

Die Bicep-Vorlage besteht aus main.bicep und den .bicep-Dateien im Unterverzeichnis modules. In der folgenden Tabelle wird beschrieben, wofür die einzelnen Dateien verantwortlich sind:

Datei BESCHREIBUNG
main.bicep Parameter und Variablen. Übergeben von Parametern und Variablen an andere Module im Unterverzeichnis modules.
vnet.bicep Definiert das virtuelle Azure-Netzwerk und die Subnetze
nsg.bicep Definiert die Regeln der Netzwerksicherheitsgruppe für das VNet
bastion.bicep Definiert den Azure Bastion-Host und das Subnet. Mit Azure Bastion können Sie über Ihren Webbrowser problemlos auf eine VM im VNet zugreifen.
dsvmjumpbox.bicep Definiert die Data Science Virtual Machine (DSVM). Mithilfe von Azure Bastion wird über Ihren Webbrowser auf diese VM zugegriffen.
storage.bicep Definiert das Azure Storage-Konto, das vom Arbeitsbereich als Standardspeicher verwendet wird.
keyvault.bicep Definiert die Azure Key Vault-Instanz, die vom Arbeitsbereich verwendet wird
containerregistry.bicep Definiert die Azure Container Registry-Instanz, die vom Arbeitsbereich verwendet wird
applicationinsights.bicep Definiert die Azure Application Insights-Instanz, die vom Arbeitsbereich verwendet wird
machinelearningnetworking.bicep Definiert die privaten Endpunkte und DNS-Zonen für den Azure Machine Learning-Arbeitsbereich
machinelearning.bicep Definiert den Azure Machine Learning-Arbeitsbereich
machinelearningcompute.bicep Definiert einen Azure Machine Learning-Computecluster und eine Compute-Instanz
privateaks.bicep Definiert eine Azure Kubernetes Services-Clusterinstanz.

Wichtig

Die Beispielvorlagen verwenden möglicherweise nicht immer die neueste API-Version für Azure Machine Learning. Bevor Sie die Vorlage verwenden, empfehlen wir, sie so zu ändern, dass sie die neuesten API-Versionen verwendet. Informationen zu den neuesten API-Versionen für Azure Machine Learning finden Sie unter der Azure Machine Learning-REST-API.

Jeder Azure-Dienst verfügt über einen eigenen Satz von API-Versionen. Informationen zur API für einen bestimmten Dienst finden Sie in den Dienstinformationen in der Azure-REST-API-Referenz.

Um die API-Version zu aktualisieren, suchen Sie den Eintrag Microsoft.MachineLearningServices/<resource> für den Ressourcentyp, und aktualisieren Sie ihn auf die neueste Version. Das folgende Beispiel ist ein Eintrag für den Azure Machine Learning-Arbeitsbereich, der eine API-Version von 2022-05-01 verwendet:

resource machineLearning 'Microsoft.MachineLearningServices/workspaces@2022-05-01' = {

Wichtig

Die DSVM und Azure Bastion dienen als einfache Möglichkeit zum Herstellen einer Verbindung mit dem geschützten Arbeitsbereich für dieses Tutorial. In einer Produktionsumgebung wird empfohlen, ein Azure-VPN-Gateway oder Azure ExpressRoute zu verwenden, um direkt aus Ihrem lokalen Netzwerk auf die Ressourcen im VNet zuzugreifen.

Konfigurieren der Vorlage

Um die Bicep-Vorlage auszuführen, verwenden Sie die folgenden Befehle aus dem machine-learning-end-to-end-secure, in dem sich die Datei main.bicep befindet:

  1. Führen Sie den folgenden Befehl aus, um eine neue Azure-Ressourcengruppe zu erstellen. Ersetzen Sie exampleRG durch den Namen Ihrer Ressourcengruppe und eastus durch die Azure-Region, die Sie verwenden möchten:

    az group create --name exampleRG --location eastus
    
  2. Verwenden Sie den folgenden Befehl, um die Vorlage auszuführen. Ersetzen Sie prefix durch ein eindeutiges Präfix. Das Präfix wird beim Erstellen von Azure-Ressourcen verwendet, die für Azure Machine Learning erforderlich sind. Ersetzen Sie securepassword durch ein sicheres Kennwort für die Jumpbox. Das Kennwort gilt für das Anmeldekonto für die Jumpbox (azureadmin in den folgenden Beispielen):

    Tipp

    Das prefix muss fünf oder weniger Zeichen lang sein. Es darf nicht nur aus Ziffern bestehen oder die folgenden Zeichen enthalten: ~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?.

    az deployment group create \
        --resource-group exampleRG \
        --template-file main.bicep \
        --parameters \
        prefix=prefix \
        dsvmJumpboxUsername=azureadmin \
        dsvmJumpboxPassword=securepassword
    

Herstellen einer Verbindung mit dem Arbeitsbereich

Führen Sie nach Abschluss der Vorlage die folgenden Schritte aus, um eine Verbindung mit der DSVM herzustellen:

  1. Wählen Sie im Azure-Portal die Azure-Ressourcengruppe aus, die Sie mit der Vorlage verwendet haben. Wählen Sie dann die Data Science Virtual Machine aus, die von der Vorlage erstellt wurde. Wenn Sie diese nicht finden können, verwenden Sie den Abschnitt mit den Filtern, um nach Typ oder VM zu filtern.

    Screenshot of filtering and selecting the vm.

  2. Wählen Sie im Abschnitt Übersicht der VM Verbinden und dann in der Dropdownliste Bastion aus.

    Screenshot of selecting to connect using Bastion.

  3. Geben Sie bei entsprechender Aufforderung den Benutzernamen und das Kennwort an, die Sie beim Konfigurieren der Vorlage verwendet haben, und wählen Sie dann Verbinden aus.

    Wichtig

    Wenn Sie zum ersten Mal eine Verbindung mit dem DSVM-Desktop herstellen, wird ein PowerShell-Fenster geöffnet, in dem ein Skript ausgeführt wird. Lassen Sie dies zu, bevor Sie mit dem nächsten Schritt fortfahren.

  4. Starten Sie auf dem DSVM-Desktop Microsoft Edge, und geben Sie https://ml.azure.com als Adresse ein. Melden Sie sich bei Ihrem Azure-Abonnement an, und wählen Sie dann den von der Vorlage erstellten Arbeitsbereich aus. Das Studio für Ihren Arbeitsbereich wird angezeigt.

Problembehandlung

Fehler: Windows-Computername darf nicht länger als 15 Zeichen sein, nur aus Ziffern bestehen oder die folgenden Zeichen enthalten

Dieser Fehler kann auftreten, wenn der Name für die DSVM-Jumpbox mehr als 15 Zeichen umfasst oder eines der folgenden Zeichen enthält: ~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?.

Wenn Sie die Bicep-Vorlage verwenden, wird der Name der Jumpbox programmgesteuert mit dem Präfixwert generiert, der für die Vorlage bereitgestellt wird. Um sicherzustellen, dass der Name 15 Zeichen nicht überschreitet und keine ungültigen Zeichen enthält, verwenden Sie ein Präfix mit maximal 5 Zeichen, und verwenden Sie keines der folgenden Zeichen im Präfix: ~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?.

Bei Verwendung der Terraform-Vorlage wird der Name der Jumpbox mithilfe des Parameters dsvm_name übergeben. Um diesen Fehler zu vermeiden, verwenden Sie einen Namen, der nicht mehr als 15 Zeichen umfasst und keines der folgenden Zeichen als Teil des Namens enthält: ~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?.

Nächste Schritte

Wichtig

Die Data Science Virtual Machine (DSVM) und alle Ressourcen der Compute-Instanz werden Ihnen stundenweise in Rechnung gestellt, wenn sie ausgeführt werden. Um übermäßige Gebühren zu vermeiden, sollten Sie diese Ressourcen beenden, wenn sie nicht verwendet werden. Weitere Informationen finden Sie in den folgenden Artikeln:

Weitere Informationen zur Verwendung des geschützten Arbeitsbereichs über die DSVM finden Sie im Tutorial: Azure Machine Learning in einem Tag.

Weitere Informationen zu allgemeinen Konfigurationen für sichere Arbeitsbereiche und Ein- und Ausgabeanforderungen finden Sie unter Datenverkehrsfluss in sicheren Azure Machine Learning-Arbeitsbereichen.