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

为虚拟机规模集配置入站 NAT 规则

本文介绍如何配置、更新和删除虚拟机规模集实例的入站 NAT 规则。 Azure 为入站 NAT 规则提供了两个选项。 第一个选项是能够将单个入站 NAT 规则添加到单个后端资源。 第二个选项是能够为后端池创建一组入站 NAT 规则。 建议在使用虚拟机规模集时对入站 NAT 规则使用第二个选项,因为此选项提供了更好的灵活性和可伸缩性。 详细了解 入站 NAT 规则的各种选项。

先决条件

添加入站 NAT 规则

无法将单个入站 NAT 规则添加到虚拟机规模集。 但是,你可以为虚拟机规模集中的所有实例添加一组具有定义的前端端口范围和后端端口的入站 NAT 规则。

若要为虚拟机规模集添加一组入站 NAT 规则,可以使用负载均衡器通过命令az network lb inbound-nat-rule create创建一组入站 NAT 规则,以定位后端池。如下所示:


 az network lb inbound-nat-rule create \
    --resource-group MyResourceGroup \
    --name MyNatRule \
    --lb-name MyLb \
    --protocol TCP \
    --frontend-port-range-start 200 \
    --frontend-port-range-end 250 \
    --backend-port 22 \
    --backend-pool-name mybackend \
    --frontend-ip-name MyFrontendIp

新的入站 NAT 规则不能具有与现有入站 NAT 规则重叠的前端端口范围。 若要查看设置的现有入站 NAT 规则,请使用 az network lb inbound-nat-rule show,如下所示:


az network lb inbound-nat-rule show \
    --lb-name <load-balancer-name> \
    --name <nat-rule-name> \
    --resource-group <resource-group-name>

在虚拟机规模集后面添加多个入站 NAT 规则

鉴于前端端口范围不重叠,多个入站 NAT 规则可以附加到单个虚拟机规模集。 这是通过具有多个入站 NAT 规则集来实现的,这些规则以相同的后端池为目标,如下所示:

az network lb inbound-nat-rule create \
    --resource-group MyResourceGroup \
    --name MyNatRule \
    --lb-name MyLb \
    --protocol TCP \
    --frontend-port-range-start 200 \
    --frontend-port-range-end 250 \
    --backend-port 22 \
    --backend-pool-name mybackend \
    --frontend-ip-name MyFrontendIp 

az network lb inbound-nat-rule create \
    --resource-group MyResourceGroup \
    --name MyNatRule2 \
    --lb-name MyLb \
    --protocol TCP \
    --frontend-port-range-start 150 \
    --frontend-port-range-end 180 \
    --backend-port 80 \
    --backend-pool-name mybackend \
    --frontend-ip-name MyFrontendIp 

更新入站 NAT 规则

将入站 NAT 规则与虚拟机规模集一起使用时,无法更新单个入站 NAT 规则。 但是,可以使用 az network lb inbound-nat-rule update 更新一组针对后端池的入站 NAT 规则,如下所示:


az network lb inbound-nat-rule update \
    --resource-group MyResourceGroup \
    --name MyNatRule \
    --lb-name MyLb \
    --frontend-port-range-start 150 \
    --frontend-port-range-end 250 

删除入站 NAT 规则

将入站 NAT 规则与虚拟机规模集配合使用时,无法删除单个入站 NAT 规则。 但是,可以通过删除面向特定后端池的入站 NAT 规则来删除整个入站 NAT 规则集。 使用 az network lb inbound-nat-rule delete 来删除规则集。


az network lb inbound-nat-rule delete --resourcegroup MyResourceGroup --name MyNatRule --lb-name MyLb 

后续步骤

若要详细了解 Azure 负载均衡器和虚拟机规模集,请阅读有关概念的详细信息。

了解如何 将 Azure 负载均衡器与虚拟机规模集配合使用