你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在可用性区域中创建区域冗余虚拟网络网关

可以在 Azure 可用性区域中部署 VPN 网关和 ExpressRoute 网关。 这样可以提高虚拟网络网关的复原性、可伸缩性和可用性。 如果在可用性区域中部署网关,可以在地理位置和逻辑上将区域内的网关分隔开来,同时还能保护本地网络与 Azure 的连接免受区域级故障的影响。 有关详细信息,请参阅关于区域冗余虚拟网络网关什么是可用性区域?以及可用性区域服务和区域支持

Azure 门户工作流

本部分概述了为 Azure VPN 网关指定区域冗余网关的基本工作流。

VPN 网关

使用以下步骤创建虚拟网络并配置虚拟网络网关:创建 VPN 网关。 创建网关时,请配置相应的 SKU 和可用性区域设置。

  • SKU:从下拉列表中选择“AZ”SKU。 例如,VpnGw2AZ。 如果不选择 AZ SKU,则无法配置可用性区域设置。

    屏幕截图显示了 VPN 网关 SKU 选择,可选择可用性区域 SKU。

  • 可用性区域:从下拉列表中选择可用性区域。

    屏幕截图显示了可用性区域下拉列表,可选择可用性区域。

ExpressRoute

对于 ExpressRoute 网关,请遵循 ExpressRoute 文档,选择适当的 ExpressRoute 网关区域冗余 SKU

  • SKU:从下拉列表中选择“AZ”SKU。 例如,ErGw2AZ。 如果不选择 AZ SKU,则无法配置可用性区域设置。

    屏幕截图显示了 SKU 选择,可选择可用性区域 SKU。

  • 可用性区域:从下拉列表中选择可用性区域。

    屏幕截图显示了可用性区域选择,可选择可用性区域。

PowerShell 工作流

本文使用 PowerShell cmdlet。 若要运行 cmdlet,可以使用 Azure Cloud Shell。 Cloud Shell 是免费的交互式 shell,可以使用它运行本文中的步骤。 它预安装有常用 Azure 工具并将其配置与帐户一起使用。

要打开 Cloud Shell,只需从代码块的右上角选择“打开 Cloudshell”。 也可以在单独的浏览器标签页中通过转到 https://shell.azure.com/powershell 打开 Cloud Shell。 选择“复制”以复制代码块,将其粘贴到 Cloud Shell 中,然后选择“Enter”键来运行这些代码。

还可以在计算机本地安装并运行 Azure PowerShell cmdlet。 PowerShell cmdlet 经常更新。 如果尚未安装最新版本,说明中指定的值可能会失败。 若要查找计算机上安装的 Azure PowerShell 版本,请使用 Get-Module -ListAvailable Az cmdlet。 若要进行安装或更新,请参阅安装 Azure PowerShell 模块

1.声明变量

声明要使用的变量。 使用以下示例,根据需要将值替换为自己的值。 如果在练习期间的任何时候关闭了 PowerShell/Cloud Shell 会话,只需再次复制和粘贴该值,重新声明变量。 指定位置时,请确认指定的区域是否受支持。 有关详细信息,请参阅可用性区域服务和区域支持

$RG1         = "TestRG1"
$VNet1       = "VNet1"
$Location1   = "EastUS"
$FESubnet1   = "FrontEnd"
$BESubnet1   = "Backend"
$GwSubnet1   = "GatewaySubnet"
$VNet1Prefix = "10.1.0.0/16"
$FEPrefix1   = "10.1.0.0/24"
$BEPrefix1   = "10.1.1.0/24"
$GwPrefix1   = "10.1.255.0/27"
$Gw1         = "VNet1GW"
$GwIP1       = "VNet1GWIP"
$GwIPConf1   = "gwipconf1"

2. 创建虚拟网络

创建资源组。

New-AzResourceGroup -ResourceGroupName $RG1 -Location $Location1

创建虚拟网络。

$fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubnet1 -AddressPrefix $FEPrefix1
$besub1 = New-AzVirtualNetworkSubnetConfig -Name $BESubnet1 -AddressPrefix $BEPrefix1
$vnet = New-AzVirtualNetwork -Name $VNet1 -ResourceGroupName $RG1 -Location $Location1 -AddressPrefix $VNet1Prefix -Subnet $fesub1,$besub1

3. 添加网关子网

网关子网包含虚拟网络网关服务使用的保留 IP 地址。 运行下面的示例,以添加并设置网关子网:

添加网关子网。

$getvnet = Get-AzVirtualNetwork -ResourceGroupName $RG1 -Name VNet1
Add-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -AddressPrefix 10.1.255.0/27 -VirtualNetwork $getvnet

设置虚拟网络的网关子网配置。

$getvnet | Set-AzVirtualNetwork

4. 请求公共 IP 地址

在这一步中,选择适用于要创建的网关的说明。 选择用于部署网关的区域取决于为公共 IP 地址指定的区域。

对于区域冗余网关

使用标准 PublicIpaddress SKU 请求获取公共 IP 地址,但不指定任何区域。 在这种情况下,创建的标准公共 IP 地址是区域冗余公共 IP。

$pip1 = New-AzPublicIpAddress -ResourceGroup $RG1 -Location $Location1 -Name $GwIP1 -AllocationMethod Static -Sku Standard

对于区块网关

使用标准 PublicIpaddress SKU 请求获取公共 IP 地址。 指定区域(1、2 或 3)。 所有网关实例都会部署在此区域中。

$pip1 = New-AzPublicIpAddress -ResourceGroup $RG1 -Location $Location1 -Name $GwIP1 -AllocationMethod Static -Sku Standard -Zone 1

5. 创建 IP 配置

$getvnet = Get-AzVirtualNetwork -ResourceGroupName $RG1 -Name $VNet1
$subnet = Get-AzVirtualNetworkSubnetConfig -Name $GwSubnet1 -VirtualNetwork $getvnet
$gwipconf1 = New-AzVirtualNetworkGatewayIpConfig -Name $GwIPConf1 -Subnet $subnet -PublicIpAddress $pip1

6.创建虚拟网络网关

VPN 网关示例

New-AzVirtualNetworkGateway -ResourceGroup $RG1 -Location $Location1 -Name $Gw1 -IpConfigurations $GwIPConf1 -GatewayType Vpn -VpnType RouteBased -GatewaySku VpnGw2AZ

ExpressRoute 示例

New-AzVirtualNetworkGateway -ResourceGroup $RG1 -Location $Location1 -Name $Gw1 -IpConfigurations $GwIPConf1 -GatewayType ExpressRoute -GatewaySku ErGw2AZ

后续步骤

有关其他配置信息,请参阅 VPN 网关ExpressRoute 页。