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

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

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

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

  • AI / ML ワークロードの提供に Kubernetes を使用することに関心をお持ちの機械学習(ML)エンジニア、プラットフォーム管理者 / オペレーター、データ / AI スペシャリスト
  • Kubernetes ネットワーキングを操作するクラウド アーキテクトまたはネットワーク スペシャリスト

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

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

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

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

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

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

以下に、弾力性のあるクロスリージョン高可用性の主要コンポーネントとその連携について説明します。

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

次のステップ