このページでは、Google Kubernetes Engine(GKE)の AI/ML モデル推論ワークロードに適したロード バランシング戦略を選択する方法について説明します。
このページは、次のような方を対象としています。
- AI / ML ワークロードの提供に Kubernetes コンテナ オーケストレーション機能を使用することに関心をお持ちの ML エンジニア、プラットフォーム管理者 / オペレーター、データ / AI スペシャリスト。
- Kubernetes ネットワーキングを操作するクラウド アーキテクトとネットワーク スペシャリスト。
Google Cloud のコンテンツで使用されている一般的なロールとタスクの例の詳細については、一般的な GKE ユーザーのロールとタスクをご覧ください。
このページを読む前に、次のことを理解しておく必要があります。
Google Kubernetes Engine(GKE)に AI/ML モデル推論ワークロードをデプロイする場合は、適切なロード バランシング戦略を選択して、パフォーマンス、スケーラビリティ、費用対効果を最適化します。 Google Cloud には、次の個別のソリューションが用意されています。
- GKE Inference Gateway: 高度な AI/ML ルーティング用に構築されたソリューション。詳細については、GKE Inference Gateway のドキュメントをご覧ください。
- カスタム指標を使用した GKE Gateway: アプリケーション ロードバランサを使用するソリューション。汎用制御を提供し、アプリケーション ロードバランサと組み合わせることができます。
ロードバランシング ソリューションを組み合わせる
一部のアーキテクチャでは、GKE Inference Gateway と GKE Gateway の両方をカスタム指標とともに使用できます。これらのアーキテクチャでは、アプリケーション ロードバランサはカスタム指標を含む GKE Gateway とともに使用されます。たとえば、グローバル外部アプリケーション ロードバランサは、地理やヘルスチェックなどの要因に基づいて、トラフィックを適切なリージョンに転送します。詳細については、アプリケーション ロードバランサをご覧ください。トラフィックが特定のリージョンに到達すると、GKE Inference Gateway はきめ細かい AI 対応のロード バランシングを実行して、リクエストを最適なモデルサーバーに転送します。詳細については、GKE Inference Gateway のドキュメントをご覧ください。
GKE で推論アプリケーションに最適な Google Cloud ロード バランシング ソリューションを選択するには、ワークロードの特性、パフォーマンス要件、運用モデルを考慮します。
トラフィックを最も適切で負荷の少ないモデルサーバー レプリカに転送するために、GKE Inference Gateway の Endpoint Picker 拡張機能は AI 固有の重要な指標をモニタリングします。これらの指標には、モデルサーバーの KV キャッシュ使用率、保留中のリクエストのキュー長、GPU または TPU の全体的な読み込み、LoRA アダプタの可用性、個々のリクエストの計算コストなどがあります。高度なルーティングに加えて、GKE Inference Gateway は、モデルサーバーのリクエストの優先順位付けと最適化された自動スケーリングを提供します。
カスタム指標を使用した GKE Gateway の概要
グローバル外部アプリケーション ロードバランサやリージョン外部アプリケーション ロードバランサなどのアプリケーション ロードバランサは、バックエンド サービスが報告するカスタム指標に基づいてトラフィックを分散する汎用ロードバランサです。この機能により、アプリケーション固有のパフォーマンス指標に基づいて負荷分散をきめ細かく制御できます。
GKE Gateway は、アプリケーション ロードバランサのプロビジョニングと管理を行う Kubernetes ネイティブ インターフェースとして機能します。基本的に、GKE クラスタで Gateway リソースを定義すると、GKE Gateway コントローラは基盤となるアプリケーション ロードバランサを自動的に構成します。これにより、 Google Cloudのロード バランシング インフラストラクチャを使用しながら、Kubernetes から GKE サービスへの外部 HTTP/HTTPS トラフィックを直接管理する簡単な方法が提供されます。
ロード バランシング ソリューションを比較する
次の表は、GKE Inference Gateway とカスタム指標を使用した GKE Gateway の機能を比較したものです。
機能 | 推論ゲートウェイ | カスタム指標を使用した GKE Gateway(アプリケーション ロードバランサを使用) |
---|---|---|
主なユースケース | 大規模言語モデル(LLM)のサービングなど、Kubernetes 上の生成 AI/ML 推論ワークロードを最適化します。単一のモデルで複数のユースケースをサービングし、モデルリソースへの公平なアクセスを確保し、レイテンシの影響を受けやすい GPU/TPU ベースの LLM ワークロードを最適化する場合に有効です。 | カスタムのアプリケーション報告指標(ロード シグナル)に基づいて正確なトラフィック分散を必要とするワークロードに、汎用の HTTP(S) ロード バランシングを提供します。カスタム使用率データをレポートするリアルタイム ゲームサーバーや高頻度取引プラットフォームなど、レイテンシの影響を受けやすいサービスに適しています。 |
ベース ルーティング | ホストとパスによる標準の HTTP(S) ルーティングをサポートし、GKE Gateway API を拡張します。 | GKE Gateway API の標準リソースを使用して構成された、ホストとパスによる標準の HTTP(S) ルーティングをサポートします。 |
高度なルーティング ロジック | モデル対応ルーティング(ボディベースのモデル名など)、トラフィック分割、ミラーリングを実行し、優先度と重要度レベルを適用します。 | Open Request Cost Aggregation(ORCA)標準を使用して、アプリケーションから報告されたカスタム指標に基づいてトラフィックを分散します。これにより、ローカリティ内のエンドポイントの重み付けに WEIGHTED_ROUND_ROBIN などのポリシーを適用できます。 |
サポートされている指標 | GPU/TPU 使用率、KV キャッシュヒット、リクエスト キューの長さなど、すぐに使用できる AI 固有の組み込みシグナルのスイートを使用します。標準化された HTTP ヘッダー メカニズムを使用して送信されるアプリケーション レポートの指標を使用するように構成することもできます。 | 標準化された HTTP ヘッダー メカニズムを使用して、アプリケーションから報告された指標に依存します(このメカニズムは ORCA 負荷レポートと呼ばれます)。この形式では、CPU やメモリなどの標準指標や、アプリケーション固有の制約付きリソースのカスタム名付き指標をレポートできます。 |
リクエスト処理 | LLM で一般的な非均一リクエストの費用を削減します。リクエストの [重要度レベル](/kubernetes-engine/docs/concepts/about-gke-inference-gateway#traffic-distribution)をサポートします。 | リクエスト費用が比較的均一になるように最適化されています。組み込みのリクエストの優先順位付けは含まれません。 |
LoRA アダプタのサポート | 適切な LoRa 搭載バックエンドへのネイティブなアフィニティ ベースのルーティングを提供します。 | ネイティブ サポートは提供されません。 |
自動スケーリングの統合 | `KV キャッシュヒット` などの AI 固有の指標に基づいて、モデルサーバーのスケーリングを最適化します。 | 水平 Pod オートスケーラー(HPA)はカスタム指標を使用できますが、設定はアプリケーション ロードバランサ用に報告された指標に基づいて汎用的に行われます。 |
セットアップと設定 | GKE Gateway API を使用して構成します。標準 API を、AI 対応機能を有効にするための特別な InferencePool と InferenceModel カスタム リソース定義(CRD)で拡張します。 |
GKE Gateway API の標準リソースを使用して構成します。アプリケーションは、カスタム指標を報告するために HTTP ヘッダーベースのメカニズムを実装する必要があります。 |
セキュリティ | ゲートウェイで Model Armor を使用して AI コンテンツのフィルタリングを提供します。TLS、IAM、ロールベース アクセス制御(RBAC)、Namespace などの基本的な GKE セキュリティ機能を活用します。 | Model Armor、TLS 終端、IAM などの標準のアプリケーション ロードバランサ セキュリティ スタックを使用します。Model Armor は、Service Extension として統合することでサポートされます。 |
オブザーバビリティ | GPU や TPU の使用率、`KV キャッシュヒット`、`リクエスト キューの長さ`、モデル レイテンシなどの AI 固有の指標に対する組み込みのオブザーバビリティを提供します。 | オブザーバビリティは、アプリケーションが報告するように構成されているカスタム指標に依存します。これらの指標は Cloud Monitoring で確認できます。標準の指標やカスタム名の指標がこれに該当します。 |
拡張性 | ユーザー管理の Endpoint Picker アルゴリズムをサポートする拡張可能なオープンソースの基盤上に構築されています。GKE Gateway API を、一般的な AI/ML ユースケースを簡素化する専用のカスタム リソース定義(InferencePool 、InferenceModel )で拡張します。 |
柔軟性を重視して設計されており、アプリケーションが ORCA 標準を使用して報告できるカスタム指標(ロードシグナル)でロード バランシングを拡張できます。 |
リリース ステージ | プレビュー | 一般提供 |
GKE Inference Gateway を使用するタイミング
GKE Inference Gateway を使用して、GKE 上の高度な AI/ML 推論ワークロード(特に LLM)を最適化します。
次の操作を行う必要がある場合は、GKE Inference Gateway を選択します。
- モデル対応ルーティング: KV キャッシュ ヒットやリクエスト キューの長さなどの LLM 固有の状態に基づいて、または特定の LoRA アダプタにトラフィックを転送します。
- 費用認識型ロード バランシング: 処理費用が変動する推論リクエストを効率的に処理し、重要度レベル(クリティカル、標準、破棄可能)で優先順位を付けます。
- AI 固有の自動スケーリング: 関連する AI 指標に基づいてモデルサーバーを動的にスケーリングし、リソースを最適に使用します。
- 組み込みの AI の安全性とオブザーバビリティ: ネイティブの Model Armor 統合を使用して AI の安全性チェックを行い、GPU/TPU 使用率、KV キャッシュ ヒット、リクエスト キューの長さに関するすぐに使用できる分析情報を取得します。
- GenAI のデプロイの簡素化: GKE で一般的な GenAI デプロイ パターンを簡素化し、GKE Gateway API 基盤によるカスタマイズを提供する、専用の拡張可能なソリューションを活用できます。
カスタム指標で GKE Gateway を使用するタイミング
GKE Gateway をカスタム指標とともに使用して、アプリケーションの固有のパフォーマンス指標(一部の推論シナリオなど)に適応する柔軟な汎用ロード バランシングを実現します。
次の操作を行う必要がある場合は、カスタム指標を含む GKE Gateway を選択します。
- リクエスト費用が比較的均一な大量のトラフィックを処理する。
- ORCA ロードレポートを使用して、アプリケーションから報告されたカスタム指標に基づいて負荷を分散します。
- GKE Inference Gateway で提供される AI/LLM 固有のルーティング インテリジェンスを回避します。
- 推論サービスのニーズを満たす既存のアプリケーション ロードバランサのデプロイとの一貫性を優先します。
次のステップ
- デプロイと構成の詳細な手順については、GKE Inference Gateway についてをご覧ください。
- アプリケーション ロードバランサについて学習する。
- GKE を活用して AI/ML イニシアチブを加速するための試験運用版のサンプルを GKE AI Labs で確認する。