弾力性のあるクロスリージョン高可用性について

Google Kubernetes Engine(GKE)で要求の厳しい AI 推論ワークロードに弾力性のあるクロスリージョン高可用性を実現し、異なる Cloud de Confiance リージョン間でアクセラレータ容量に効率的かつ確実にアクセスできます。このソリューションでは、GKE マルチクラスタ推論 Gateway と GKE 自動スケーリング機能を使用して、ワークロードがさまざまなリージョンでアクセラレータ容量にアクセスしてスケーリングできるようにします。このアプローチにより、AI アプリケーションのリソースの可用性、スケーラビリティ、復元力が向上します。このドキュメントでは、弾力性のあるクロスリージョン高可用性のメリット、主要コンポーネント、全体的な仕組みについて説明します。

このドキュメントを読むにあたり、次のことについて知っている必要があります。

このドキュメントは、次のペルソナを対象としています。

  • AI / ML ワークロードのサービングに Kubernetes を使用することに関心がある ML エンジニア、プラットフォーム管理者 / オペレーター、データ / AI スペシャリスト
  • Kubernetes ネットワーキングを操作するクラウド アーキテクトまたはネットワーキング スペシャリスト

Cloud de Confiance のコンテンツで使用されている一般的なロールとタスクの例の詳細については、一般的な GKE Enterprise ユーザーロールとタスクをご覧ください。

弾力性のあるクロスリージョン高可用性のメリット

エラスティック クロスリージョン高可用性には、AI/ML 推論ワークロードの管理に次のようなメリットがあります。

  • 容量とスケーラビリティの向上: 異なるリージョンにまたがる複数のクラスタから GPU または TPU リソースをプールすることで、単一リージョンのアクセラレータ不足を解消します。異なるアクセラレータ タイプを使用して、容量プールをさらに拡張することもできます。このアプローチにより、AI 推論ワークロードは単一のリージョンまたはアクセラレータ タイプの容量を超えてバーストし、リージョンに関係なくフリート内の利用可能なリソースを自動的に利用できます。
  • 自動スピルオーバーと信頼性、可用性の向上: Gateway は、優先リージョンまたはクラスタを優先してトラフィックをインテリジェントにルーティングします。あるロケーションで容量上限に達すると、トラフィックは自動的にリソースが利用可能な他のロケーションにオーバーフローします。このアプローチをマルチリージョン デプロイと組み合わせることで、問題が発生しているクラスタやリージョンをシステムがバイパスできるため、高可用性とフォールト トレランスが向上します。
  • AI 最適化トラフィック分配: Key-Value キャッシュの使用率など、AI 固有のカスタム指標で使用率ベースのロード バランシングを使用します。この設定により、グローバルに最適化されたルーティングの決定が保証されます。AI 最適化トラフィック分散により、リクエストを処理できるバックエンドにリクエストが送信されるため、パフォーマンスを最大化し、マルチクラスタ推論フリート全体で過負荷を防ぐことができます。

弾力性のあるクロスリージョン高可用性の仕組み

GKE のリージョン間の弾力的な高可用性により、AI 推論ワークロードは複数の Cloud de Confiance リージョンにわたってアクセラレータ容量(GPU や TPU など)を自動的に使用できます。プライマリ リージョンで必要なリソースの容量制約が発生した場合、このソリューションは、定義された設定を尊重しながら、トラフィックをインテリジェントにルーティングし、ワークロードを容量のある他のリージョンにスケーリングします。

以下に、エラスティック クロスリージョン高可用性の主要コンポーネントと、それらの連携の仕組みについて説明します。

  • マルチクラスタ推論 Gateway: 推論アプリケーションが、異なるリージョンの複数の GKE クラスタにデプロイされます。これらのクラスタは、GKE フリートの一部として管理されます。GKE マルチクラスタ Inference Gateway(MCG)は、推論リクエストに単一のプライベート エンドポイントを提供する内部ロードバランサで構成されます。このゲートウェイは、フリート内のすべてのクラスタにわたるサービス デプロイを認識しています。
  • 使用率ベースのバランシング: 基本リクエスト レートを使用する代わりに、ロードバランサはモデルサーバーから報告されたリアルタイムのカスタム使用率指標に基づいてトラフィックを分散します。AI 推論の場合、これは多くの場合、サーバーの実際の負荷を反映する KV キャッシュ使用率などの指標です。
  • ロケーションとリソースの優先度: クラスタの作成時に、AI 推論ワークロードの実行が許可されるリージョンまたはゾーンを構成できます。また、次のものを使用して優先順位を指定できます。
    • GCPBackendPolicy: このポリシーは Gateway に関連付けられており、優先バックエンドを定義できます。ロードバランサがトラフィックの送信を優先するリージョン(クラスタ)を指定できます。このポリシーは通常、予約容量がある場所や、レイテンシ要件が低い場所に合わせます。
    • カスタム コンピューティング クラス(ノードプールの自動作成を使用する場合に省略可): 個々の GKE クラスタ内で、カスタム ComputeClass オブジェクトを使用して、マシンタイプ(a3-highgpu-8g など)、容量タイプ(予約、オンデマンド、スポットなど)、さらにはそのリージョン内の優先ゾーンなど、優先ノードタイプを定義できます。
  • 動的スケーリングとトラフィック ルーティング: トラフィックは次のプロセスに従ってスケーリングされ、ルーティングされます。
    • 受信リクエストは、マルチクラスタ Ingress Gateway の内部ロードバランサに到達します。
    • ロードバランサは、GCPBackendPolicy に従って、まず優先リージョンのバックエンドにトラフィックを送信します。
    • トラフィックは、カスタム使用率指標に基づいてリージョン内およびバックエンド間で分散されます。
    • 各クラスタの Horizontal-Pod-Autoscaler(HPA)は、同じ使用率指標に基づいてモデルサーバー Pod の数をスケーリングします。
    • カスタム ComputeClass に基づいて、GKE クラスタ オートスケーラーとノード自動プロビジョニングは、Pod のスケーリング要件を満たすために、優先タイプとゾーンのノードを追加または削除します。
  • 弾力的なリージョン間高可用性の動作: 優先リージョンのモデルサーバーが完全に使用されると(つまり、追加の容量が使用できなくなると)、ロードバランサは、使用可能な容量がある他の構成済みリージョンのクラスタにトラフィックを自動的に転送します。その後、HPA とクラスタ オートスケーラーは、必要に応じてこれらのフォールバック リージョンのリソースをスケールアップします。

次のステップ