Load Balancer 中的可靠性
本文包含使用可用性區域和跨區域災害復原和商務持續性的Load Balancer區域復原詳細資訊。
可用性區域支援
可用性區域是每個 Azure 區域內的數據中心實體分隔群組。 當某個區域失敗時,服務可以故障轉移至其中一個其餘區域。
如需 Azure 中可用性區域的詳細資訊,請參閱 什麼是可用性區域?。
Azure Load Balancer 支援可用性區域情節。 您可以使用 Standard Load Balancer 來調整資源並分散到多個區域,在整個情節中提高可用性。 請檢閱本文件以了解這些概念,以及基本案例的設計指引。
雖然建議您部署具有區域備援的 Load Balancer,但 Load Balancer可以是區域備援、區區或非區域。 負載平衡器的可用性區域選取項目與其前端 IP 的區域選取項目同義。 針對公用負載平衡器,如果負載平衡器前端的公用 IP 是區域備援,則負載平衡器也是區域備援。 如果負載平衡器前端的公用 IP 是區域性的,則負載平衡器也會被指定至相同的區域。 若要為您的負載平衡器設定區域相關的屬性,請選取前端所需的適當類型。
注意
不需要每個區域都有一個負載平衡器,而是有一個單一負載平衡器,具有多個與其個別後端集區相關聯的前端 (區域性或區域備援),就足以達到目的。
必要條件
若要搭配 Load Balancer 使用可用性區域,您必須在支援可用性區域的區域中建立負載平衡器。 若要查看哪些區域支援可用性區域,請參閱支援區域清單。
針對負載平衡器使用 Standard SKU,而針對可用性區域支援使用公用 IP。
不支援基本 SKU 類型。
若要建立您的資源,您必須具備網路參與者角色或更高角色。
限制
- 建立之後,就無法變更、更新或建立資源的區域。
- 資源在建立之後,無法從區域性更新為區域備援,反之亦然。
區域備援負載平衡器
在具有可用性區域的區域中,Standard Load Balancer 可以是區域備援,流量是由單一 IP 位址所提供。 單一前端 IP 位址經得起區域失效。 不論區域如何,前端 IP 都可用來觸達所有 (不受影響的) 後端集區成員。 最多可有一個可用性區域失敗,且只要區域中剩餘的區域維持良好狀況,資料路徑就得以存留。
前端的單一 IP 位址由多個可用性區域中的多個獨立基礎結構部署來同時提供服務。 在不受區域失效所影響的其他區域中,任何重試或重新建立都會成功。
注意
VM 1、2 和 3 可以屬於相同的子網路,而且不一定必須位於個別區域,如圖表建議。
負載平衡器後端集區中的成員通常會與單一區域 (例如區域虛擬機器) 相關聯。 生產工作負載的常見設計就是具有多個區域資源。 例如,將來自區域 1、2 和 3 的虛擬機器放在具有區域備援前端的負載平衡器後端,符合此設計原則。
分區負載平衡器
您可以選擇由前端來保障單一區域,稱為區域性。 在此案例中,區域中的單一區域會提供所有輸入或輸出流程。 您的前端共享與區域的健康情況息息相關。 資料路徑不受保證區域以外區域的失敗所影響。 您可以使用區域性前端依據每個可用性區域來公開 IP 位址。
此外,也支援在每個區域內,直接針對負載平衡的端點使用區域性前端。 您也可以使用此設定來公開每個區域的負載平衡端點,以個別監視每個區域。 針對公用端點,您可以將其與 DNS 負載平衡產品 (例如流量管理員) 整合,並使用單一 DNS 名稱。
對於公用負載平衡器前端,請將 zones 參數新增至公用 IP。 個別規則所使用的前端 IP 設定會參考此公用 IP。
對於內部負載平衡器前端,請將 zones 參數新增至內部負載平衡器前端 IP 設定。 區域性前端會保障特定區域的子網路中都有 IP 位址。
非區域性負載平衡器
您也可以使用「非區域」前端,在非區域性設定中建立負載平衡器。 在這些案例中,公用負載平衡器將會使用公用 IP 或公用 IP 前置詞,而內部負載平衡器將會使用私人 IP。 此選項不保證提供備援。
注意
從基本 SKU 升級至標準 SKU 的所有公用 IP 位址都將屬於「非區域」類型。 了解如何在 Azure 入口網站中升級公用 IP 位址。
SLA 改善項目
可用性區域在實體上是獨立的,提供不同的電源、網路和冷卻,因此 SLA (服務等級協定) 可能會增加。 如需詳細資訊,請參閱線上服務的服務等級協定 (SLA)。
建立已啟用可用性區域的資源
若要了解如何使用 Load Balancer 對區域內或多個區域內的 VM 進行負載平衡,請參閱快速入門:建立公用負載平衡器以負載平衡 VM。
注意
- 建立之後,就無法變更、更新或建立資源的區域。
- 資源在建立之後,無法從區域性更新為區域備援,反之亦然。
容錯
虛擬機器可以容錯移轉到叢集的另一台伺服器,VM 的作業系統會在新的伺服器上重新啟動。 您應該參閱災害復原的容錯移轉流程、收集復原規劃中的虛擬機器,以及執行災害復原演練,以確保其容錯解決方案成功。
如需詳細資訊,請參閱站台復原流程。
區域關閉體驗
區域備援不隱含表示無中斷的資料平面或控制平面。 區域備援流量可以使用任何區域,且您的流量將使用區域中所有健康情況良好的區域。 在區域失敗中,使用狀況良好的區域的流量不會受到影響。
在區域失敗時使用區域的流量會受到影響,但應用程式可以復原。 當 Azure 因區域失敗而彙集時,流量會在區域內狀況良好的區域中繼續。
檢閱 Azure 雲端設計模式,以改善應用程式對失敗案例的復原能力。
多個前端
使用多個前端可讓您對多個連接埠和/或 IP 位址的流量進行負載平衡。 設計架構時,請確定您考慮區域備援如何與多個前端互動。 如果您的目標是一律讓每個前端都具有從失敗復原的能力,則指派為前端的所有 IP 位址都必須是區域備援。 如果一組前端要與單一區域相關聯,則該集合的每個 IP 位址都必須與該特定區域相關聯。 不需要每個區域中都有一個負載平衡器。 相反地,每個區域前端或一組區域性前端可以與後端集區中屬於該特定可用性區域的虛擬機器相關聯。
安全部署技術
檢閱 Azure 雲端設計模式,以改善應用程式對失敗案例的復原能力。
移轉至可用性區域支援
如果區域已擴增為具有可用性區域,則任何現有的 IP 都會保持非區域性,就像用於負載平衡器前端的 IP 一樣。 為了確保您的架構可以利用新的區域,建議您建立新的前端 IP。 建立之後,您可以將現有的非區域前端取代為新的區域備援前端。 若要了解如何將 VM 移轉至可用性區域支援,請參閱將 Load Balancer 移轉至可用性區域支援。
跨區域災害復原和商務持續性
災害復原 (DR)是指從重大影響事件中復原,例如自然災害或不成功的部署 (導致停機和資料遺失)。 無論原因為何,解決災害的最佳辦法是定義完善且經過測試的 DR 方案,以及主動支援 DR 的應用程式設計。 開始思考建立災害復原方案之前,請參閱設計災害復原策略的建議。
Microsoft 在災害復原方面採取共同責任模型。 在共同責任模型中,Microsoft 確保基準基礎結構和平台服務可供使用。 此時,許多 Azure 服務不會自動複寫資料,或從失敗區域回復為交叉複寫到另一個已啟用的區域。 針對這些服務,您必須負責設定適用於您工作負載的災害復原計劃。 在 Azure 平台即服務 (PaaS) 供應項目上執行的多數服務,都有提供支援災害復原的功能和指導,您可以使用特定服務功能快速復原,制定災害復原方案。
Azure Standard Load Balancer 支援跨區域負載平衡,可實現異地備援高可用性情節,例如:
- 來自多個區域的傳入流量。
- 立即全域容錯移轉至下一個最佳的區域部署。
- 負載跨區域分散至超低延遲的最近 Azure 區域。
- 能夠在單一端點後方擴大/縮小。
- 靜態的任一傳播全域 IP 位址
- 用戶端 IP 保留
- 基於現有的負載平衡器解決方案,免除學習曲線
跨區域負載平衡器的前端 IP 設定是靜態,並公告於大部分 Azure 區域。
注意
跨區域負載平衡器上的負載平衡規則後端連接埠,應符合區域標準負載平衡器上負載平衡規則/輸入 nat 規則的前端連接埠。
多區域地理位置的災害復原
區域備援
將跨區域負載平衡器無縫地連結到現有的區域負載平衡器,來設定區域備援。
如果一個區域失敗,流量會路由至下一個最接近狀況良好的區域負載平衡器。
跨區域負載平衡器的健全狀態探查每隔 5 秒會收集一次每個區域負載平衡器的可用性相關資訊。 如果有一個區域負載平衡器的可用性降至 0,跨區域負載平衡器會偵測到失敗。 然後,該區域負載平衡器就會退出輪替。
超低延遲
地理位置鄰近性負載平衡演算法以使用者所在地理位置和區域部署為基礎。
始於用戶端的流量會到達最接近的參與區域,然後經過 Microsoft 全球網路骨幹抵達最接近的區域部署。
例如,假設您有一個跨區域負載平衡器,而標準負載平衡器位於下列 Azure 區域:
- 美國西部
- 北歐
如果流程始於西雅圖,則流量會進入美國西部。 此區域是西雅圖最接近的參與區域。 流量會路由傳送至最接近的區域負載平衡器,也就是美國西部。
Azure 跨區域負載平衡器使用地理位置鄰近性負載平衡演算法來決定路由。
當地理位置鄰近性用到多個區域負載平衡器時,將由區域負載平衡器已設定的負載分散模式做出路由最終決定。
如需詳細資訊,請參閱設定 Azure Load Balancer 的分送模式。
輸出流量會遵循區域負載平衡器上設定的路由喜好設定。
能夠在單一端點後方擴大/縮小
當您向客戶公開跨區域負載平衡器的全域端點時,您可以在全域端點後方新增或移除區域部署,而不會導致運作中斷。
靜態的任一傳播全域 IP 位址
跨區域負載平衡器隨附靜態公用 IP,可確保 IP 位址維持不變。 若要深入了解靜態 IP,請看這裡
用戶端 IP 保留
跨區域負載平衡器是第 4 層傳遞網路負載平衡器。 此傳遞保留封包的原始 IP。 原始 IP 可供虛擬機器上執行的程式碼使用。 這項保留可讓您套用 IP 位址專屬的邏輯。
浮動 IP
浮動 IP 可以同時在全域 IP 層級和區域 IP 層級設定。 如需詳細資訊,請造訪多個 Azure Load Balancer 前端
請務必注意,在 Azure 跨區域負載平衡器上設定的浮動 IP 操作時,與後端區域負載平衡器上的浮動 IP 設定無關。 如果在跨區域負載平衡器上啟用了浮動 IP,則必須將適當的回送介面新增至後端 VM。
健全狀態探查
Azure 跨區域負載平衡器會在決定將流量分散到何處時,利用後端區域負載平衡器的健康情況。 如果使用者已在其區域負載平衡器上設定健全狀態探查,則跨區域負載平衡器每隔 5 秒便會執行健康情況檢查。
在現有 Azure Load Balancer 上建立跨區域解決方案
跨區域負載平衡器的後端集區包含一或多個區域負載平衡器。
將現有的負載平衡器部署新增至跨區域負載平衡器,以實現高可用性的跨區域部署。
主要區域是全域層跨區域負載平衡器或公用 IP 位址的部署位置。 此區域不影響流量的路由方式。 如果主要區域停止運作,流量不受影響。
主要區域
- 美國中部
- 東亞
- 美國東部 2
- 北歐
- 東南亞
- 英國南部
- US Gov 維吉尼亞州
- 西歐
- 美國西部
注意
您只能將全域層中的跨區域負載平衡器或公用 IP 部署在其中一個列出的主要區域中。
參與區域是公告負載平衡器全域公用 IP 的地方。
始於使用者的流量會經過 Microsoft 核心網路,到達最接近的參與區域。
跨區域負載平衡器將流量路由傳送至適當的區域負載平衡器。
參與區域
- 澳大利亞東部
- 澳大利亞東南部
- 印度中部
- 美國中部
- 東亞
- 美國東部
- 美國東部 2
- 日本東部
- 美國中北部
- 北歐
- 美國中南部
- 東南亞
- 英國南部
- US DoD 中部
- US DoD 東部
- US Gov 亞利桑那州
- US Gov 德克薩斯州
- US Gov 維吉尼亞州
- 美國中西部
- 西歐
- 美國西部
- 美國西部 2
注意
後端區域負載平衡器可以部署在任何公開可用的 Azure 區域中,而且不只限於參與區域。
限制
跨區域前端 IP 設定僅限公用。 目前不支援內部前端。
私人或內部負載平衡器無法新增至跨區域負載平衡器的後端集區
目前不支援 NAT64 轉譯。 前端和後端 IP 的類型必須相同 (v4 或 v6)。
IPv6 的跨區域負載平衡器不支援 UDP 流量。
跨區域負載平衡器不支援連接埠 3 上的 UDP 流量
定價和 SLA
跨區域負載平衡器共用標準負載平衡器的 SLA。
下一步
- Azure 中的可靠性
- 請參閱教學課程:使用 Azure 入口網站建立跨區域負載平衡器,以建立跨區域負載平衡器。
- 深入了解跨區域負載平衡器。
- 深入了解 Azure Load Balancer。