从基本公共负载均衡器升级到标准公共负载均衡器

警告

本文档不再使用,并且已替换为 使用 PowerShell 升级基本负载均衡器

重要

2025 年 9 月 30 日,基本负载均衡器将停用。 有关详细信息,请查看官方公告。 如果当前使用的是基本负载均衡器,请确保在停用日期之前将其升级到标准负载均衡器。

Azure 标准负载均衡器通过区域冗余提供丰富的功能和高可用性。 有关负载均衡器 SKU 的详细信息,请参阅比较表

升级分为两个阶段:

  1. 将 IP 分配方法从“动态”更改为“静态”。

  2. 运行 PowerShell 脚本以完成升级和流量迁移。

升级概述

可以使用 Azure PowerShell 脚本来执行以下过程:

  • 使用在基本负载均衡器的同一资源组中指定的位置创建标准负载均衡器

  • 将公共 IP 地址从基本 SKU 就地升级到标准 SKU

  • 将基本负载均衡器的配置复制到新建的标准负载均衡器

  • 创建允许出站连接的默认出站规则

约束

  • 脚本仅支持公共负载均衡器升级。 有关内部基本负载均衡器升级的说明和详细信息,请参阅从基本内部 Azure 负载均衡器升级到标准内部负载均衡器

  • 在运行脚本之前,必须将公共 IP 地址的分配方法更改为“静态”

  • 如果负载均衡器没有前端 IP 配置或后端池,则在运行脚本时会遇到错误。 确保负载均衡器具有前端 IP 和后端池

  • 该脚本无法将虚拟机规模集从基本负载均衡器的后端迁移到标准负载均衡器的后端。 若要进行此类型的升级,请参阅升级用于虚拟机规模集的基本负载均衡器以了解有关说明和详细信息。

将公共 IP 地址的分配方法更改为“静态”

建议使用以下步骤更改分配方法。

  1. 登录到 Azure 门户

  2. 在左侧菜单中,选择“所有资源”。 从资源列表中选择“与基本负载均衡器关联的基本公共 IP 地址”。

  3. 在基本公共 IP 地址的“设置”中,选择“配置”。

  4. 在“分配”中,选择“静态”。

  5. 选择“保存”。

注意

对于具有公共 IP 的虚拟机,必须先创建标准 IP 地址。 这不保证 IP 地址相同。 将 VM 与基本 IP 解除关联,并将其与新建的标准 IP 地址相关联。 然后,即可按照说明将 VM 添加到标准 Azure 负载均衡器的后端池中。

创建要添加到新标准负载均衡器后端池的新 VM

  • 若要创建虚拟机并将其与负载均衡器相关联,请参阅创建虚拟机

下载脚本

PowerShell 库下载迁移脚本。

使用脚本

根据本地 PowerShell 环境的设置和偏好,可以使用两个选项:

  • 如果你尚未安装 Az PowerShell 模块或者不介意卸载 Az PowerShell 模块,请使用 Install-Script 选项运行该脚本。

  • 如果需要保留 Az PowerShell 模块,请下载并直接运行该脚本。

若要确定是否安装了 Az PowerShell 模块,请运行 Get-InstalledModule -Name az。 如果未看到任何已安装的 Az PowerShell 模块,可以使用 Install-Script 方法。

使用 Install-Script 安装

若要使用此选项,请不要在计算机上安装 Az PowerShell 模块。 如果已安装,则以下命令将显示错误。 请卸载 Az PowerShell 模块,或者使用另一个选项手动下载并运行该脚本。

使用以下命令运行该脚本:

Install-Script -Name AzurePublicLBUpgrade

此命令还会安装所需的 Az PowerShell 模块。

直接使用脚本安装

如果已安装 Az PowerShell 模块并且无法卸载它,或者不想卸载它,则可以使用脚本下载链接中的“手动下载”选项卡手动下载该脚本。 此脚本将作为原始 nupkg 文件下载。 若要从此 nupkg 文件安装脚本,请参阅手动下载包

若要运行该脚本,请执行以下操作:

  1. 使用 Connect-AzAccount -Environment AzureChinaCloud 连接到 Azure。

  2. 使用 Import-Module Az 来导入 Az PowerShell 模块。

  3. 检查所需的参数:

    • oldRgName: [字符串]:必需 - 此参数是要升级的现有基本负载均衡器的资源组。 若要查找此字符串值,请导航到 Azure 门户,选择你的基本负载均衡器源,然后单击该负载均衡器的“概览”。 资源组位于该页上

    • oldLBName: [字符串]:必需 - 此参数是要升级的现有基本负载均衡器的名称。

    • newLBName: [字符串]:必需 - 此参数是要创建的标准负载均衡器的名称

  4. 使用相应的参数运行脚本。 完成该脚本可能需要 5 到 7 分钟时间。

    示例

    AzurePublicLBUpgrade.ps1 -oldRgName "test_publicUpgrade_rg" -oldLBName "LBForPublic" -newLbName "LBForUpgrade"
    

创建用于出站访问的 NAT 网关

该脚本将创建允许出站连接的出站规则。 Azure 虚拟网络 NAT 是推荐用于出站连接的服务。 有关 Azure 虚拟网络 NAT 的详细信息,请参阅什么是 Azure 虚拟网络 NAT?

若要创建 NAT 网关资源并将其与虚拟网络的子网相关联,请参阅创建 NAT 网关

常见问题

用于将配置从 v1 迁移到 v2 的 Azure PowerShell 脚本是否存在任何限制?

是的。 请参阅约束

升级需要多长时间?

脚本完成运行通常需要几分钟时间,并且可能需要更长时间,具体取决于负载均衡器配置的复杂性。 请记住停机时间,并在必要时计划故障转移。

脚本是否会将流量从我的基本负载均衡器切换到新创建的标准负载均衡器?

是。 Azure PowerShell 脚本会升级公共 IP 地址,将配置从基本负载均衡器复制到标准负载均衡器,并将虚拟机迁移到新创建的公共标准负载均衡器。

后续步骤

了解 Azure 负载均衡器