使用 Azure 入口網站來設計和實作 Azure 負載平衡器

已完成

Azure Load Balancer 在開放式系統互連 (OSI) 模型的第 4 層運作。 這是用戶端的連絡點。 Azure Load Balancer 將抵達負載平衡器前端的輸入流量分散到後端集區執行個體。 這些流量是根據已設定的負載平衡規則和健全狀態探查。 後端集區執行個體可以是 Azure VM,或虛擬機器擴展集中的執行個體。

選擇負載平衡器類型

負載平衡器可以是公用 (也稱為外部) 或內部 (也稱為私人)。

公用負載平衡器可為虛擬網路內的虛擬機器 (VM) 提供輸出連線。 這些連線是透過將私人 IP 位址轉譯至公用 IP 位址所達成。 外部負載平衡器用於將來自網際網路的用戶端流量分散到 VM。 該網際網路流量可能來自網頁瀏覽器、模組應用程式或其他來源。

當只有前端需要私人 IP 時,使用內部負載平衡器。 內部負載平衡器用於平衡從內部 Azure 資源到虛擬網路內其他 Azure 資源的流量負載。 在混合情節中,從內部部署網路也可以存取負載平衡器前端。

Diagram illustrating Internal and Public load balancers in Azure

Azure 負載平衡器和可用性區域

支援可用性區域的 Azure 服務分成三個類別:

  • 區域服務:資源可以專屬於特定區域。 例如,虛擬機器、受控磁碟或標準 IP 位址可以專屬於特定區域,使資源的一或多個執行個體分散到多個區域,而提高復原能力。
  • 區域備援服務:自動跨區域複寫或分散資源。 Azure 將資料複寫到三個區域,一個區域失效不影響其可用性。
  • 非區域服務:一律可從 Azure 地理位置取得服務,不論是區域全面或地區全面性停機,服務都不中斷。

Azure Load Balancer 支援可用性區域情節。 您可以使用 Standard Load Balancer 來調整資源並分散到多個區域,在整個情節中提高可用性。 請檢閱本檔以瞭解這些概念和基本案例設計指引。

負載平衡器可以是區域備援、區域性或非區域性。 若要為負載平衡器設定區域相關屬性 (上述),請選取所需前端的適當類型。

區域備援

Diagram illustrating Zone redundant load balancers in Azure.

在具有可用性區域的區域中,Standard Load Balancer 可以是區域備援。 此流量由單一 IP 位址處理。

單一前端 IP 位址經得起區域失效。 不論區域如何,前端 IP 都可用來觸達所有 (不受影響的) 後端集區成員。 雖然有一或多個可用性區域可能失效,但只要地區中有一個區域仍然良好,資料路徑就還是存在。

前端的單一 IP 位址由多個可用性區域中的多個獨立基礎結構部署來同時提供服務。 任何重試或重新建立都會在其他不受區域失敗影響的區域中成功。

區域性

您可以選擇由前端來保障單一區域,稱為區域性。 此情節表示任何輸入或輸出流量由地區中的單一區域處理。 您的前端共享與區域的健康情況息息相關。 資料路徑不受保證區域以外區域的失敗所影響。 您可以使用區域性前端依據每個可用性區域來公開 IP 位址。

此外,對於每個區域內的負載平衡端點,也支援直接使用區域性前端。 您也可以使用此設定來公開每個區域的負載平衡端點,以個別監視每個區域。 您可以使用 DNS 負載平衡產品 (例如流量管理員) 來整合公用端點,並使用單一 DNS 名稱。

Diagram illustrating Zonal load balancers in Azure.

對於公用負載平衡器前端,請將區域參數新增至公用 IP。 個別規則所使用的前端 IP 設定會參考此公用 IP。

對於內部負載平衡器前端,請將區域參數新增至內部負載平衡前端 IP 設定。 區域性前端會保障特定區域的子網路中都有 IP 位址。

選取 Azure 負載平衡器 SKU

在 Azure 中建立負載平衡器時有兩個 SKU 可用:基本負載平衡器和標準負載平衡器。 這些 SKU 的情節範圍、規模、功能和成本各有不同。 基本負載平衡器可能的任何情節都能由標準負載平衡器建立。

若要比較並了解其中差異,請檢閱下表。

功能

標準負載平衡器

基本負載平衡器

後端集區大小

支援最多 1,000 個執行個體。

支援最多 300 個執行個體。

後端集區端點

單一虛擬網路中的任何虛擬機器或虛擬機器擴展集。

單一可用性設定組或虛擬機器擴展集中的虛擬機器。

健康探詢

TCP, HTTP, HTTPS

TCP, HTTP

健全狀態探查關閉行為

TCP 連線會在執行個體健全狀態探查關閉以及所有探查關閉期間保持連線。

TCP 連線會在執行個體健全狀態探查閉期間保持連線。 所有 TCP 連線均會在所有探查關閉期間關閉。

可用性區域

輸入和輸出流量的區域備援和區域前端。

無法使用

診斷

Azure 監視器多維計量

HA 連接埠

適用於內部負載平衡器

無法使用

預設保護

除非網路安全性群組允許,否則會拒絕輸入流程。 從虛擬網路到內部負載平衡器的內部流量仍受允許。

預設為開放狀態。 網路安全性群組 (選擇性)。

輸出規則

宣告式輸出 NAT 設定

無法使用

閒置時的 TCP 重設

可用於任何規則

無法使用

多個前端

輸入和輸出

僅輸入

管理作業

大部分的作業 < 30 秒

通常為 60-90 秒以上

SLA

無法使用

Microsoft 建議使用標準負載平衡器。 僅可以將獨立 VM、可用性設定組和虛擬機器擴展集連線至單一 SKU,但不可同時連線至兩個 SKU。 負載平衡器和公用 IP 位址 SKU 必須與您將其與公用 IP 位址一起使用時相符。

SKU 不可變;因此,您無法變更現有資源的 SKU。

建立和設定 Azure 負載平衡器

您必須執行幾項工作,才能成功建立和設定 Azure Load Balancer。

建立負載平衡器

在此範例中,我們會查看在標準 SKU 中建立及設定 公用 (外部) 負載平衡器 所需的工作。 第一個工作是建立負載平衡器本身。 在建立程式期間,會建立前端 IP 組態,並指派公用 IP 位址。 您也可以新增後端集區、建立健康情況探查,以及在建立程式期間新增負載平衡規則,但稍後會在程式中新增這些元件。

從Azure 入口網站首頁,流覽至 [全域搜尋] 列並搜尋 Load Balancer ,然後選取 [負載平衡器 ]。

選擇 [+ 建立 ] 或 [建立負載平衡器] 以啟動程式。

在 [ 建立負載平衡器] 頁面上,您必須在 [基本] 索引 標籤上 提供下列必要資訊:

設定
訂用帳戶 選取您想要在其中建立新負載平衡器資源的 Azure 訂用帳戶。
資源群組 您可以在這裡選取現有的資源群組或建立新的資源群組。
名稱 提供實例的唯一名稱。
區域 選取建立虛擬機器的區域。
類型 這是您選取負載平衡器是否為 內部 (私人)或 公用 (外部)。 如果您選擇 [ 內部 ],則需要指定虛擬網路和 IP 位址指派,但如果您選擇 [公用 ],則需要指定數個公用 IP 位址詳細資料。
SKU 您可以在這裡選取 標準 SKU 或 基本 SKU(針對生產工作負載,您應該選擇 [ 標準 ],但針對測試和評估和訓練目的,您可以選擇 [基本 ],但不會取得所有可能的負載平衡器功能)。 視您在這裡選取的 SKU 而定,其餘的組態選項會稍有不同。
這是您選取負載平衡器是否在區域(區域 )或跨區域( 全域 )進行平衡的位置 - 如果您選取 上述基本 SKU,此設定會呈現灰色。

Screenshot of Create load balancer page on Basics tab.

選取 [下一步:前端 IP 組態 ] 之後,請選取 [+ 新增前端 IP 位址 ],為您的公用前端新增公用 IP 位址。 您可以新增前端 IP 組態的名稱、選擇 [IP 版本] 和 [IP 類型],然後新增 [公用 IP 位址]。 您可以為公開前端建立新的公用 IP 位址,或使用現有的 IP 位址。 建立新的公用 IP 位址時,您可以指定名稱,同時指定公用 IP 位址的名稱,以及要使用動態或靜態指派的 IP 位址。 除了預設的 IPv4 位址,您還可以選擇將 IPv6 位址指派給負載平衡器。

Screenshot of Frontend IP configuration tab and Add frontend IP configuration options.

使用前端 IP 組態完成之後,請選取 [ 檢閱 + 建立 ],其中會驗證新負載平衡器資源的組態設定,然後您可以選取 [建立 ] 來部署資源。

Screenshot of the configuration settings for the new load balancer after validation.

資源會開始部署。

Screenshot of Create load balancer - deployment complete.

完成時,您可以選取 [移至資源 ] 以在入口網站中檢視新的負載平衡器資源。

Screenshot of View load balancer resource Overview page in Azure portal.

新增後端集區

下一項工作是在負載平衡器中建立後端集區,然後將虛擬機器新增至該集區。

從負載平衡器的 [概觀] 頁面中,選取 [設定下的 [後端集 區],然後選取 [ + 新增 ]。

Screenshot of Load Balancer page and Backend pools window.

您必須在 [ 新增後端集區 ] 頁面上輸入下列資訊:

設定
名稱 輸入後端集區的唯一名稱。
虛擬網路 選取您要新增至後端集區的虛擬網路名稱。
後端集區組態 選取您是否要使用資源的 NIC 或 IP 位址建立後端集區關聯。

您現在可以將現有的虛擬機器新增至後端集區,也可以稍後再建立和新增虛擬機器。 然後選取 [ 儲存 ] 以新增後端集區。

Screenshot of Add backend pool - Add.

將虛擬機器新增至後端集區

下一項工作是將虛擬機器新增至現有的後端集區。

在 [後端集區] 頁面上,從清單中選取後端集區。

Screenshot of View backend pool in the load balancer.

您必須輸入下列資訊,才能將虛擬機器新增至後端集區:

設定
虛擬網路 指定您要新增至後端集區的虛擬網路名稱。
後端集區組態 選取您是否要使用資源的 NIC 或 IP 位址建立後端集區關聯。

然後在 [ IP 組態 ] 區段下,選取 [ + 新增 ]。

Add VM to backend pool.

選取您要新增至後端集區的虛擬機器,然後選取 [ 新增 ]。

View list of VMs added to backend pool.

然後選取 [ 儲存 ] 將它們新增至後端集區。

Save backend pool with VMs added.

View list of backend pools running in load balancer.

新增健全狀態探查

下一項工作是建立健全狀態探查,以監視後端集區中的虛擬機器。

在負載平衡器的 [後端集 區] 頁面上,選取 [設定 下的 [健全狀況探查 ],然後選取 [+ 新增 ]。 Add health probes.

您必須在 [ 新增健康情況探查 ] 頁面上輸入下列資訊:

設定
名稱 輸入健康情況探查的唯一名稱。
通訊協定 選取 [TCP ]、 [HTTP] 或 [HTTPS ]。
通訊埠 指定健康情況訊號的目的地埠號碼。 預設值為埠 80
間隔(秒) 指定探查嘗試之間的時間間隔,以秒為單位。 預設值為 5 秒。

然後選取 [ 儲存 ] 以新增健康情況探查。

configure health probe settings.

View list of added health probes in load balancer.

新增負載平衡器規則

最後一個工作是建立負載平衡器的負載平衡規則。 負載平衡規則會將傳送到所選 IP 位址與連接埠組合的傳入流量,分散到一組後端集區執行個體。 只有健全狀態探查認為良好的後端執行個體才會接收新的流量。

在負載平衡器的 [ 健康情況探查 ] 頁面上,選取 [設定 下的 負載平衡規則 ],然後選取 [ + 新增 ]。

Add load balancing rule.

您必須在 [ 新增負載平衡規則 ] 頁面上輸入下列資訊:

設定
名稱 輸入負載平衡規則的唯一名稱。
IP 版本 選取 [ IPv4 ] 或 [IPv6 ]。
前端 IP 位址 選取負載平衡器的現有公用 IP 位址。
後端集區 選取現有的後端集區。 此後端集區中的虛擬機器是此規則負載平衡流量的目標。
通訊協定 選取 TCP UDP 通訊協定。
通訊埠 指定負載平衡規則的埠號碼。 預設值為埠 80
後端連接埠 您可以選擇使用與用戶端預設用來與負載平衡器通訊的埠不同的埠,將流量路由傳送至後端集區中的虛擬機器。
健康狀態探查 選取現有的健康狀態探查或建立新的探查。 負載平衡規則使用健全狀態探查,判斷後端集區中的哪些虛擬機器良好,因而可以接收負載平衡流量。
工作階段持續性 您可以選擇 [ ]、[ 用戶端 IP ] 或 [用戶端 IP] 或 [用戶端 IP 和通訊協定 ]。 工作階段持續性指定在工作階段期間,來自一個用戶端的流量應該由後端集區中的相同虛擬機器處理。 指定來自相同用戶端的後續要求可以由任何虛擬機器處理。 用戶端 IP:指定來自相同用戶端 IP 位址的後續要求,將由相同的虛擬機器處理。 用戶端 IP 和通訊協定:指定來自相同用戶端 IP 位址和通訊協定組合的後續要求,將由相同的虛擬機器處理。
閒置逾時 (分鐘) 指定讓 TCP 或 HTTP 連線保持開啟的時間,而不需要依賴用戶端傳送 保持運作 的訊息。 預設閒置逾時為 4 分鐘,這也是最小值設定。 最大值設定為 30 分鐘。
啟用 TCP 重設 選擇 [已停用 ] 或 [已啟用]。 將 [閒置時 TCP 重設] 設定為 [已停用 ] 時,Azure 不會在達到閒置逾時期間時傳送 TCP 重設封包。 將 [閒置時 TCP 重設] 設定為 [已啟用 ],Azure 會在達到閒置逾時期間時傳送 TCP 重設封包。
啟用浮動 IP 選擇 [已停用 ] 或 [已啟用]。 當 [浮動 IP] 設定為 [已停用] 時,Azure 會公開傳統的負載平衡 IP 位址對應配置,以方便使用 (VM 執行個體的 IP)。 將 [浮動 IP] 設定為 [已啟用 ] 時,它會將 IP 位址對應變更為負載平衡器的前端 IP,以允許更多彈性。
輸出來源網路位址轉譯 (SNAT) 選擇 [已停用 ] 或 [已啟用]。 當輸出 SNAT 設定為 [已停用 ] 時,Azure 不會將輸出流程的來源 IP 位址轉譯為公用 IP 位址。 當輸出 SNAT 設定為 [已啟用 ] 時,Azure 會將輸出流程的來源 IP 位址轉譯為公用 IP 位址。

Screenshot of Add load balancing rule - Add.

Screenshot of View list of added load balancing rules.

測試負載平衡器

完成各種工作來建立和設定公用負載平衡器及其元件之後,您應該測試設定,以確保順利運作。 最簡單的方式是從您建立的公用負載平衡器資源複製公用 IP 位址,並貼到網頁瀏覽器中。 在負載平衡器中,您應該會收到其中一個 VM 的回應。 然後,您可以停止任何 VM 隨機回應,一旦該 VM 停止之後,請重新整理瀏覽器網頁,以確認您在負載平衡器中收到其他 VM 的回應。

檢定您的知識

1.

關於外部負載平衡器,下列哪一項陳述正確?

2.

部署必須支援輸出流量規則的新 Azure Load Balancer 時。 應選取哪個 SKU?