從基本公用負載平衡器升級至標準公用負載平衡器

重要

Basic Load Balancer 將於 2025 年 9 月 30 日淘汰。 如需詳細資訊,請參閱官方公告。 如果您目前使用的是 Basic Load Balancer,請務必在淘汰日期之前升級至 Standard Load Balancer。

Azure Standard Load Balancer 可透過區域備援提供一組豐富的功能和高可用性。 如果要深入了解 Azure Load Balancer SKU,請參閱比較資料表

升級分成兩個階段:

  1. 將 IP 配置方法從動態變更至靜態

  2. 執行 PowerShell 指令碼,以完成升級和流量移轉。

升級概觀

提供可執行下列程序的 Azure PowerShell 指令碼:

  • 使用您在基本負載平衡器的相同資源群組中所指定的位置,建立標準負載平衡器

  • 將公用 IP 位址從基本 SKU 就地升級至標準 SKU

  • 將基本負載平衡器的設定複製到新建立的標準負載平衡器

  • 建立啟用輸出連線的預設輸出規則

限制

將公用 IP 位址的配置方法變更為靜態

以下為變更配置方法的建議步驟。

  1. 登入 Azure 入口網站

  2. 在左側功能表中,選取 [所有資源]。 從資源清單中選取與基本負載平衡器相關聯的基本公用 IP 位址

  3. 在基本公用 IP 位址的 [設定]中,選取 [設定]

  4. 在 [指派] 選取 [靜態]。

  5. 選取 [儲存]

注意

對於具有公用 IP 的虛擬機器,必須先建立標準 IP 位址。 不保證 IP 位址會相同。 將 VM 與基本 IP 解除關聯,並與新建立的標準 IP 位址建立關聯。 然後就能依照指示,將 VM 新增至標準 Azure Load Balancer 後端集區。

建立新的 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 模組。

直接使用指令碼來安裝

如果您已安裝一些 Azure PowerShell 模組,但無法將它解除安裝 (或不想將它解除安裝),您可以使用指令碼下載連結中的 [手動下載] 索引標籤,以手動下載指令碼。 指令碼會以原始 nupkg 檔案形式下載。 如果要從此 nupkg 檔案安裝指令碼,請參閱手動下載套件

執行指令碼:

  1. 使用 Connect-AzAccount 連線至 Azure。

  2. 使用 Import-Module Az 匯入 Az PowerShell 模組。

  3. 檢查必要參數:

    • oldRgName: [String]: Required - 此參數是您想要升級的現有基本負載平衡器的資源群組。 如果要尋找此字串值,請瀏覽至 Azure 入口網站、選取您的基本負載平衡器來源,然後選取負載平衡器的 [概觀]。 資源群組位於該頁面上。

    • oldLBName: [String]: Required - 此參數為您想要升級的現有基本負載平衡器名稱。

    • newLBName: [String]: Required - 此參數是所要建立的標準負載平衡器名稱。

  4. 使用適當的參數執行指令碼。 可能需要五到七分鐘才能完成。

    範例

    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 指令碼是否也會將基本負載平衡器的流量,切換至新建立的標準負載平衡器?

是。 Azure PowerShell 指令碼會升級公用 IP 位址、將設定從基本複製到標準負載平衡器,並將虛擬機器移轉至新建立的公用標準負載平衡器。

下一步

深入了解 Azure Load Balancer