Share via


Gebruik een Azure Resource Manager om een werkruimte te maken voor Azure Machine Learning

In dit artikel leert u verschillende manieren om een Azure Machine Learning-werkruimte te maken met behulp van Azure Resource Manager-sjablonen. Met een Resource Manager-sjabloon kunt u eenvoudig resources maken als één gecoördineerde bewerking. Een sjabloon is een JSON-document dat de resources definieert die nodig zijn voor een implementatie. Het kan ook implementatieparameters opgeven. Parameters worden gebruikt om invoerwaarden op te geven bij het gebruik van de sjabloon.

Zie Een toepassing implementeren met een Azure Resource Manager-sjabloon voor meer informatie.

Vereisten

Beperkingen

  • Wanneer u een nieuwe werkruimte maakt, kunt u automatisch services maken die nodig zijn voor de werkruimte of bestaande services gebruiken. Als u bestaande services van een ander Azure-abonnement wilt gebruiken dan de werkruimte, moet u de Azure Machine Learning-naamruimte registreren in het abonnement dat deze services bevat. Als u bijvoorbeeld een werkruimte maakt in abonnement A die gebruikmaakt van een opslagaccount in abonnement B, moet de Azure Machine Learning-naamruimte zijn geregistreerd in abonnement B voordat de werkruimte het opslagaccount kan gebruiken.

    De resourceprovider voor Azure Machine Learning is Microsoft.MachineLearningServices. Zie Azure-resourceproviders en -typen voor meer informatie over het registreren of registreren ervan.

    Belangrijk

    Deze informatie is alleen van toepassing op resources die worden verstrekt tijdens het maken van de werkruimte: Azure Storage-accounts, Azure Container Registry, Azure Key Vault en Application Insights.

  • De voorbeeldsjabloon gebruikt mogelijk niet altijd de nieuwste API-versie voor Azure Machine Learning. Voordat u de sjabloon gebruikt, raden we u aan deze te wijzigen om de nieuwste API-versies te gebruiken. Zie de Azure Machine Learning REST API voor informatie over de nieuwste API-versies voor Azure Machine Learning.

    Tip

    Elke Azure-service heeft een eigen set API-versies. Raadpleeg de servicegegevens in de Naslaginformatie over de Azure REST API voor informatie over de API voor een specifieke service.

    Als u de API-versie wilt bijwerken, zoekt u de "apiVersion": "YYYY-MM-DD" vermelding voor het resourcetype en werkt u deze bij naar de nieuwste versie. Het volgende voorbeeld is een vermelding voor Azure Machine Learning:

    "type": "Microsoft.MachineLearningServices/workspaces",
    "apiVersion": "2023-10-01",
    

Meerdere werkruimten in hetzelfde virtuele netwerk

De sjabloon biedt geen ondersteuning voor meerdere Azure Machine Learning-werkruimten die in hetzelfde virtuele netwerk zijn geïmplementeerd. Deze beperking komt doordat de sjabloon nieuwe DNS-zones maakt tijdens de implementatie.

Als u een sjabloon wilt maken waarmee meerdere werkruimten in hetzelfde virtuele netwerk worden geïmplementeerd, stelt u deze handmatig in (met behulp van Azure Portal of CLI). Gebruik vervolgens Azure Portal om een sjabloon te genereren.

Over de Azure Resource Manager-sjabloon

De Azure Resource Manager-sjabloon die in dit document wordt gebruikt, vindt u in de map microsoft.machineleaerningservices/machine-learning-workspace-vnet van de GitHub-opslagplaats azure-quickstartsjablonen.

Met deze sjabloon worden de volgende Azure-services gemaakt:

  • Azure-opslagaccount
  • Azure Key Vault
  • Azure Application Insights
  • Azure Container Registry
  • Azure Machine Learning-werkruimte

De resourcegroep is de container die de services bevat. De Azure Machine Learning-werkruimte gebruikt deze services voor functionaliteit, zoals het opslaan van gegevens, geheimen, logboekregistratie en Docker-installatiekopieën.

De voorbeeldsjabloon heeft twee vereiste parameters:

  • De locatie waar de resources worden gemaakt.

    De sjabloon gebruikt de locatie die u voor de meeste resources selecteert. De uitzondering hierop is de Application Insights-service, die niet beschikbaar is op alle locaties waar de andere services zich bevinden. Als u een locatie selecteert waar deze niet beschikbaar is, wordt de service gemaakt op de locatie VS - zuid-centraal.

  • De workspaceName, de beschrijvende naam van de Azure Machine Learning-werkruimte.

    Notitie

    De naam van de werkruimte is niet hoofdlettergevoelig.

    De namen van de andere services worden willekeurig gegenereerd.

Tip

Terwijl de sjabloon die aan dit document is gekoppeld, een nieuwe Azure Container Registry maakt, kunt u ook een nieuwe werkruimte maken zonder een containerregister te maken. Er wordt een gemaakt wanneer u een bewerking uitvoert waarvoor een containerregister is vereist. Bijvoorbeeld het trainen of implementeren van een model.

U kunt ook verwijzen naar een bestaand containerregister of opslagaccount in de Azure Resource Manager-sjabloon in plaats van een nieuw account te maken. Als u dit doet, moet u een beheerde identiteit (preview) gebruiken of het beheerdersaccount voor het containerregister inschakelen.

Waarschuwing

Zodra een Azure Container Registry voor een werkruimte is gemaakt, verwijdert u deze niet. Hierdoor wordt uw Azure Machine Learning-werkruimte verbroken.

Zie de volgende artikelen voor meer informatie over sjablonen:

Sjabloon implementeren

Als u uw sjabloon wilt implementeren, moet u een resourcegroep maken.

Zie de sectie Azure Portal als u liever de grafische gebruikersinterface gebruikt.

az group create --name "examplegroup" --location "eastus"

Nadat uw resourcegroep is gemaakt, implementeert u de sjabloon met de volgende opdracht:

az deployment group create \
    --name "exampledeployment" \
    --resource-group "examplegroup" \
    --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.machinelearningservices/machine-learning-workspace-vnet/azuredeploy.json" \
    --parameters workspaceName="exampleworkspace" location="eastus"

Standaard zijn alle resources die als onderdeel van de sjabloon zijn gemaakt, nieuw. U kunt echter ook bestaande resources gebruiken. Door andere parameters aan de sjabloon op te geven, kunt u bestaande resources gebruiken. Als u bijvoorbeeld een bestaand opslagaccount wilt gebruiken, stelt u de waarde storageAccountOption in op bestaande en geeft u de naam van uw opslagaccount op in de parameter storageAccountName.

Belangrijk

Als u een bestaand Azure Storage-account wilt gebruiken, kan het geen Premium-account zijn (Premium_LRS en Premium_GRS). Het kan ook geen hiërarchische naamruimte hebben (gebruikt met Azure Data Lake Storage Gen2). Premium-opslag of hiërarchische naamruimte worden niet ondersteund met het standaardopslagaccount van de werkruimte. Premium-opslag of hiërarchische naamruimten worden niet ondersteund met het standaardopslagaccount van de werkruimte. U kunt Premium Storage of hiërarchische naamruimte gebruiken met niet-standaardopslagaccounts .

az deployment group create \
    --name "exampledeployment" \
    --resource-group "examplegroup" \
    --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.machinelearningservices/machine-learning-workspace-vnet/azuredeploy.json" \
    --parameters workspaceName="exampleworkspace" \
      location="eastus" \
      storageAccountOption="existing" \
      storageAccountName="existingstorageaccountname"

Een versleutelde werkruimte implementeren

In de volgende voorbeeldsjabloon ziet u hoe u een werkruimte maakt met drie instellingen:

  • Schakel instellingen voor hoge vertrouwelijkheid in voor de werkruimte. Met deze configuratie maakt u een nieuw Azure Cosmos DB-exemplaar.
  • Schakel versleuteling in voor de werkruimte.
  • Maakt gebruik van een bestaande Azure Key Vault om door de klant beheerde sleutels op te halen. Door de klant beheerde sleutels worden gebruikt om een nieuw Azure Cosmos DB-exemplaar voor de werkruimte te maken.

Belangrijk

Zodra een werkruimte is gemaakt, kunt u de instellingen voor vertrouwelijke gegevens, versleuteling, sleutelkluis-id of sleutel-id's niet meer wijzigen. Als u deze waarden wilt wijzigen, moet u een nieuwe werkruimte maken met behulp van de nieuwe waarden.

Zie Door de klant beheerde sleutels voor meer informatie.

Belangrijk

Er zijn enkele specifieke vereisten die uw abonnement moet voldoen voordat u deze sjabloon gebruikt:

  • U moet een bestaande Azure Key Vault hebben die een versleutelingssleutel bevat.
  • De Azure Key Vault moet zich in dezelfde regio bevinden als waar u de Azure Machine Learning-werkruimte wilt maken.
  • U moet de id van de Azure Key Vault en de URI van de versleutelingssleutel opgeven.

Zie Door de klant beheerde sleutels configureren voor stappen voor het maken van de kluis en sleutel.

Voer de volgende stappen uit om de waarden op te halen voor de cmk_keyvault parameters (id van de sleutelkluis) en de resource_cmk_uri parameters (sleutel-URI) die nodig zijn voor deze sjabloon:

  1. Gebruik de volgende opdracht om de Key Vault-id op te halen:

    az keyvault show --name <keyvault-name> --query 'id' --output tsv    
    

    Met deze opdracht wordt een waarde geretourneerd die vergelijkbaar is met /subscriptions/{subscription-guid}/resourceGroups/<resource-group-name>/providers/Microsoft.KeyVault/vaults/<keyvault-name>.

  2. Gebruik de volgende opdracht om de waarde voor de URI voor de door de klant beheerde sleutel op te halen:

    az keyvault key show --vault-name <keyvault-name> --name <key-name> --query 'key.kid' --output tsv    
    

Met deze opdracht wordt een waarde geretourneerd die vergelijkbaar is met https://mykeyvault.vault.azure.net/keys/mykey/{guid}.

Belangrijk

Zodra een werkruimte is gemaakt, kunt u de instellingen voor vertrouwelijke gegevens, versleuteling, sleutelkluis-id of sleutel-id's niet meer wijzigen. Als u deze waarden wilt wijzigen, moet u een nieuwe werkruimte maken met behulp van de nieuwe waarden.

Als u het gebruik van door de klant beheerde sleutels wilt inschakelen, stelt u de volgende parameters in bij het implementeren van de sjabloon:

  • encryption_status in Ingeschakeld.
  • cmk_keyvault de waarde die u in de cmk_keyvault vorige stappen hebt verkregen.
  • resource_cmk_uri de waarde die u in de resource_cmk_uri vorige stappen hebt verkregen.
az deployment group create \
    --name "exampledeployment" \
    --resource-group "examplegroup" \
    --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.machinelearningservices/machine-learning-workspace-vnet/azuredeploy.json" \
    --parameters workspaceName="exampleworkspace" \
      location="eastus" \
      encryption_status="Enabled" \
      cmk_keyvault="/subscriptions/{subscription-guid}/resourceGroups/<resource-group-name>/providers/Microsoft.KeyVault/vaults/<keyvault-name>" \
      resource_cmk_uri="https://mykeyvault.vault.azure.net/keys/mykey/{guid}" \

Wanneer u een door de klant beheerde sleutel gebruikt, maakt Azure Machine Learning een secundaire resourcegroep die het Azure Cosmos DB-exemplaar bevat. Zie Encryption-at-rest in Azure Cosmos DB voor meer informatie.

Een andere configuratie die u voor uw gegevens kunt opgeven, is door de parameter confidential_data in te stellen op waar. Als u dit doet, schakelt u het volgende gedrag in:

  • Begint met het versleutelen van de lokale scratchschijf voor Azure Machine Learning-rekenclusters, mits u geen eerdere clusters in uw abonnement hebt gemaakt. Als u eerder een cluster in het abonnement hebt gemaakt, opent u een ondersteuningsticket om versleuteling van de scratchschijf in te schakelen voor uw rekenclusters.

  • Hiermee wordt de lokale scratchschijf tussen taken opgeschoond.

  • Hiermee worden referenties veilig doorgegeven voor het opslagaccount, het containerregister en het SSH-account van de uitvoeringslaag aan uw rekenclusters met behulp van de sleutelkluis.

  • Hiermee schakelt u IP-filtering in om ervoor te zorgen dat geen andere externe services dan AzureMachineLearningService de onderliggende batchgroepen kunnen aanroepen.

    Belangrijk

    Zodra een werkruimte is gemaakt, kunt u de instellingen voor vertrouwelijke gegevens, versleuteling, sleutelkluis-id of sleutel-id's niet meer wijzigen. Als u deze waarden wilt wijzigen, moet u een nieuwe werkruimte maken met behulp van de nieuwe waarden.

    Zie versleuteling-at-rest voor meer informatie.

Werkruimte implementeren achter een virtueel netwerk

Door de vnetOption parameterwaarde in te stellen op of new existingkunt u de resources maken die worden gebruikt door een werkruimte achter een virtueel netwerk.

Belangrijk

Voor containerregister wordt alleen de Premium-SKU ondersteund.

Belangrijk

Application Insights biedt geen ondersteuning voor implementatie achter een virtueel netwerk.

Alleen werkruimte implementeren achter privé-eindpunt

Als uw gekoppelde resources zich niet achter een virtueel netwerk bevinden, kunt u de parameter AutoAproval privateEndpointType instellen op of ManualApproval de werkruimte achter een privé-eindpunt implementeren. Deze instelling kan worden gebruikt voor zowel nieuwe als bestaande werkruimten. Wanneer u een bestaande werkruimte bijwerkt, vult u de sjabloonparameters in met de informatie uit de bestaande werkruimte.

az deployment group create \
    --name "exampledeployment" \
    --resource-group "examplegroup" \
    --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.machinelearningservices/machine-learning-workspace-vnet/azuredeploy.json" \
    --parameters workspaceName="exampleworkspace" \
      location="eastus" \
      privateEndpointType="AutoApproval"

Een nieuw virtueel netwerk gebruiken

Als u een resource achter een nieuw virtueel netwerk wilt implementeren, stelt u vnetOption in op nieuw, samen met de instellingen voor het virtuele netwerk voor de betreffende resource. In het volgende voorbeeld ziet u hoe u een werkruimte implementeert met de opslagaccountresource achter een nieuw virtueel netwerk.

az deployment group create \
    --name "exampledeployment" \
    --resource-group "examplegroup" \
    --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.machinelearningservices/machine-learning-workspace-vnet/azuredeploy.json" \
    --parameters workspaceName="exampleworkspace" \
      location="eastus" \
      vnetOption="new" \
      vnetName="examplevnet" \
      storageAccountBehindVNet="true"
      privateEndpointType="AutoApproval"

U kunt ook meerdere of alle afhankelijke resources achter een virtueel netwerk implementeren.

az deployment group create \
    --name "exampledeployment" \
    --resource-group "examplegroup" \
    --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.machinelearningservices/machine-learning-workspace-vnet/azuredeploy.json" \
    --parameters workspaceName="exampleworkspace" \
      location="eastus" \
      vnetOption="new" \
      vnetName="examplevnet" \
      storageAccountBehindVNet="true" \
      keyVaultBehindVNet="true" \
      containerRegistryBehindVNet="true" \
      containerRegistryOption="new" \
      containerRegistrySku="Premium"
      privateEndpointType="AutoApproval"

Een bestaand virtueel netwerk en resources gebruiken

Als u een werkruimte met bestaande resources wilt implementeren, moet u de parameter vnetOption instellen op bestaande samen met subnetparameters. U moet echter service-eindpunten maken in het virtuele netwerk voor elk van de resources vóór de implementatie. Net als bij nieuwe implementaties van virtuele netwerken kunt u een of al uw resources achter een virtueel netwerk hebben.

Belangrijk

Subnet moet een service-eindpunt hebben Microsoft.Storage

Belangrijk

Subnetten staan het maken van privé-eindpunten niet toe. Schakel het privé-eindpunt uit om het subnet in te schakelen.

  1. Schakel service-eindpunten in voor de resources.

    az network vnet subnet update --resource-group "examplegroup" --vnet-name "examplevnet" --name "examplesubnet" --service-endpoints "Microsoft.Storage"
    az network vnet subnet update --resource-group "examplegroup" --vnet-name "examplevnet" --name "examplesubnet" --service-endpoints "Microsoft.KeyVault"
    az network vnet subnet update --resource-group "examplegroup" --vnet-name "examplevnet" --name "examplesubnet" --service-endpoints "Microsoft.ContainerRegistry"
    
  2. De werkruimte implementeren

    az deployment group create \
    --name "exampledeployment" \
    --resource-group "examplegroup" \
    --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.machinelearningservices/machine-learning-workspace-vnet/azuredeploy.json" \
    --parameters workspaceName="exampleworkspace" \
      location="eastus" \
      vnetOption="existing" \
      vnetName="examplevnet" \
      vnetResourceGroupName="examplegroup" \
      storageAccountBehindVNet="true" \
      keyVaultBehindVNet="true" \
      containerRegistryBehindVNet="true" \
      containerRegistryOption="new" \
      containerRegistrySku="Premium" \
      subnetName="examplesubnet" \
      subnetOption="existing"
      privateEndpointType="AutoApproval"
    

De Azure-portal gebruiken

  1. Volg de stappen in Resources implementeren vanuit een aangepaste sjabloon. Wanneer u bij het scherm Aangepaste implementatie aankomt, kiest u de vermelding van de quickstart-sjabloon .

  2. Selecteer de microsoft.machinelearningservices/machine-learning-workspace-vnet vermelding in de vervolgkeuzelijst voor quickstart-sjablonen. Gebruik ten slotte Select template.

  3. Wanneer de sjabloon wordt weergegeven, geeft u de volgende vereiste informatie en eventuele andere parameters op, afhankelijk van uw implementatiescenario.

    • Abonnement: Selecteer het Azure-abonnement dat u voor deze resources wilt gebruiken.
    • Resourcegroep: selecteer of maak de resourcegroep die de services bevat.
    • Regio: Selecteer de Azure-regio waar de resources moeten worden gemaakt.
    • Werkruimtenaam: de naam die moet worden gebruikt voor de Azure Machine Learning-werkruimte die moet worden gemaakt. De naam van de werkruimte moet tussen 3 en 33 tekens zijn. Het mag alleen alfanumerieke tekens en '-' bevatten.
    • Locatie: Selecteer de locatie waar de resources moeten worden gemaakt.
  4. Selecteer Controleren + maken.

  5. Ga in het scherm Beoordelen en maken akkoord met de vermelde voorwaarden en selecteer Maken.

Zie Resources implementeren vanuit een aangepaste sjabloon voor meer informatie.

Probleemoplossing

Fouten met resourceprovider

Wanneer u een Azure Machine Learning-werkruimte maakt of een resource die door de werkruimte wordt gebruikt, ontvangt u mogelijk een foutbericht die op een van de volgende berichten lijkt:

  • No registered resource provider found for location {location}
  • The subscription is not registered to use namespace {resource-provider-namespace}

De meeste resourceproviders worden automatisch geregistreerd, maar niet allemaal. Als u dit bericht ontvangt, moet u de vermelde provider registreren.

De volgende tabel bevat een lijst met de resourceproviders die vereist zijn voor Azure Machine Learning:

Resourceprovider Waarom dit nodig is
Microsoft.MachineLearningServices De Azure Machine Learning-werkruimte maken.
Microsoft.Storage Azure Storage-account wordt gebruikt als de standaardopslag voor de werkruimte.
Microsoft.ContainerRegistry Azure Container Registry wordt door de werkruimte gebruikt om Docker-installatiekopieën te bouwen.
Microsoft.KeyVault Azure Key Vault wordt door de werkruimte gebruikt om geheimen op te slaan.
Microsoft.Notebooks Geïntegreerde notebooks in een Azure Machine Learning-rekenproces.
Microsoft.ContainerService Als u van plan bent getrainde modellen te implementeren in Azure Kubernetes Services.

Als u van plan bent om een door de klant beheerde sleutel te gebruiken met Azure Machine Learning, moeten de volgende serviceproviders zijn geregistreerd:

Resourceprovider Waarom dit nodig is
Microsoft.DocumentDB Azure CosmosDB-exemplaar dat metagegevens voor de werkruimte registreert.
Microsoft.Search Azure Search biedt indexeringsmogelijkheden voor de werkruimte.

Als u van plan bent om een beheerd virtueel netwerk te gebruiken met Azure Machine Learning, moet de resourceprovider Microsoft.Network worden geregistreerd. Deze resourceprovider wordt door de werkruimte gebruikt bij het maken van privé-eindpunten voor het beheerde virtuele netwerk.

Zie Fouten oplossen voor de registratie van de resourceprovider voor informatie over het registreren van resourceproviders.

Toegangsbeleid voor Azure Key Vault en Azure Resource Manager-sjablonen

Wanneer u een Azure Resource Manager-sjabloon gebruikt om de werkruimte en de bijbehorende resources (inclusief Azure Key Vault) meerdere keren te maken. Als u bijvoorbeeld de sjabloon meerdere keren gebruikt met dezelfde parameters als onderdeel van een pijplijn voor continue integratie en implementatie.

De meeste bewerkingen voor het maken van resources via sjablonen zijn idempotent, maar Key Vault wist het toegangsbeleid telkens wanneer de sjabloon wordt gebruikt. Als u het toegangsbeleid wist, wordt de toegang tot de Key Vault verbroken voor alle bestaande werkruimten die deze gebruiken. Stop/Create-functionaliteiten van azure Notebooks-VM kunnen bijvoorbeeld mislukken.

Om dit probleem te voorkomen, raden we een van de volgende methoden aan:

  • Implementeer de sjabloon niet meer dan één keer voor dezelfde parameters. Of verwijder de bestaande resources voordat u de sjabloon gebruikt om ze opnieuw te maken.

  • Controleer het toegangsbeleid voor Key Vault en gebruik deze beleidsregels om de accessPolicies eigenschap van de sjabloon in te stellen. Gebruik de volgende Azure CLI-opdracht om het toegangsbeleid weer te geven:

    az keyvault show --name mykeyvault --resource-group myresourcegroup --query properties.accessPolicies
    

    Zie de objectverwijzing accessPolicyEntry voor meer informatie over het gebruik van de accessPolicies sectie van de sjabloon.

  • Controleer of de Key Vault-resource al bestaat. Als dit het geval is, maakt u deze niet opnieuw via de sjabloon. Als u bijvoorbeeld de bestaande sleutelkluis wilt gebruiken in plaats van een nieuwe te maken, moet u de volgende wijzigingen aanbrengen in de sjabloon:

    • Voeg een parameter toe die de id van een bestaande Key Vault-resource accepteert:

      "keyVaultId":{
        "type": "string",
        "metadata": {
          "description": "Specify the existing Key Vault ID."
        }
      }
      
    • Verwijder de sectie waarmee een Key Vault-resource wordt gemaakt:

      {
        "type": "Microsoft.KeyVault/vaults",
        "apiVersion": "2018-02-14",
        "name": "[variables('keyVaultName')]",
        "location": "[parameters('location')]",
        "properties": {
          "tenantId": "[variables('tenantId')]",
          "sku": {
            "name": "standard",
            "family": "A"
          },
          "accessPolicies": [
          ]
        }
      },
      
    • Verwijder de "[resourceId('Microsoft.KeyVault/vaults', variables('keyVaultName'))]", regel uit de dependsOn sectie van de werkruimte. Wijzig ook de keyVault vermelding in de properties sectie van de werkruimte om te verwijzen naar de keyVaultId parameter:

      {
        "type": "Microsoft.MachineLearningServices/workspaces",
        "apiVersion": "2019-11-01",
        "name": "[parameters('workspaceName')]",
        "location": "[parameters('location')]",
        "dependsOn": [
          "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
          "[resourceId('Microsoft.Insights/components', variables('applicationInsightsName'))]"
        ],
        "identity": {
          "type": "systemAssigned"
        },
        "sku": {
          "tier": "[parameters('sku')]",
          "name": "[parameters('sku')]"
        },
        "properties": {
          "friendlyName": "[parameters('workspaceName')]",
          "keyVault": "[parameters('keyVaultId')]",
          "applicationInsights": "[resourceId('Microsoft.Insights/components',variables('applicationInsightsName'))]",
          "storageAccount": "[resourceId('Microsoft.Storage/storageAccounts/',variables('storageAccountName'))]"
        }
      }
      

    Na deze wijzigingen kunt u de id van de bestaande Key Vault-resource opgeven bij het uitvoeren van de sjabloon. De sjabloon gebruikt de sleutelkluis vervolgens opnieuw door de eigenschap van de werkruimte in te stellen op de keyVault id.

    Als u de id van de Sleutelkluis wilt ophalen, kunt u verwijzen naar de uitvoer van de oorspronkelijke sjabloontaak of de Azure CLI gebruiken. De volgende opdracht is een voorbeeld van het gebruik van de Azure CLI om de Key Vault-resource-id op te halen:

    az keyvault show --name mykeyvault --resource-group myresourcegroup --query id
    

    Met deze opdracht wordt een waarde geretourneerd die lijkt op de volgende tekst:

    /subscriptions/{subscription-guid}/resourceGroups/myresourcegroup/providers/Microsoft.KeyVault/vaults/mykeyvault