使用 Azure CLI 创建应用服务应用并部署专用终结点

本示例脚本使用其相关资源,在应用服务中创建应用,然后部署专用终结点。

如果没有 Azure 试用版订阅,请在开始前创建一个试用版订阅

先决条件

  • 如果需要,请安装 Azure CLI 来运行 CLI 参考命令。

    • 如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 若要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅登录 Azure CLI

    • 出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展详细信息,请参阅使用 Azure CLI 的扩展

    • 运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade

  • 本教程需要 Azure CLI 版本 2.0.28 或更高版本。

创建资源组

创建任何资源之前,必须创建一个资源组以托管 Web 应用、虚拟网络和其他网络组件。 使用 az group create 创建资源组。 此示例在 chinaeast2 位置创建一个名为 myResourceGroup 的资源组 :

az group create --name myResourceGroup --location chinaeast2 

创建应用服务计划

需要创建应用服务计划来托管 Web 应用。 使用 az appservice plan create 创建应用服务计划。 此示例在“chinaeast2”位置创建名为 myAppServicePlan 的应用服务计划,该计划包含 P1V2 SKU 并仅有一个辅助角色 :

az appservice plan create \
--name myAppServicePlan \
--resource-group myResourceGroup \
--location chinaeast2 \
--sku P1V2 \
--number-of-workers 1

创建 Web 应用

拥有应用服务计划后,即可部署 Web 应用。 使用 [az appservice plan create](https://docs.azure.cn/cli/webapp#az_webapp_create 创建 Web 应用。 此示例在名为 myAppServicePlan 的计划中创建一个名为 mySiteName 的 Web 应用

az webapp create \
--name mySiteName \
--resource-group myResourceGroup \
--plan myAppServicePlan

创建 VNet

使用 az network vnet create 创建虚拟网络。 此示例创建一个名为 myVNet 的默认虚拟网络,其中包含一个名为 mySubnet 的子网 :

az network vnet create \
--name myVNet \
--resource-group myResourceGroup \
--location chinaeast2 \
--address-prefixes 10.8.0.0/16 \
--subnet-name mySubnet \
--subnet-prefixes 10.8.100.0/24

配置子网

需要更新子网以禁用专用终结点网络策略。 使用 az network vnet subnet update 更新名为 mySubnet 的子网配置:

az network vnet subnet update \
--name mySubnet \
--resource-group myResourceGroup \
--vnet-name myVNet \
--disable-private-endpoint-network-policies true

创建专用终结点

使用 az network Private-Endpoint create 为 Web 应用创建专用终结点。 本示例在子网 mySubnet 的 VNet myVNet 中创建一个名为 myPrivateEndpoint 的专用终结点,该终结点使用名为 myConnectionName 的连接,连接到我的 Web 应用 (/subscriptions/SubscriptionID/resourceGroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp) 的资源 ID,组参数是 Web 应用类型的站点 。

az network private-endpoint create \
--name myPrivateEndpoint \
--resource-group myResourceGroup \
--vnet-name myVNet \
--subnet mySubnet \
--connection-name myConnectionName \
--private-connection-resource-id /subscriptions/SubscriptionID/resourceGroups/myResourceGroup/providers/Microsoft.Web/sites/myWebApp \
--group-id sites

配置专用区域

最后,需要创建一个名为“privatelink.chinacloudsites.cn”的专用 DNS 区域,该区域链接到 VNet 以解析 Web 应用的 DNS 名称。

az network private-dns zone create \
--name privatelink.chinacloudsites.cn \
--resource-group myResourceGroup

az network private-dns link vnet create \
--name myDNSLink \
--resource-group myResourceGroup \
--registration-enabled false \
--virtual-network myVNet \
--zone-name privatelink.chinacloudsites.cn

az network private-endpoint dns-zone-group create \
--name myZoneGroup \
--resource-group myResourceGroup \
--endpoint-name myPrivateEndpoint \
--private-dns-zone privatelink.chinacloudsites.cn \
--zone-name privatelink.chinacloudsites.cn

清理部署

运行示例脚本后,可以使用以下命令删除资源组以及与其关联的所有资源。

az group delete --name myResourceGroup

后续步骤