Quickstart: Sjabloonspecificatie maken en implementeren
Artikel
In deze quickstart ziet u hoe u een Azure Resource Manager-sjabloon (ARM-sjabloon) in een sjabloonspecificatie inpakt. Vervolgens implementeert u die sjabloonspecificatie. De sjabloonspecificatie bevat een ARM-sjabloon waarmee een opslagaccount wordt geïmplementeerd.
Als u sjabloonspecificatie wilt gebruiken met Azure PowerShell, moet u versie 5.0.0 of hoger installeren. Voor gebruik met Azure CLI hebt u versie 2.14.2 of hoger nodig.
Sjabloon maken
U maakt een sjabloonspecificatie met behulp van een lokaal sjabloon. Kopieer de volgende sjabloon en sla deze lokaal op in een bestand met de naam azuredeploy.json. In deze quickstart wordt ervan uitgegaan dat u hebt opgeslagen naar het pad c:\Templates\azuredeploy.json, maar u kunt elk pad gebruiken.
De sjabloonspecificatie is een resourcetype met de naam Microsoft.Resources/templateSpecs. Gebruik PowerShell, Azure CLI, de portal of een ARM-sjabloon om een sjabloonspecificatie te maken.
Zoek naar sjabloonspecificatie. Selecteer Sjabloonspecificatie in de beschikbare opties.
Selecteer Sjabloon importeren.
Selecteer het mappictogram.
Ga naar de lokale sjabloon die u hebt opgeslagen, en selecteer deze. Selecteer Openen.
Selecteer Importeren.
Geef de volgende waarden op:
Naam: voer een naam in voor de sjabloonspecificatie. Bijvoorbeeld storageSpec
Abonnement: selecteer een Azure-abonnement om de sjabloonspecificatie te maken.
Resourcegroep: selecteer Nieuwe maken en voer een naam voor de nieuwe resourcegroep in. Bijvoorbeeld templateSpecRG.
Locatie: selecteer een locatie voor de resourcegroep. Bijvoorbeeld West US 2.
Versie: voer een versie in voor de sjabloonspecificatie. Gebruik 1.0.
Selecteer Controleren + maken.
Selecteer Maken.
Notitie
In plaats van een ARM-sjabloon te gebruiken, raden we u aan PowerShell of CLI te gebruiken om de sjabloonspecificatie te maken. Met deze hulpprogramma's worden gekoppelde sjablonen automatisch geconverteerd naar artefacten die zijn verbonden met uw hoofdsjabloon. Wanneer u een ARM-sjabloon gebruikt om de sjabloonspecificatie te maken, moet u deze gekoppelde sjablonen handmatig toevoegen als artefacten. Dit kan gecompliceerd zijn.
Wanneer u een ARM-sjabloon gebruikt om de sjabloonspecificatie te maken, wordt de sjabloon ingesloten in de resourcedefinitie. U moet enkele wijzigingen aanbrengen in de lokale sjabloon. Kopieer de volgende sjabloon en sla deze lokaal op als azuredeploy.json.
Notitie
In de ingesloten sjabloon moeten alle sjabloonexpressies worden voorafgegaan (escaped) door een tweede vierkante haak links. Gebruik "[[ in plaats van "[. JSON-matrices gebruiken nog steeds één vierkante haak links.
az deployment group create \
--resource-group templateSpecRG \
--template-file "c:\Templates\azuredeploy.json"
Sjabloonspecificatie implementeren
Als u een sjabloonspecificatie wilt implementeren, gebruikt u dezelfde implementatieopdrachten die u gebruikt voor het implementeren van een sjabloon. Geef de resource-id van de sjabloonspecificatie door om te implementeren.
U moet de parameters opgeven op precies dezelfde manier als voor een ARM-sjabloon. Implementeer de sjabloonspecificatie opnieuw met een parameter voor het type opslagaccount.
Er is een bekend probleem met het ophalen van een sjabloonspecificatie-id en het toewijzen ervan aan een variabele in Windows PowerShell.
Implementeer de sjabloonspecificatie.
az deployment group create \
--resource-group storageRG \
--template-spec $id
U moet de parameters opgeven op precies dezelfde manier als voor een ARM-sjabloon. Implementeer de sjabloonspecificatie opnieuw met een parameter voor het type opslagaccount.
az deployment group create \
--resource-group storageRG \
--template-spec $id \
--parameters storageAccountType='Standard_GRS'
Selecteer de sjabloonspecificatie die u hebt gemaakt.
Selecteer Implementeren.
Geef de volgende waarden op:
Abonnement: selecteer een Azure-abonnement om de resource te maken.
Resourcegroep: selecteer Nieuwe maken en typ storageRG.
Type opslagaccount: selecteer Standard_GRS.
Selecteer Controleren + maken.
Selecteer Maken.
Kopieer de volgende sjabloon en sla deze lokaal op in een bestand met de naam storage.json.
az deployment group create \
--resource-group storageRG \
--template-file "c:\Templates\storage.json"
Toegang verlenen
Als u wilt dat andere gebruikers in uw organisatie uw sjabloonspecificatie implementeren, moet u hen leestoegang verlenen. U kunt de rol Lezer toewijzen aan een Microsoft Entra-groep voor de resourcegroep die sjabloonspecificaties bevat die u wilt delen. Zie Zelfstudie: Een groep toegang verlenen tot Azure-resources met behulp van Azure PowerShell voor meer informatie.
Sjabloon bijwerken
Stel dat u een wijziging hebt geïdentificeerd die u in de sjabloonspecificatie wilt aanbrengen. De volgende sjabloon is vergelijkbaar met de eerdere sjabloon, behalve dat er een voorvoegsel wordt toegevoegd voor de naam van het opslagaccount. Kopieer de volgende sjabloon, en werk het bestand azuredeploy.json bij.
In plaats van een nieuwe sjabloonspecificatie te maken voor de herziene sjabloon, voegt u een nieuwe versie toe met de naam van 2.0 de bestaande sjabloonspecificatie. Gebruikers kunnen kiezen welke versie u wilt implementeren.
Implementeer deze versie. Geef een voorvoegsel op voor de opslagaccountnaam.
az deployment group create \
--resource-group storageRG \
--template-spec $id \
--parameters namePrefix='demoaccount'
Selecteer in de sjabloonspecificatie de optie Nieuwe versie maken.
Geef de nieuwe versie de naam 2.0, en voeg eventueel notities toe. Selecteer Sjabloon bewerken.
Vervang de inhoud van de sjabloon door de bijgewerkte sjabloon. Selecteer Beoordelen en opslaan.
Selecteer Wijzigingen opslaan.
Als u de nieuwe versie wilt implementeren, selecteert u Versies
Selecteer voor de versie die u wilt implementeren, de drie punten en Implementeren.
Vul de velden in zoals u hebt gedaan bij het implementeren van de eerdere versie.
Selecteer Controleren + maken.
Selecteer Maken.
Ook hier moet u enkele wijzigingen aanbrengen in de lokale sjabloon om deze te laten werken met sjabloonspecificaties. Kopieer de volgende sjabloon en sla deze lokaal op als azuredeploy.json.