教程:使用 Azure 门户对可用性区域中的 VM 进行负载均衡
本教程介绍如何创建一个带有区域 IP 的公共负载均衡器。 在本教程中,将为前端和后端实例指定区域。
在本教程中,你将了解如何执行以下操作:
- 创建一个虚拟网络,其中包含用于管理的 Azure Bastion 主机。
- 创建一个 NAT 网关,以用于虚拟网络中资源的出站 Internet 访问。
- 创建带有运行状况探测和流量规则的负载均衡器。
- 创建区域虚拟机 (VM) 并将其附加到负载均衡器。
- 创建基本的 Internet Information Services (IIS) 站点。
- 测试负载均衡器。
有关可用性区域和标准负载均衡器的详细信息,请参阅标准负载均衡器和可用性区域。
先决条件
- Azure 订阅
登录 Azure
登录 Azure 门户。
创建虚拟网络和堡垒主机
在本部分中,你将创建一个包含资源子网、Azure Bastion 子网和 Azure Bastion 主机的虚拟网络。
重要
小时定价从部署 Bastion 的时刻开始计算,而无论出站数据使用情况如何。 有关详细信息,请参阅定价和 SKU。 如果要将 Bastion 部署为教程或测试的一部分,建议在使用完此资源后将其删除。
在门户中,搜索并选择“虚拟网络”。
在“虚拟网络”页面上,选择“+ 创建”。
在创建虚拟网络的基本信息选项卡上输入或选择以下信息:
设置 值 项目详细信息 订阅 选择订阅。 资源组 从下拉列表中选择“load-balancer-rg”,或者选择“新建”(如果前者不存在)。
在“名称”中,输入“load-balancer-rg”。
选择“确定”。实例详细信息 名称 输入“lb-vnet”。 区域 选择“中国北部 3” 选择“安全性”选项卡或页面底部的“下一步”按钮。
在“Azure Bastion”下,输入或选择以下信息:
设置 “值” Azure Bastion 启用 Azure Bastion 选中复选框。 Azure Bastion 主机名 输入“lb-bastion”。 Azure Bastion 公共 IP 地址 选择“新建”。
在“名称”中输入“lb-bastion-ip”。
选择“确定”。选择“IP 地址”选项卡,或选择页面底部的“下一步”。
在“创建虚拟网络”页面上,输入或选择以下信息:
设置 “值” 添加 IPv4 地址空间 IPv4 地址空间 输入“10.0.0.0/16 (65,356 个地址)”。 子网 选择要编辑的默认子网链接。 编辑子网 子网用途 保留默认值“默认”。 名称 输入“backend-subnet”。 开始地址 输入“10.0.0.0”。 子网大小 输入 /24(256 个地址)。 安全性 NAT 网关 选择“lb-nat-gateway”。 选择“保存”。
选择屏幕底部的“查看 + 创建”,然后在验证通过时选择“创建”。
创建 NAT 网关
在此部分中,你将为虚拟网络中的资源创建用于出站 Internet 访问的 NAT 网关。 有关出站规则的其他选项,请查看用于出站连接的网络地址转换 (SNAT)
登录 Azure 门户。
在门户顶部的搜索框中,输入“NAT 网关”。 在搜索结果中选择“NAT 网关”。
选择“+ 新建”。
在“创建网络地址转换(NAT)网关”的“基本信息”选项卡中,输入或选择以下值:
设置 值 项目详细信息 订阅 选择订阅。 资源组 选择“新建”。
在“名称”中,输入“load-balancer-rg”。
选择“确定”。实例详细信息 NAT 网关名称 输入“lb-nat-gateway”。 区域 选择“中国北部 3”。 可用性区域 选择“无”。 空闲超时(分钟) 输入 15。 选择“出站 IP”选项卡,或者选择“下一步: 出站 IP”按钮(位于页面底部) 。
在“公共 IP 地址”下,选择“创建新的公共 IP 地址”。
在“添加公共 IP 地址”的“名称”中,输入“nat-gw-public-ip”。
选择“确定”。
选择“子网”选项卡,或者选择“下一步: 子网”按钮(位于页面底部) 。
在“子网”页上,对于“虚拟网络”,从下拉列表中选择“lb-vnet”。
对于“子网名称,”请选择“backend-subnet”。
选择页面底部的“查看 + 创建”按钮,或选择“查看 + 创建”选项卡 。
选择创建。
创建负载均衡器
在本部分中,你将为虚拟机创建负载均衡器。
在门户顶部的搜索框中,输入“负载均衡器”。 在搜索结果中选择“负载均衡器”。
在“负载均衡器”页中,选择“创建”或“创建负载均衡器”按钮。
在“创建负载均衡器”页的“基本信息”选项卡中,输入或选择以下信息:
设置 值 项目详细信息 订阅 选择订阅。 资源组 选择“lb-resource-group”。 实例详细信息 名称 输入“load-balancer” 区域 选择“中国北部 3”。 SKU 保留默认值“标准”。 类型 选择“公共”。 层 保留默认值“区域”。 选择“前端 IP 配置”选项卡,或选择页面底部的“下一步: 前端 IP 配置”按钮。
在“前端 IP 配置”中,选择“+ 添加前端 IP 配置”。
在“名称”中输入“lb-frontend-IP”。
对于“IP 版本”,选择“IPv4”或“IPv6” 。
对于“IP 类型”,选择“IP 地址” 。
注意
有关 IP 前缀的详细信息,请参阅 Azure 公共 IP 前缀。
在“公共 IP 地址”中选择“新建” 。
在“添加公共 IP 地址”的“名称”中,输入 lb-public-IP。
在“可用性区域”中选择“区域冗余” 。
选择“确定” 。
选择 添加 。
选择页面底部的“下一步: 后端池>”按钮。
在“后端池”选项卡上,选择“+ 添加后端池” 。
在“添加后端池”的“名称”中,输入 lb-backend-pool。
在“虚拟网络”中选择“lb-VNet”。
为“后端池配置”选择“IP 地址”,然后选择“保存”。
选择“入站规则”选项卡,或选择页面底部的“下一步: 入站规则”按钮。
在“入站规则”选项卡的“负载均衡规则”中,选择“+ 添加负载均衡规则” 。
在“添加负载均衡规则”中,输入或选择以下信息:
设置 值 名称 输入“lb-HTTP-rule” IP 版本 根据你的要求选择“IPv4”或“IPv6” 。 前端 IP 地址 选择“lb-frontend-IP”。 后端池 选择“lb-backend-pool”。 协议 选择“TCP”。 端口 输入 80。 后端端口 输入 80。 运行状况探测 选择“新建”。
在“名称”中,输入“lb-health-probe”。
在“协议”中选择“HTTP” 。
将剩余的字段保留为默认值,然后选择“保存”。会话暂留 选择“无”。 空闲超时(分钟) 输入 15。 启用 TCP 重置 选择“复选框”。 启用浮动 IP 选中复选框。 出站源网络地址转换 (SNAT) 保留默认值“(建议)使用出站规则为后端池成员提供对 Internet 的访问权限。” 选择“保存”。
选择页面底部的“查看 + 创建”蓝色按钮。
选择“创建”。
注意
本示例创建了一个 NAT 网关来提供出站 Internet 访问。 我们绕过了配置中的出站规则选项卡,因为它是可选选项,且 NAT 网关不需要它。 有关 Azure NAT 网关的详细信息,请参阅什么是 Azure 虚拟网络 NAT?有关 Azure 中出站连接的详细信息,请参阅出站连接的源网络地址转换 (SNAT)。
创建虚拟机
在本部分中,你将在单个区域(区域 1)中创建两个 VM(lb-vm1 和 lb-VM2)。
这些 VM 将添加到先前创建的负载均衡器的后端池中。
在门户顶部的搜索框中,输入“虚拟机”。 在搜索结果中,选择“虚拟机”。
在“虚拟机”中,选择“+ 创建”>“Azure 虚拟机”。
在“创建虚拟机”中,在“基本信息”选项卡中输入或选择以下值:
设置 值 项目详细信息 订阅 选择 Azure 订阅 资源组 选择“load-balancer-rg” 实例详细信息 虚拟机名称 输入“lb-VM1” 区域 选择“((亚太)中国北部 3)” 可用性选项 选择“可用性区域” 可用性区域 选择“区域 1” 安全类型 选择“标准”。 Image 选择“Windows Server 2022 数据中心:Azure 版本 - Gen2” 大小 选择 VM 大小或采用默认设置 管理员帐户 用户名 输入用户名 密码 输入密码 确认密码 重新输入密码 入站端口规则 公共入站端口 选择“无” 选择“网络”选项卡,或选择“下一步: 磁盘”,然后选择“下一步: 网络”。
在“网络”选项卡中,选择或输入以下信息:
设置 值 网络接口 虚拟网络 选择“lb-vnet” 子网 选择“backend-subnet” 公共 IP 选择无。 NIC 网络安全组 选择“高级” 配置网络安全组 跳过此设置,直到完成其余设置为止。 在“选择后端池”后完成。 删除 VM 时删除 NIC 保留默认值“未选中”。 加速网络 保留默认值“已选择”。 负载均衡 负载均衡选项 负载均衡选项 选择“Azure 负载均衡器” 选择负载均衡器 选择“load-balancer” 选择后端池 选择“lb-backend-pool” 配置网络安全组 选择“新建”。
在“创建网络安全组”的“名称”中,输入“lb-NSG”。
在“入站规则”下,选择“+ 添加入站规则” 。
在“服务”中,选择“HTTP” 。
在“优先级”下,输入“100” 。
在“名称”中,输入“lb-NSG-Rule”
选择“添加”
选择“确定”选择“查看 + 创建” 。
检查设置,然后选择“创建”。
按照步骤 1 到 7 操作,使用以下值创建另一个 VM,所有其他设置均与 lb-VM1 相同:
设置 VM 2 名称 lb-VM2 可用性区域 区域 1 网络安全组 选择现有的“lb-NSG”
注意
Azure 会为未分配公共 IP 地址的 VM 或位于内部基本 Azure 负载均衡器的后端池中的 VM 提供默认出站访问 IP。 默认出站访问 IP 机制会提供不可配置的出站 IP 地址。
发生以下事件之一时,将禁用默认出站访问 IP:
- 将公共 IP 地址分配给 VM。
- 虚拟机被放置在标准负载平衡器的后端池中,有无出站规则均可。
- 向虚拟机的子网分配了 Azure 虚拟网络 NAT 网关 资源。
在灵活业务流程模式下通过使用虚拟机规模集创建的 VM 没有默认的出站访问权限。
有关 Azure 中的出站连接的详细信息,请参阅 Azure 中的默认出站访问权限和使用用于出站连接的源网络地址转换 (SNAT)。
安装 IIS
在左侧菜单中选择“所有服务”,选择“所有资源”,然后从资源列表中选择位于“load-balancer-rg”资源组中的“lb-VM1”。
在“概述”页上,选择“连接”,然后选择“Bastion” 。
选择“使用 Bastion”。
输入在 VM 创建过程中输入的用户名和密码。
选择“连接”。
在服务器桌面上,导航到“Windows 管理工具”“Windows PowerShell”。
在 PowerShell 窗口中,运行以下命令以:
- 安装 IIS 服务器
- 删除默认的 iisstart.htm 文件
- 添加显示 VM 名称的新 iisstart.htm 文件:
# Install IIS server role Install-WindowsFeature -name Web-Server -IncludeManagementTools # Remove default htm file Remove-Item C:\inetpub\wwwroot\iisstart.htm # Add a new htm file that displays server name Add-Content -Path "C:\inetpub\wwwroot\iisstart.htm" -Value $("Hello World from " + $env:computername)
关闭与 lb-VM1 之间的 Bastion 会话。
重复步骤,在 lb-VM2 上安装 IIS 和更新后的 iisstart.htm 文件。
测试负载均衡器
在页面顶部的搜索框中,输入“负载均衡器”。 在搜索结果中选择“负载均衡器”。
单击创建的负载均衡器 load-balancer。 在负载均衡器的“前端 IP 配置”页上,找到公共 IP 地址。
复制该公共 IP 地址,并将其粘贴到浏览器的地址栏。 IIS Web 服务器的自定义 VM 页会显示在浏览器中。
清理资源
若不再需要资源组、负载均衡器以及所有相关资源,请将其删除。 为此,请选择包含资源的“load-balancer-rg”资源组,然后选择“删除”。
后续步骤
进入下一篇文章,了解如何跨可用性区域对 VM 进行负载均衡: