如何在 Azure 资源管理器模板中使用现有的 Microsoft.Web/serverfarms?

How to use a existing Microsoft.Web/serverfarms in a Azure Resource Manager Template?

我想将网站 (Microsoft.Web/sites) 资源部署到现有的托管计划 (Microsoft.Web/serverfarms),而无需在 ARM 模板中定义 sku、workersize 等.它应该按原样使用托管计划而不更改它。但是 sku 似乎是托管计划定义所必需的,而托管计划定义似乎是网站定义所必需的。

目前读取hosting plan的sku并设置为ARM模板中的参数,但有时还是会在azure中触发scaling操作并重启hosting plan上的所有网站

在 ARM 模板中设置托管计划唯一需要的是该 serverFarm 的 resourceId - 即下面的 serverFarmId 属性...

      "name": "[variables('websiteName')]",
      "type": "Microsoft.Web/sites",
      "location": "centralus",
      "apiVersion": "2015-08-01",
      "dependsOn": [ ],
      "tags": {
          "displayName": "website"
      },
      "properties": {
          "name": "[variables('websiteName')]",
          "serverFarmId": "[resourceId(parameters('serverFarmResourceGroupName'), 'Microsoft.Web/serverFarms', parameters('AppSvcPlanName'))]"
      }

那是准系统,但它会将 Web 应用程序放入现有的服务器场。