本快速入门介绍如何使用 Azure 资源管理器模板(ARM 模板)创建分布式拒绝服务(DDoS)保护计划和虚拟网络,然后为虚拟网络启用保护计划。 Azure DDoS 网络保护计划跨订阅定义一组已启用 DDoS 防护的虚拟网络。 可以为组织配置一个 DDoS 防护计划,然后从多个订阅将虚拟网络链接到相同计划。
Azure 资源管理器模板是定义项目基础结构和配置的 JavaScript 对象表示法 (JSON) 文件。 模板使用声明性语法。 你可以在不编写用于创建部署的编程命令序列的情况下,描述预期部署。
如果你的环境满足先决条件,并且你熟悉如何使用 ARM 模板,请选择“部署到 Azure”按钮。 模板将在 Azure 门户中打开。
先决条件
如果没有 Azure 订阅,请在开始前创建一个试用版订阅。
查看模板
本快速入门中使用的模板来自 Azure 快速启动模板。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "14909118711877377105"
}
},
"parameters": {
"ddosProtectionPlanName": {
"type": "string",
"metadata": {
"description": "Specify a DDoS protection plan name."
}
},
"virtualNetworkName": {
"type": "string",
"metadata": {
"description": "Specify a DDoS virtual network name."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Specify a location for the resources."
}
},
"vnetAddressPrefix": {
"type": "string",
"defaultValue": "172.17.0.0/16",
"metadata": {
"description": "Specify the virtual network address prefix"
}
},
"subnetPrefix": {
"type": "string",
"defaultValue": "172.17.0.0/24",
"metadata": {
"description": "Specify the virtual network subnet prefix"
}
},
"ddosProtectionPlanEnabled": {
"type": "bool",
"defaultValue": true,
"metadata": {
"description": "Enable DDoS protection plan."
}
}
},
"resources": [
{
"type": "Microsoft.Network/ddosProtectionPlans",
"apiVersion": "2021-05-01",
"name": "[parameters('ddosProtectionPlanName')]",
"location": "[parameters('location')]"
},
{
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2021-05-01",
"name": "[parameters('virtualNetworkName')]",
"location": "[parameters('location')]",
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('vnetAddressPrefix')]"
]
},
"subnets": [
{
"name": "default",
"properties": {
"addressPrefix": "[parameters('subnetPrefix')]"
}
}
],
"enableDdosProtection": "[parameters('ddosProtectionPlanEnabled')]",
"ddosProtectionPlan": {
"id": "[resourceId('Microsoft.Network/ddosProtectionPlans', parameters('ddosProtectionPlanName'))]"
}
},
"dependsOn": [
"[resourceId('Microsoft.Network/ddosProtectionPlans', parameters('ddosProtectionPlanName'))]"
]
}
]
}
该模板定义了两个资源:
部署模板
在本示例中,模板会新建资源组、DDoS 防护计划和虚拟网络。
要登录到 Azure 并打开模板,请选择“部署到 Azure”按钮。
输入值以创建新的资源组、DDoS 保护计划和虚拟网络名称。
- 订阅:在其中部署资源的 Azure 区域的名称。
- 资源组:选择现有资源组或创建新资源组。
- 区域:在其中部署了资源组的区域,例如中国东部。
- Ddos 防护计划名称:新 DDoS 防护计划的名称。
- 虚拟网络名称:为新虚拟网络创建一个名称。
- 位置:使用资源组所在区域部署资源的函数。
- Vnet 地址前缀:使用默认值或输入虚拟网络地址。
- 子网前缀:使用默认值或输入虚拟网络子网。
-
启用 Ddos 防护计划:默认为
true
,以启用 DDoS 防护计划。
选择“查看 + 创建”。
验证是否已通过模板验证,然后选择“创建”以开始部署。
查看已部署的资源
要复制 Azure CLI 或 Azure PowerShell 命令,请选择“复制”按钮。 单击“试用”按钮打开 Azure 本地 Shell 并运行命令。
az network ddos-protection show \
--resource-group MyResourceGroup \
--name MyDdosProtectionPlan
输出显示新资源。
{
"etag": "W/\"abcdefgh-1111-2222-bbbb-987654321098\"",
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/MyResourceGroup/providers/Microsoft.Network/ddosProtectionPlans/MyDdosProtectionPlan",
"location": "chinaeast",
"name": "MyDdosProtectionPlan",
"provisioningState": "Succeeded",
"resourceGroup": "MyResourceGroup",
"resourceGuid": null,
"tags": null,
"type": "Microsoft.Network/ddosProtectionPlans",
"virtualNetworks": [
{
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/MyResourceGroup/providers/Microsoft.Network/virtualNetworks/MyVNet",
"resourceGroup": "MyResourceGroup"
}
]
}
清理资源
完成后,可以删除资源。 该命令将删除资源组及其包含的所有资源。
az group delete --name MyResourceGroup
注释
若要删除 DDoS 保护计划,请先取消关联所有虚拟网络。
后续步骤
要了解如何查看和配置 DDoS 防护计划的遥测,请继续阅读教程。