使用 Azure 资源管理器模板创建应用服务环境

可以使用 Azure 资源管理器模板创建应用服务环境,以便进行可重复的部署。

注意

本文介绍与独立 v2 应用服务计划一起使用的应用服务环境 v3。

概述

可以通过能够访问 Internet 的终结点或 Azure 虚拟网络内部地址上的终结点创建 Azure 应用服务环境。 使用内部终结点创建时,该终结点由被称为内部负载均衡器 (ILB) 的 Azure 组件提供。 内部 IP 地址上的应用服务环境称为 ILB ASE。 具有公共终结点的应用服务环境称为外部 ASE。

可使用 Azure 门户或 Azure 资源管理器模板创建 ASE。 本文介绍使用资源管理器模板创建外部 ESE 或 ILB ASE 所需的步骤和语法。 了解如何在 Azure 门户中创建应用服务环境

在 Azure 门户中创建应用服务环境时,可同时创建你自己的虚拟网络,或者选择要部署到的预先存在的虚拟网络。

从模板创建应用服务环境时,必须做好以下准备:

  • 一个 Azure 虚拟网络。
  • 该虚拟网络中的子网。 建议使用带 256 个地址的大小为 /24 的子网,以适应将来的增长和缩放需求。 创建应用服务环境后无法更改大小。
  • 要部署到的位置。

配置应用服务环境

用于创建应用服务环境的基本资源管理器模板如下所示:

{
    "type": "Microsoft.Web/hostingEnvironments",
    "apiVersion": "2022-03-01",
    "name": "[parameters('aseName')]",
    "location": "[resourceGroup().location]",
    "kind": "ASEV3",
    "properties": {
        "internalLoadBalancingMode": "Web, Publishing",
        "virtualNetwork": {
            "id": "[parameters('subnetResourceId')]"
        },
        "networkingConfiguration": { },
        "customDnsSuffixConfiguration": { }
    },
    "identity": {
        "type": "SystemAssigned"
    }
}

除了核心属性外,还可以使用其他配置选项来配置应用服务环境。

  • 名称:必需。 此参数定义唯一的应用服务环境名称。 名称不得超过 36 个字符。
  • virtualNetwork -> id:必需。 指定子网的资源 ID。 子网必须为空,并且必须委托给 Microsoft.Web/hostingEnvironments
  • internalLoadBalancingMode:必需。 在大多数情况下,此属性设置为“Web, Publishing”,表示 HTTP/HTTPS 流量和 FTP 流量都在内部 VIP(内部负载均衡器)上。 如果此属性设置为“None”,则所有流量将保留在公共 VIP(外部负载均衡器)上。
  • zoneRedundant:可选。 如果将应用服务环境部署到可用性区域 (AZ),则使用 true/false 定义此参数。 有关详细信息,请参阅区域和可用性区域
  • dedicatedHostCount:可选。 在大多数情况下,此属性设置为 0 或省略。如果你想要在专用主机上部署应用服务环境并为其设置物理硬件隔离,则可将其设置为 2。
  • upgradePreference:可选。 定义升级是自动启动,还是提供 15 天时限来启动部署。 有效值为“None”、“Early”、“Late”、“Manual”。 有关升级首选项的详细信息。
  • clusterSettings:可选。 有关详细信息,请参阅群集设置
  • networkingConfiguration -> allowNewPrivateEndpointConnections:可选。 有关详细信息,请参阅网络配置
  • networkingConfiguration -> remoteDebugEnabled:可选。 有关详细信息,请参阅网络配置
  • networkingConfiguration -> ftpEnabled:可选。 有关详细信息,请参阅网络配置
  • networkingConfiguration -> inboundIpAddressOverride:可选。 允许你使用自己的 Azure 公共 IP 地址(指定资源 ID)创建应用服务环境,或者为 ILB 部署定义静态 IP。 创建应用服务环境后无法更改此设置。
  • customDnsSuffixConfiguration:可选。 允许你为应用服务环境指定自定义域后缀。 需要密钥保管库中的有效证书,并使用托管标识进行访问。 有关特定参数的详细信息,请参阅配置自定义域后缀

注意

创建应用服务环境 v3 时,不支持属性“dnsSuffix”、“multiSize”、“frontEndScaleFactor”、“userWhitelistedIpRanges”和“ipSslAddressCount”。

部署应用服务环境

创建 ARM 模板(例如名为 azuredeploy.json)和可选的参数文件(例如名为 azuredeploy.parameters.json)后,可以使用 Azure CLI 代码片段创建应用服务环境。 更改文件路径,以匹配资源管理器模板文件在计算机上的位置。 请记得为资源组名称提供你自己的值:

templatePath="PATH/azuredeploy.json"
parameterPath="PATH/azuredeploy.parameters.json"

az deployment group create --resource-group "YOUR-RG-NAME-HERE" --template-file $templatePath --parameters $parameterPath

创建应用服务环境通常需要大约一个小时,但如果它是区域冗余应用服务环境或者我们在某个区域中遇到意外需求,则创建过程可能需要几个小时才能完成。

后续步骤