Server farm (service plan) SKUs
Building on Shui... Use the following fragment in your template:
{
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"appServicePlanSkuName": {
"type": "string",
"allowedValues": [
//name Tier Full name
"D1", //Shared an D1 Shared
"F1", //Free an F1 Free
"B1", //Basic an B1 Basic
"B2", //Basic an B2 Basic
"B3", //Basic an B3 Basic
"S1", //Standard an S1 Standard
"S2", //Standard an S2 Standard
"S3", //Standard an S3 Standard
"P1", //Premium an P1 Premium
"P2", //Premium an P2 Premium
"P3", //Premium an P3 Premium
"P1V2", //PremiumV2 an P1V2 PremiumV2
"P2V2", //PremiumV2 an P2V2 PremiumV2
"P3V2", //PremiumV2 an P3V2 PremiumV2
"I1", //Isolated an I2 Isolated
"I2", //Isolated an I2 Isolated
"I3", //Isolated an I3 Isolated
"Y1", //Dynamic a function consumption plan
"EP1", //ElasticPremium
"EP2", //ElasticPremium
"EP3" //ElasticPremium
]
},
...
Then define Microsoft.Web/serverFarms resource:
"resources": [
{
"location": "[parameters('location')]",
"name": "[parameters('appServicePlanName')]",
"type": "Microsoft.Web/serverFarms",
"apiVersion": "2018-02-01",
"kind": "linux",
"properties": {
"name": "[parameters('appServicePlanName')]",
"reserved": true,
"targetWorkerCount": 1,
"targetWorkerSizeId": "[parameters('appServicePlanWorkerSizeId')]",
},
"sku": {
"name": "[parameters('appServicePlanSkuName')]"
}
}
...
There are various ways to find the sku and capabilities for resources. This link references a few options for you: https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-sku-not-available-errors
The current server farm descriptions are:
name Tier Full name
D1 Shared an D1 Shared
F1 Free an F1 Free
B1 Basic an B1 Basic
B2 Basic an B2 Basic
B3 Basic an B3 Basic
S1 Standard an S1 Standard
S2 Standard an S2 Standard
S3 Standard an S3 Standard
P1 Premium an P1 Premium
P2 Premium an P2 Premium
P3 Premium an P3 Premium
P1V2 PremiumV2 an P1V2 PremiumV2
P2V2 PremiumV2 an P2V2 PremiumV2
P3V2 PremiumV2 an P3V2 PremiumV2
I1 Isolated an I2 Isolated
I2 Isolated an I2 Isolated
I3 Isolated an I3 Isolated
Y1 Dynamic a function consumption plan
to deploy a server farm use this resource definition in ARM:
{
"type": "Microsoft.Web/serverfarms",
"apiVersion": "2016-09-01",
"name": "[parameters('hostingPlanName')]",
"location": "[resourceGroup().location]",
"properties": {
"name": "[parameters('hostingPlanName')]"
},
"sku": {
"name": "[parameters('hostingPlanSkuName')]",
"tier": "[parameters('hostingPlanSkuTier')]"
}
}
alternatively for a consumption plan; you can use a more specific api version:
{
"type": "Microsoft.Web/serverfarms",
"apiVersion": "2015-04-01",
"name": "[variables('hostingPlanName')]",
"location": "[resourceGroup().location]",
"properties": {
"name": "[variables('hostingPlanName')]",
"computeMode": "Dynamic",
"sku": "Dynamic"
}
}
is there an Y2 consumption plan?
Currently, Azure does not support this, Azure only support one type consumption plan.
More information about this please refer to this official document:Azure App Service plan overview.