Självstudie: Använda exporterad mall från Azure Portal
I den här självstudieserien skapar du en mall för att distribuera ett Azure Storage-konto. I de kommande två självstudierna lägger du till en App Service-plan och en webbplats. I stället för att skapa mallar från grunden får du lära dig hur du exporterar mallar från Azure Portal och hur du använder exempelmallar från Azure-snabbstartsmallar. Du anpassar dessa mallar för din användning. Den här självstudien fokuserar på att exportera mallar och anpassa resultatet för mallen. Den här instruktionen tar 14 minuter att slutföra.
Förutsättningar
Vi rekommenderar att du slutför självstudien om utdata, men det krävs inte.
Du måste ha Visual Studio Code med tillägget Resource Manager Tools och antingen Azure PowerShell eller Azure Command-Line Interface (CLI). Mer information finns i mallverktyg.
Granska mall
I slutet av föregående självstudie hade mallen följande JSON-fil:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storagePrefix": {
"type": "string",
"minLength": 3,
"maxLength": 11
},
"storageSKU": {
"type": "string",
"defaultValue": "Standard_LRS",
"allowedValues": [
"Standard_LRS",
"Standard_GRS",
"Standard_RAGRS",
"Standard_ZRS",
"Premium_LRS",
"Premium_ZRS",
"Standard_GZRS",
"Standard_RAGZRS"
]
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]"
}
},
"variables": {
"uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2021-09-01",
"name": "[variables('uniqueStorageName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('storageSKU')]"
},
"kind": "StorageV2",
"properties": {
"supportsHttpsTrafficOnly": true
}
}
],
"outputs": {
"storageEndpoint": {
"type": "object",
"value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
}
}
}
Den här mallen fungerar bra för att distribuera lagringskonton, men du kanske vill lägga till fler resurser i den. Du kan exportera en mall från en befintlig resurs för att snabbt hämta JSON för den resursen.
Skapa apptjänstplan
Logga in på Azure-portalen.
Välj Skapa en resurs.
I Söktjänster och Marketplace anger du App Service Plan och väljer sedan App Service Plan.
Välj Skapa.
På sidan Skapa App Service-plan anger du följande:
- Prenumeration: Välj din Azure-prenumeration på den nedrullningsbara menyn.
- Resursgrupp: Välj Skapa ny och ange sedan ett namn. Ange ett annat resursgruppsnamn än det du har använt i den här självstudieserien.
- Namn: Ange ett namn för App Service-planen.
- Operativsystem: Välj Linux.
- Region: Välj en Azure-plats från den nedrullningsbara menyn, till exempel USA, centrala.
- Prisnivå: Om du vill spara kostnader väljer du Ändra storlek för att ändra SKU och storlek till första Basic (B1) under Dev/Test för mindre krävande arbetsbelastningar.
Välj Granska och skapa.
Välj Skapa. Det tar en stund att skapa resursen.
Exportera mall
Välj Gå till resurs.
På den vänstra menyn, under Automation, väljer du Exportera mall.
Exportmallsfunktionen tar det aktuella tillståndet för en resurs och genererar en mall för att distribuera den. Att exportera en mall kan vara ett användbart sätt att snabbt få den JSON du behöver för att distribuera en resurs.
Titta på
Microsoft.Web/serverfarms
definitionen och parameterdefinitionen i den exporterade mallen. Du behöver inte kopiera de här avsnitten. Du kan bara använda den här exporterade mallen som ett exempel på hur du vill lägga till den här resursen i mallen.
Viktigt
Vanligtvis är den exporterade mallen mer utförlig än du kanske vill när du skapar en mall. SKU-objektet i den exporterade mallen har till exempel fem egenskaper. Den här mallen fungerar, men du kan bara använda name
egenskapen . Du kan börja med den exporterade mallen och sedan ändra den efter behov.
Ändra befintlig mall
Den exporterade mallen ger dig det mesta av den JSON du behöver, men du måste anpassa den för din mall. Var särskilt uppmärksam på skillnader i parametrar och variabler mellan mallen och den exporterade mallen. Det är uppenbart att exportprocessen inte känner till de parametrar och variabler som du redan har definierat i mallen.
I följande exempel visas tilläggen till mallen. Den innehåller den exporterade koden plus några ändringar. Först ändras namnet på parametern så att det matchar din namngivningskonvention. För det andra används platsparametern för platsen för App Service-planen. För det tredje tar den bort några av de egenskaper där standardvärdet är bra.
Kopiera hela filen och ersätt mallen med dess innehåll.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storagePrefix": {
"type": "string",
"minLength": 3,
"maxLength": 11
},
"storageSKU": {
"type": "string",
"defaultValue": "Standard_LRS",
"allowedValues": [
"Standard_LRS",
"Standard_GRS",
"Standard_RAGRS",
"Standard_ZRS",
"Premium_LRS",
"Premium_ZRS",
"Standard_GZRS",
"Standard_RAGZRS"
]
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]"
},
"appServicePlanName": {
"type": "string",
"defaultValue": "exampleplan"
}
},
"variables": {
"uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2021-09-01",
"name": "[variables('uniqueStorageName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('storageSKU')]"
},
"kind": "StorageV2",
"properties": {
"supportsHttpsTrafficOnly": true
}
},
{
"type": "Microsoft.Web/serverfarms",
"apiVersion": "2021-03-01",
"name": "[parameters('appServicePlanName')]",
"location": "[parameters('location')]",
"sku": {
"name": "B1",
"tier": "Basic",
"size": "B1",
"family": "B",
"capacity": 1
},
"kind": "linux",
"properties": {
"perSiteScaling": false,
"reserved": true,
"targetWorkerCount": 0,
"targetWorkerSizeId": 0
}
}
],
"outputs": {
"storageEndpoint": {
"type": "object",
"value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
}
}
}
Distribuera mallen
Använd antingen Azure CLI eller Azure PowerShell för att distribuera en mall.
Om du inte har skapat resursgruppen kan du läsa Skapa resursgrupp. Exemplet förutsätter att du har angett variabeln templateFile
till sökvägen till mallfilen, som du ser i den första självstudien.
New-AzResourceGroupDeployment `
-Name addappserviceplan `
-ResourceGroupName myResourceGroup `
-TemplateFile $templateFile `
-storagePrefix "store" `
-storageSKU Standard_LRS
Anteckning
Om distributionen misslyckas använder du växeln verbose
för att hämta information om de resurser som du skapar. Använd växeln debug
för att få mer information om felsökning.
Verifiera distributionen
Du kan verifiera distributionen genom att utforska resursgruppen från Azure Portal.
- Logga in på Azure-portalen.
- Välj Resursgrupper på den vänstra menyn.
- Välj den resursgrupp som du distribuerade till.
- Resursgruppen innehåller ett lagringskonto och en App Service-plan.
Rensa resurser
Om du går vidare till nästa självstudie behöver du inte ta bort resursgruppen.
Om du stoppar nu kanske du vill ta bort resursgruppen.
- I Azure Portal väljer du Resursgrupper på den vänstra menyn.
- Ange resursgruppens namn i fältet Filtrera efter fält... text.
- Markera kryssrutan bredvid myResourceGroup och välj myResourceGroup eller resursgruppens namn.
- Välj Ta bort resursgrupp på den översta menyn.
Nästa steg
Du har lärt dig hur du exporterar en mall från Azure Portal och hur du använder den exporterade mallen för din mallutveckling. Du kan också använda Azure-snabbstartsmallar för att förenkla mallutvecklingen.