管理負載平衡器

Google Distributed Cloud (GDC) 實體隔離設備提供負載平衡器,可讓應用程式彼此公開服務。負載平衡器會分配穩定的虛擬 IP (VIP) 位址,在後端工作負載集區中平衡流量。GDC 中的負載平衡器會執行第 4 層 (L4) 負載平衡,也就是將一組設定的前端 TCP 或 UDP 連接埠對應至相應的後端連接埠。負載平衡器是在專案層級設定。

系統會為下列工作負載類型設定負載平衡器:

  • 在 VM 上執行的工作負載。
  • Kubernetes 叢集內的容器化工作負載。

在 GDC 中,您可以透過三種方式設定負載平衡器:

  • 使用 Networking Kubernetes 資源模型 (KRM) API。您可以使用這個 API 建立負載平衡器。
  • 使用 gdcloud CLI。 您可以使用這個 API 建立負載平衡器。
  • 直接從 Kubernetes 叢集使用 Kubernetes 服務。這個方法只會建立區域負載平衡器。

負載平衡器元件

使用 KRM API 或 gdcloud CLI 設定負載平衡器時,請使用 L4 直通負載平衡器:

  • L4 代表通訊協定為 TCP 或 UDP。
  • 直通表示工作負載和用戶端之間沒有 Proxy。

負載平衡器包含下列可設定的元件:

  • 轉送規則:指定要轉送的流量,以及轉送至哪個後端服務。轉送規則的規格如下:

    • 包含三個元組:CIDR、通訊埠和通訊協定,供用戶端存取。
    • 支援 TCP 和 UDP 通訊協定。
    • 提供內部和外部轉送規則。用戶端可以從虛擬私有雲 (VPC) 存取內部轉送規則。用戶端可從 GDC 平台外部或內部存取外部轉送規則,但前提是工作負載已定義 EgressNAT 值。
    • 轉送規則會連線至後端服務。您可以將多個轉送規則指向同一個後端服務。
  • 後端服務:是負載平衡中樞,可將轉送規則、健康狀態檢查和後端連結在一起。後端服務會參照後端物件,該物件會識別負載平衡器轉送流量的目標工作負載。單一後端服務可參照的後端有以下限制:

    • 每個可用區各有一個區域後端資源。
    • 每個叢集一個叢集後端資源。這無法與專案後端混合使用。
  • 後端:區域物件,用於指定做為所建立後端服務後端的端點。後端資源必須限定於某個區域。使用標籤選取端點。將選取器範圍設為專案或叢集:

    • 專案後端是指未指定 ClusterName 欄位的後端。在這種情況下,指定的標籤會套用至特定專案中,區域特定 VPC 的所有工作負載。標籤會套用至多個叢集中的 VM 和 Pod 工作負載。如果後端服務使用專案後端,您就無法在該後端服務中,參照該可用區的其他後端。

    • 叢集後端是指指定 ClusterName 欄位的後端。在這種情況下,指定的標籤會套用至指定專案中具名叢集的所有工作負載。在單一後端服務中,每個叢集的每個區域最多可以指定一個後端。

  • 健康狀態檢查:指定探測,判斷後端中特定工作負載端點的健康狀態是否良好。健康狀態不良的端點會從負載平衡器中移除,直到恢復健康狀態為止。健康狀態檢查僅適用於 VM 工作負載。Pod 工作負載可使用內建的 Kubernetes 探查機制,判斷特定端點是否正常運作。

直接使用 Kubernetes Service 時,您會使用 Service 物件,而非先前列出的元件。您只能指定建立 Service 物件的叢集中的工作負載。

外部和內部負載平衡

GDC 應用程式可存取下列網路服務類型:

  • 內部負載平衡器 (ILB):可讓您向機構內的其他叢集公開服務。
  • 外部負載平衡器 (ELB):從可從外部工作負載路由傳輸的範圍分配 VIP 位址,並在 GDC 機構外部公開服務,例如 GDC 執行個體內或外部的其他機構。

服務虛擬 IP 位址

ILB 會分配僅供機構內部使用的 VIP 位址。這些 VIP 位址無法從機構外部連線,因此您只能使用這些位址,向機構內的其他應用程式公開服務。在同一個執行個體中,這些 IP 位址可能會在不同機構之間重疊。

另一方面,ELB 會分配可從機構外部連線的 VIP 位址。因此,ELB VIP 位址在所有機構中不得重複。通常機構可用的 ELB VIP 位址較少。

後續步驟