為 GKE 的 AI/機器學習模型推論功能選擇負載平衡策略

本頁說明如何為 Google Kubernetes Engine (GKE) 上的 AI/機器學習模型推論工作負載,選擇合適的負載平衡策略。

本頁面適用於下列對象:

  • 有興趣使用 Kubernetes 容器自動化調度管理功能,提供 AI/機器學習工作負載服務的機器學習工程師、平台管理員和營運人員,以及資料和 AI 專家。
  • 與 Kubernetes 網路互動的雲端架構師和網路專員。

如要進一步瞭解我們在Google Cloud 內容中提及的常見角色和範例工作,請參閱「常見的 GKE 使用者角色和工作」。

閱讀本頁面之前,請先熟悉下列概念:

在 GKE 上部署 AI/機器學習模型推論工作負載時,請選擇合適的負載平衡策略,以最佳化效能、擴充性和成本效益:

  • 選擇 GKE Inference Gateway,為 AI/機器學習工作負載提供最佳化路徑和負載平衡。
  • 選擇「GKE Gateway with custom metrics」(GKE 閘道搭配自訂指標),這會使用 應用程式負載平衡器。 這個選項提供一般用途的控制項,可讓您根據應用程式或基礎架構需求的特定指標,設定流量分配。

GKE Inference Gateway 總覽

GKE Inference Gateway 可管理及最佳化要求嚴苛的生成式 AI (GenAI) 和複雜的大型語言模型 (LLM) 推論工作負載。這項功能擴充了 GKE Gateway API,並提供多項主要優勢:

  • 智慧型 AI 感知路徑:GKE 推論閘道會監控重要的 AI 專屬指標,包括:

    • 模型伺服器 KV 快取使用率
    • 待處理的要求佇列長度
    • 整體 GPU/TPU 使用率
    • LoRA 適應器適用情形
    • 個別要求的運算成本。根據這些指標,閘道會將流量智慧地分配給最合適且負載最少的模型伺服器副本。
  • 要求優先順序:閘道提供要求優先順序機制。

  • 最佳化自動調度資源:閘道提供模型伺服器的最佳化自動調度資源機制。

GKE Gateway with Custom Metrics 總覽

Google Cloud 提供應用程式負載平衡器資源,支援全域外部和區域外部等範圍。這些一般用途負載平衡器會根據後端服務回報的自訂指標分配流量。這種做法可精細控管負載分配,讓您根據應用程式專屬的效能指標進行分配。

比較 GKE Inference Gateway 和 GKE Gateway 與自訂指標

請參閱下表,比較 GKE Inference Gateway 和 GKE Gateway with Custom Metrics 的功能,並為 GKE 上的 AI/機器學習推論工作負載選擇合適的負載平衡解決方案。

功能 GKE Inference Gateway 使用自訂指標的 GKE Gateway (透過應用程式負載平衡器)
主要應用實例 在 Kubernetes 上最佳化生成式 AI 和機器學習推論工作負載,包括提供大型語言模型 (LLM)。確保模型資源的存取權公平,並針對延遲時間敏感的 GPU 或 TPU 型 LLM 工作負載進行最佳化。 提供一般用途的 HTTP(S) 負載平衡,根據自訂應用程式回報的指標分配流量。這類負載平衡非常適合延遲時間敏感型服務,例如即時遊戲伺服器或高頻交易平台,這些服務會回報自訂使用率資料。
基本轉送 支援以主機和路徑為準的標準 HTTP(S) 路由,擴充 GKE Gateway API。 支援根據主機和路徑的標準 HTTP(S) 轉送。您可以使用 GKE Gateway API 的標準資源設定這項功能。
進階轉送邏輯 提供模型感知轉送、流量拆分、鏡射等進階功能,並可為要求套用優先順序和重要性等級。 根據應用程式透過開放式要求費用匯總 (ORCA) 標準回報的自訂指標,平衡流量。這項功能可啟用政策,例如區域內的端點加權 WEIGHTED_ROUND_ROBIN
支援的指標 使用一系列原生 AI 專屬指標,例如 GPU 或 TPU 使用率、KV 快取命中次數和要求佇列長度。您也可以使用標準化 HTTP 標頭機制,將這項功能設為使用應用程式回報的指標。 依據應用程式回報的指標,使用標準化 HTTP 標頭機制,特別是 Open Request Cost Aggregation (ORCA) 負載回報。這項機制支援 CPU 和記憶體等標準指標,以及應用程式專用受限資源的自訂命名指標。
處理要求 專為處理要求成本不一致的工作負載而設計,這類工作負載在 LLM 中很常見,因為提示詞複雜度不一。支援要求重要性等級,可優先處理不同類型的推論要求。 最適合個別要求的處理成本相對一致的工作負載。這個解決方案不包含原生要求優先順序功能。
支援 LoRa 轉接器 提供以親和性為基礎的後端原生路由,確保要求導向配備特定 LoRa 轉接器的後端,並轉送至適當的資源。 不提供 LoRa 介面卡的原生支援,也不提供以 LoRa 設定為依據的親和性轉送。
自動調度資源整合 運用 KV 快取使用率等 AI 專屬指標,做出更明智的資源調度決策,進而為模型伺服器最佳化自動調度。 使用自訂指標與水平 Pod 自動調度資源 (HPA) 整合。這些指標會回報給應用程式負載平衡器,並根據回報的負載信號,以一般方式用於調整規模。
設定與配置 使用 GKE Gateway API 進行設定。透過專用的 InferencePoolInferenceModel 自訂資源定義 (CRD) 擴充標準 API,啟用 AI 感知功能。 您可以使用 GKE Gateway API 的標準資源設定這項解決方案。應用程式必須實作以 HTTP 標頭為基礎的機制,例如開放式要求費用匯總 (ORCA),才能回報負載平衡的自訂指標。
安全性 這項解決方案包含在閘道層級使用 Model Armor 進行 AI 內容篩選。此外,還運用了基礎 GKE 安全功能,例如 TLS、Identity and Access Management (IAM)、角色型存取控管 (RBAC) 和命名空間。 這個解決方案使用標準的應用程式負載平衡器安全堆疊,包括 Google Cloud Armor、TLS 終止和 IAM。如要啟用 AI 內容篩選功能,您可以將 Google Cloud Armor 整合為服務擴充功能。
觀測能力 提供 AI 專屬指標的內建可觀測性,包括 GPU 或 TPU 使用率、KV 快取命中次數、要求佇列長度和模型延遲時間。 可觀測性取決於應用程式設定要回報的任何自訂指標。您可以在 Cloud Monitoring 中查看這些指標。包括標準或自訂名稱的指標。
擴充性 以可擴充的開放原始碼為基礎,可讓使用者管理端點選擇器演算法。它會使用專門的 [自訂資源定義 (CRD)](/kubernetes-engine/docs/how-to/deploy-gke-inference-gateway),例如 InferencePoolInferenceModel,擴充 GKE Gateway API,簡化常見的 AI 用途。 這項功能具有彈性,可讓您使用應用程式透過 ORCA 標準回報的任何 [自訂指標 (負載訊號)](/load-balancing/docs/https/applb-custom-metrics),擴充負載平衡功能。
發布階段 正式發布 正式發布

使用 GKE Inference Gateway 的時機

選擇 GKE Inference Gateway,在 GKE 上最佳化複雜的 AI 和機器學習推論工作負載,特別是大型語言模型 (LLM)。建議在下列情況使用這項解決方案:

  • 提供 LLM:使用 vLLM 等模型伺服器時,您需要根據 LLM 特定狀態 (例如 KV 快取利用率或要求佇列長度) 做出轉送決策。
  • 使用 LoRa 適應器部署模型:您需要智慧型、以親和性為準的路由,將要求轉送至配備正確且可用 LoRa 適應器的後端。
  • 處理處理成本差異極大的推論要求:舉例來說,動態提示大小或複雜度需要具備成本意識的負載平衡器。
  • 實作要求優先順序:您需要為不同類別的推論流量設定優先順序,例如重要、標準或可捨棄的要求。
  • 最佳化自動調度資源:您希望自動調度資源機制與生成式 AI (GenAI) 模型伺服器的特定效能指標 (例如 KV 快取使用率) 緊密結合,以便做出更明智的調度資源決策。
  • 使用 Model Armor 整合功能:您需要在閘道層級使用 Model Armor 進行 AI 安全檢查。
  • 取得開箱即用的可觀測性:您需要針對重要的 AI 專屬指標 (包括 GPU 或 TPU 使用率、KV 快取命中次數和要求佇列長度) 內建可觀測性。
  • 簡化生成式 AI 部署作業:您偏好專為簡化 GKE 上常見生成式 AI 部署模式而設計的解決方案,同時保留透過可擴充的 GKE Gateway API 基礎進行未來自訂的選項。

何時使用 GKE Gateway 搭配自訂指標

如要根據應用程式的獨特效能指標,達成彈性的一般用途負載平衡,請搭配使用 GKE Gateway 和自訂指標。這個方法可根據應用程式定義的專屬效能指標 (包括特定推論情境) 分散負載。建議在下列情況下使用這項功能:

  • 工作負載的流量很高,且每個要求的處理成本相對一致。
  • 應用程式回報的一或兩項特定自訂指標 (通常是透過 HTTP 回應標頭,並使用開放式要求成本匯總 (ORCA) 負載回報標準),可有效管理負載分配。
  • 負載平衡需求與生成式 AI 或 LLM 特定功能無關。
  • 您的運作模型不需要 GKE Inference Gateway 提供的 AI 專用智慧功能,可避免不必要的架構複雜度。
  • 我們優先考量維持與現有應用程式負載平衡器部署作業的一致性,而這些部署作業符合推論服務的負載平衡需求。

後續步驟