本文可協助您判斷何種 Google Cloud 負載平衡器 最符合您的需求。如要查看所有可用的 Cloud Load Balancing 產品總覽,請參閱 Cloud Load Balancing 總覽。
如要判斷使用哪個 Cloud Load Balancing 產品,請先判斷負載平衡器必須處理的流量類型。
- 如要設定較有彈性的功能,請選取應用程式負載平衡器,以便處理含有 HTTP(S) 流量的應用程式。
- 選擇 Proxy 網路負載平衡器,對一或多個區域中的後端實作 TCP Proxy 負載平衡。
- 如要保留用戶端來源 IP 位址、避免增加 Proxy 負擔,並支援 UDP、ESP 和 ICMP 等額外的通訊協定,請選取直通式網路負載平衡器。
您還可以根據應用程式需求進一步縮減選項:應用程式是內部應用程式還是連結網際網路的外部應用程式,以及是否需要部署全域或區域後端。
下圖匯總了 Cloud Load Balancing 的所有可用部署模式。
1 全域外部應用程式負載平衡器支援兩種運作模式:全域和傳統版。
2 全域外部 Proxy 網路負載平衡器支援兩種 運作模式:全域和傳統。
3 直通式網路負載平衡器會保留用戶端來源 IP 位址。直通式網路負載平衡器也支援 UDP、ESP 和 ICMP 等額外的通訊協定。
負載平衡層面
如要判斷何種負載平衡器最適合您的Google Cloud實作項目,請評估以下 Cloud Load Balancing 事項:
流量類型
您要讓負載平衡器處理哪些流量類型,是判斷使用哪個負載平衡器的另一個因素。
負載平衡器類型 | 流量類型 |
---|---|
應用程式負載平衡器 | HTTP 或 HTTPS |
直通式網路負載平衡器 | TCP 或 UDP 這些負載平衡器也支援其他 IP 通訊協定流量,例如 ESP、GRE、ICMP 和 ICMPv6。 |
Proxy 網路負載平衡器 | TCP ,可選擇是否卸載 SSL |
外部與內部負載平衡
Google Cloud 負載平衡器可部署為外部或內部負載平衡器:
外部負載平衡器會將來自網際網路的流量分配至 Google Cloud 虛擬私有雲 (VPC) 網路。
內部負載平衡器會分配來自用戶端的流量,這些用戶端與負載平衡器位於同一個虛擬私有雲網路,或是透過虛擬私有雲網路對等互連、Cloud VPN 或 Cloud Interconnect 連線至虛擬私有雲網路。
如要判斷哪個負載平衡器適合您的應用程式,請使用摘要表格。
全球性與地區性負載平衡
視負載平衡器需要處理的流量類型,以及用戶端是內部或外部而定,您或許可以選擇全域或區域負載平衡器。
如要讓負載平衡器分散在全球各地或跨越多個區域,請選擇全域負載平衡器或跨區域負載平衡器。這類負載平衡器也能將流量分配給多個區域的後端,因此適合應用程式或內容分佈在多個區域的情況,或是在應用程式擴展至新地理區域時,需要彈性新增多區域後端的情況。
只有外部負載平衡器可做為全域負載平衡器。如果內部負載平衡器的後端位於多個區域,請選擇跨區域負載平衡器。跨區域負載平衡器會使用虛擬私有雲網路中區域子網路的區域內部 IP 位址,提供存取權。這與全域負載平衡器不同,後者是使用單一 Anycast IP 位址提供存取權,並在負載平衡器提供 IPv6 終止功能。詳情請參閱下表。
如只需要單一區域的後端、僅需 IPv4 終止功能 (而非 IPv6),或有管轄區法規遵循要求,規定流量必須留在特定區域,請選擇地區性負載平衡器。
如果工作負載因法規遵循需求而需要區域化資源,則必須將特定資源保留在特定區域,或要求流量在指定區域終止。如果需要對 TLS 終止位置進行地理位置控制,則應使用區域負載平衡器。區域負載平衡器會部署在您選擇的特定區域,且只能連線至同一區域中的後端。因此,區域負載平衡器可確保您只在部署負載平衡器及其後端的區域終止 TLS。全域負載平衡器終止傳輸層安全標準 (TLS) 的位置分散在世界各地,這樣可縮短用戶端與負載平衡器之間的延遲。
負載平衡器是大多數高可用性應用程式的關鍵元件。請務必瞭解,整體應用程式的復原能力不僅取決於您選擇的負載平衡器範圍 (全域或區域),也取決於後端服務的備援機制。
下表根據負載平衡器的分配或範圍,摘要說明負載平衡器的復原能力。
負載平衡器範圍 | 架構 | 可從區域中斷情況復原 | 可因應區域服務中斷 |
---|---|---|---|
全球 | 將每個負載平衡器分散在所有區域中 | ||
跨區域 | 將每個負載平衡器分散在多個區域中 | ||
區域 | 將每個負載平衡器分散在區域中的多個可用區 | 特定區域發生中斷時,該區域的區域負載平衡器會受到影響 |
如要判斷哪個負載平衡器適合您的應用程式,請使用摘要表格。
Proxy 與直通式負載平衡
視負載平衡器需要處理的流量類型,以及用戶端是內部或外部而定,您或許可以選擇 Proxy 負載平衡器或直通式負載平衡器。
Proxy 負載平衡器會在負載平衡器終止傳入的用戶端連線,然後開啟從負載平衡器連至後端的新連線。所有應用程式負載平衡器和 Proxy 網路負載平衡器都是以這種方式運作。這些 Proxy 會使用 Google Front Ends (GFE) 或 Envoy Proxy 終止用戶端連線。
直通式負載平衡器不會終止用戶端連線,而是由後端 VM 接收負載平衡封包,且封包的來源、目的地和通訊埠資訊 (如適用) 不會變更。然後由後端 VM 終止連線。來自後端 VM 的回應會直接傳送至用戶端,而不會返回經過負載平衡器。這種機制稱為「伺服器直接回傳」。如需保留用戶端封包資訊,請使用直通式負載平衡器。顧名思義,直通式網路負載平衡器屬於這個類別。
如要判斷哪個負載平衡器適合您的應用程式,請使用摘要表格。
進階與標準網路服務級別
網路服務級別可讓您最佳化網際網路上的系統與 Google Cloud 執行個體之間的連線。進階級服務透過 Google 的進階骨幹網路傳輸流量,標準級則使用一般 ISP 網路。一般來說,如要享有高效能和低延遲,請選擇進階級。如果應用程式對延遲時間或效能沒有嚴格要求,您可以選擇標準級服務,做為低成本的替代方案。
進階級。 如果負載平衡器的 IP 位址位於進階級,流量會透過 Google 的優質全球骨幹網路傳輸,封包會盡量透過距離用戶端最近的 Google 邊緣對等互連點進出。
如果未指定網路層級,負載平衡器預設會使用進階級。部分外部負載平衡器 (例如全域外部應用程式負載平衡器和全域外部 Proxy 網路負載平衡器) 只能在進階層級中設定。
所有內部負載平衡器一律使用 Google 的高品質全球骨幹,因此預設一律會設為進階級。不過,與進階級服務相關的網際網路輸出費用不適用於內部負載平衡器流量。
標準級。 如果負載平衡器的 IP 位址位於標準級,流量會透過距離Google Cloud 負載平衡器設定所在區域最近的對等互連點,進出 Google 網路。
如摘要表格所述,並非所有負載平衡器都能部署在標準級中,因此請據此規劃預算。
由於您是在資源層級選擇級別 (例如負載平衡器或 VM 的外部 IP 位址),故您可在某些資源使用標準級,而在其他資源使用進階級。您可以參考網路服務級別說明文件中的決策樹,協助您做出決定。
負載平衡器摘要 Google Cloud
下表提供詳細資料,例如每個負載平衡器運作的網路服務層級,以及負載平衡架構。
負載平衡器 | 部署模式 | 流量類型 | 網路服務級別 | 負載平衡架構1 |
---|---|---|---|---|
應用程式負載平衡器 | 全球外部 | HTTP 或 HTTPS | 進階級 | EXTERNAL_MANAGED |
區域外部 | HTTP 或 HTTPS | 進階或標準級 | EXTERNAL_MANAGED | |
傳統 | HTTP 或 HTTPS | 全球性進階級 標準級的區域 |
外部2 | |
區域內部3 | HTTP 或 HTTPS | 進階級 | INTERNAL_MANAGED | |
跨區域內部 | HTTP 或 HTTPS | 進階級 | INTERNAL_MANAGED | |
Proxy 網路負載平衡器 | 全球外部 | 具備選用 SSL 卸載機制的 TCP | 進階級 | EXTERNAL_MANAGED |
區域外部 | TCP | 進階或標準級 | EXTERNAL_MANAGED | |
傳統 | 具備選用 SSL 卸載機制的 TCP | 全球性進階級 標準級的區域 |
EXTERNAL | |
區域內部3 | 不具備 SSL 卸載機制的 TCP | 進階級 | INTERNAL_MANAGED | |
跨區域內部 | 不具備 SSL 卸載機制的 TCP | 進階級 | INTERNAL_MANAGED | |
直通式網路負載平衡器 | 外部 一律為區域 |
TCP、UDP、ESP、GRE、ICMP 和 ICMPv6 | 進階或標準級 | EXTERNAL |
內部3 一律為區域 |
TCP、UDP、ICMP、ICMPv6、SCTP、ESP、AH 和 GRE | 進階級 | INTERNAL |
1 負載平衡架構是負載平衡器的轉送規則和後端服務中的屬性,用於指明負載平衡器可否處理內部或外部流量。
EXTERNAL_MANAGED
或 INTERNAL_MANAGED
中的「代管」一詞表示負載平衡器是做為代管服務實作,可透過 Google 前端 (GFE) 或開放原始碼 Envoy Proxy 運作。在代管的負載平衡架構中,要求會轉送到 GFE 或 Envoy Proxy。
EXTERNAL_MANAGED
後端服務附加至EXTERNAL
轉送規則。不過,EXTERNAL
後端服務無法附加至EXTERNAL_MANAGED
轉送規則。如要使用全域外部應用程式負載平衡器專屬的新功能,建議您按照「從傳統版遷移至全域外部應用程式負載平衡器」一文所述的遷移程序,將現有的 EXTERNAL
資源遷移至 EXTERNAL_MANAGED
。3 根據預設,區域內部負載平衡器只允許來自與負載平衡器相同區域的用戶端流量。不過,您可以在轉送規則中啟用全域存取權,允許其他區域的用戶端傳送流量。
後續步驟
- 如要比較並概略瞭解 Cloud Load Balancing 提供的負載平衡功能,請參閱負載平衡器功能比較。