教程:使用 Azure 门户将 NAT 网关与内部负载均衡器集成
在本教程中,你将了解如何将 NAT 网关与内部负载均衡器集成。
默认情况下,Azure 标准负载均衡器是安全的。 通过启用出站 SNAT(源网络地址转换)来显式定义出站连接。
通过另一个公共负载均衡器、网络路由或在虚拟机上定义的公共 IP,为内部后端池启用了 SNAT。
NAT 网关集成取代了对后端池中虚拟机上定义的公共负载均衡器、网络路由或公共 IP 的部署。
本教程介绍如何执行下列操作:
- 创建 Azure 负载均衡器
- 为 Azure 负载均衡器的后端池创建两个虚拟机
- 创建 NAT 网关
- 验证负载均衡器后端池中虚拟机的出站连接
先决条件
具有活动订阅的 Azure 帐户。 创建试用版订阅。
使用 Azure 帐户登录到 Azure 门户。
创建 NAT 网关
在部署 NAT 网关资源和其他资源之前,需要一个资源组来包含部署的资源。 在以下步骤中,你将创建资源组、NAT 网关资源和公共 IP 地址。 可以使用一个或多个公共 IP 地址资源和/或公共 IP 前缀。
有关公共 IP 前缀和 NAT 网关的信息,请参阅管理 NAT 网关。
在门户顶部的搜索框中,输入“NAT 网关”。 在搜索结果中选择“NAT 网关”。
选择“+ 新建”。
在“创建网络地址转换(NAT)网关”中,在“基本信息”选项卡中输入或选择以下信息 :
设置 值 项目详细信息 订阅 选择 Azure 订阅。 资源组 选择“新建”。
输入 test-rg。
选择“确定”。实例详细信息 NAT 网关名称 输入 nat-gateway 区域 选择“中国北部 3” 可用性区域 选择“无区域”。 TCP 空闲超时(分钟) 保留默认值“4”。 有关可用性区域和 NAT 网关的信息,请参阅 NAT 网关和可用性区域。
选择“出站 IP”选项卡,或者选择“下一步:出站 IP”按钮(位于页面底部) 。
在“出站 IP”选项卡中,输入或选择以下信息:
设置 值 公共 IP 地址 选择“创建新的公共 IP 地址”。
在“名称”中输入 public-ip-nat。
选择“确定”。选择“查看 + 创建”选项卡,或选择页面底部的“查看 + 创建”按钮 。
选择“创建”。
创建虚拟网络和堡垒主机
以下过程创建包含资源子网、Azure Bastion 子网和 Azure Bastion 主机的虚拟网络。
在门户中,搜索并选择“虚拟网络”。
在“虚拟网络”页面,选择“创建”。
在“创建虚拟网络”的“基本信息”选项卡上输入或选择以下信息:
设置 值 项目详细信息 订阅 选择订阅。 资源组 选择“test-rg”。 实例详细信息 名称 输入“vnet-1”。 区域 选择“中国北部 3”。 选择页面底部的“下一步: IP 地址”。
在“IP 地址”选项卡的“IPv4 地址空间”下,选择垃圾箱删除图标以删除任何已出现的地址空间,然后输入“10.0.0.0/16”。
选择“+ 添加子网”。
在“添加子网”中输入或选择以下信息:
设置 值 子网名称 输入“subnet-1”。 子网地址范围 输入 10.0.0.0/24。 NAT 网关 NAT 网关 选择“nat 网关” 选择 添加 。
在页面底部选择“下一步: 安全”。
在“安全性”选项卡上的“BastionHost”旁,选择“启用”。
Azure Bastion 使用浏览器通过安全外壳 (SSH) 或远程桌面协议 (RDP),通过使用其专用 IP 地址连接虚拟网络中的虚拟机。 虚拟机不需要公共 IP 地址、客户端软件或特殊配置。 有关 Azure Bastion 的详细信息,请参阅 Azure Bastion
输入或选择以下信息:
设置 值 Bastion 名称 输入“堡垒”。 AzureBastionSubnet 地址空间 输入“10.0.1.0/26”。 公共 IP 地址 选择“新建”。
在“名称”中输入“public-ip”。
选择“确定”。选择屏幕底部的“查看 + 创建”,然后在验证通过时选择“创建”。
创建负载均衡器
在本部分,你将创建一个内部负载均衡器来对虚拟机进行负载均衡。 内部负载均衡器用于通过专用 IP 地址对虚拟网络中的流量进行负载均衡。
在创建负载均衡器的过程中,配置以下内容:
- 前端 IP 地址
- 后端池
- 入站负载均衡规则
在门户顶部的搜索框中,输入“负载均衡器”。 在搜索结果中选择“负载均衡器”。
在“负载均衡器”页上,选择“创建” 。
在“创建负载均衡器”页的“基本信息”选项卡中,输入或选择以下信息:
设置 值 项目详细信息 订阅 选择订阅。 资源组 选择“test-rg”。 实例详细信息 名称 输入“load-balancer” 区域 选择“中国北部 3”。 SKU 保留默认值“标准”。 类型 选择“内部”。 在页面底部选择“下一步: 前端 IP 配置”。
在“前端 IP 配置”中,选择“+ 添加前端 IP 配置”。
在“名称”中输入“frontend”。
在“子网”中选择“subnet-1 (10.0.0.0/24)”。
保留其余选项的默认值。
选择 添加 。
在页面底部选择“下一步: 后端池”。
在“后端池”选项卡上,选择“+ 添加后端池” 。
在“添加后端池”的“名称”中输入“backend-pool”。
对于“后端池配置”,请选择“NIC”或“IP 地址” 。
选择“保存”。
选择页面底部的“下一步: 入站规则”按钮。
在“入站规则”选项卡的“负载均衡规则”中,选择“+ 添加负载均衡规则” 。
在“添加负载均衡规则”中,输入或选择以下信息:
设置 值 名称 输入“http-rule” IP 版本 选择“IPv4”。 前端 IP 地址 选择“前端”。 后端池 选择“backend-pool”。 协议 选择“TCP”。 端口 输入 80。 后端端口 输入 80。 运行状况探测 选择“新建”。
在“名称”中,输入“health-probe”。
在“协议”中选择“TCP”。
将剩余的字段保留为默认值,然后选择“确定”。会话暂留 选择“无”。 空闲超时(分钟) 输入或选择“15”。 TCP 重置 选择“启用”。 浮动 IP 选择“已禁用”。 选择“保存”。
选择页面底部的“查看 + 创建”蓝色按钮。
选择“创建”。
创建虚拟机
在本部分中,将在两个不同的区域(区域 1 和区域 2)中创建两个 VM(vm-1 和 vm-2)。
这些 VM 将添加到先前创建的负载均衡器的后端池中。
在门户顶部的搜索框中,输入“虚拟机”。 在搜索结果中,选择“虚拟机”。
选择“+ 创建”,然后选择“Azure 虚拟机”。
在“创建虚拟机”中,在“基本信息”选项卡中键入或选择值:
设置 值 项目详细信息 订阅 选择订阅。 资源组 选择“test-rg”。 实例详细信息 虚拟机名称 输入“vm-1”。 区域 选择“中国北部 3”。 可用性选项 选择“区域 1”。 安全类型 选择“标准”。 映像 选择“Ubuntu Server 22.04 LTS - Gen2”。 大小 选择一个大小。 管理员帐户 身份验证类型 选择密码。 用户名 输入“azureuser”。 Password 输入密码。 确认密码 重新输入密码。 入站端口规则 公共入站端口 选择“无”。 选择“网络”选项卡,或选择“下一步: 磁盘”,然后选择“下一步: 网络”。
在“网络”选项卡中,输入或选择以下信息:
设置 值 网络接口 虚拟网络 选择“vnet-1”。 子网 选择“subnet-1 (10.0.0.0/24)” 公共 IP 选择无。 NIC 网络安全组 选择“高级” 配置网络安全组 选择“新建”。
在“创建网络安全组”中,在“名称”中输入“nsg-1”。
在“入站规则”下,选择“+ 添加入站规则”。
在“服务”中,选择“HTTP”。
选择“添加”
选择“确定”负载均衡 是否将此虚拟机置于现有的负载均衡解决方案之后? 选择此复选框。 负载均衡设置 负载均衡选项 选择“Azure 负载均衡器” 选择负载均衡器 选择“load-balancer” 选择后端池 选择“backend-pool” 选择“查看 + 创建”。
检查设置,然后选择“创建”。
按照以下步骤操作,使用以下值创建一个 VM,所有其他设置均与 vm-1 相同:
设置 VM 2 名称 vm-2 可用性区域 2 网络安全组 选择现有的“nsg-1” 负载均衡选项 选择“Azure 负载均衡器” 选择负载均衡器 选择“load-balancer” 选择后端池 选择“backend-pool”
测试 NAT 网关
在本部分中,你将测试 NAT 网关。 首先,你会发现 NAT 网关的公共 IP。 然后连接到测试虚拟机,并通过 NAT 网关验证出站连接。
在门户顶部的搜索框中,输入“公共 IP”。 在搜索结果中,选择“公共 IP 地址”。
选择“public-ip-nat”。
记下公共 IP 地址。
在门户顶部的搜索框中,输入“虚拟机”。 在搜索结果中,选择“虚拟机”。
选择 vm-1。
在“概述”页面上,选择“连接”,然后选择“Bastion”。
选择“使用 Bastion”。
输入在创建虚拟机期间输入的用户名和密码。 选择“连接” 。
在 bash 提示符下,输入以下命令。
curl ifconfig.me
验证命令返回的 IP 地址是否与 NAT 网关的公共 IP 地址匹配。
azureuser@vm-1:~$ curl ifconfig.me 20.7.200.36
关闭与 vm-1的 Bastion 连接。
清理资源
使用创建的资源之后,可以删除资源组及其所有资源。
在 Azure 门户中,搜索并选择“资源组”。
在“资源组”页上,选择“test-rg”资源组。
在“test-rg”页上,选择“删除资源组”。
在“输入资源组名称以确认删除”中输入“test-rg”,然后选择“删除”。
后续步骤
有关 Azure NAT 网关的详细信息,请参阅: