すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:自動スケーリングの概要

最終更新日:Dec 14, 2024

自動スケーリングは、ビジネス要件を満たすためにコンピューティングリソースを動的にスケーリングする管理サービスです。 このサービスは、オンラインワークロード、大規模なコンピューティングおよびトレーニングタスク、GPUアクセラレーションの深層学習タスク、共有GPUを使用するモデル推論およびモデルトレーニングタスクに適しています。 このトピックでは、ACKサーバーレスクラスターでサポートされる自動スケーリングソリューションについて説明します。

解決策

概要

スケーリングメトリクス

シナリオ

サポートされるリソースタイプ

関連ドキュメント

HPA

Kubernetesの場合、ポッドを自動的にスケーリングするために最も一般的に使用されるソリューションは、Horizontal Pod Autoscaler (HPA) です。 HPAは、複製されたポッドを迅速にスケールアウトして、ワークロードが急増したときに重いストレスに対処し、需要が収まったときに適切にスケールインしてリソースを節約できます。

eコマース、オンライン教育、金融サービスなど、サービス需要、多数のサービス、頻繁なスケーリング要件の大きな変動がある企業。

scaleインターフェイスと互換性のあるDeploymentsやStatefulSetsなどのオブジェクト。

水平ポッドの自動スケーリング

CronHPA

Cron Horizontal Pod Autoscaler (CronHPA) は、crontabのようなスケジュールに基づいてクラスター内のポッドをスケーリングします。 タイムゾーン、実行日、除外日 (休日など) の設定をサポートし、HPAと連携して動作できます。

スケジュールされたスケーリング。

ビジネストラフィックにはかなりのピーク期間があるか、アプリケーションが特定の時間にタスクを実行する必要があります。

デプロイメントやStatefulSetsなどのリソース。

スケジュールされた水平スケーリングにCronHPAを使用

VPA

垂直ポッドオートスケーラー (VPA) は、ポッドリソースの使用状況を監視し、柔軟なCPUとメモリの割り当てに関する推奨事項を提供し、ポッドレプリカの数を変更することなく、必要に応じてこれらの設定を自動的に調整します。

VPAは、ポッドのコンテナ内のCPUおよびメモリリソースの要求と制限を推奨し、自動的に調整します。

安定したリソース供給を必要とするStatefulアプリケーションまたはモノリシックアプリケーション。 通常、VPAは、ポッドが異常から回復するときに使用されます。

Deployments、DaemonSets、StatefulSetsなどのリソース。

垂直ポッドの自動スケーリング

AHPA

Advanced Horizontal Pod Autoscaler (AHPA) は、ワークロードの変動を自動的に識別し、履歴メトリックデータに基づいてリソース需要を予測して、予測スケーリングの実装に役立ちます。

  • CPU、メモリ、GPU使用量などのリソース指標。

  • 1秒あたりのクエリ (QPS) や応答時間 (RT) などのトラフィック指標。

  • その他のカスタムメトリック。

ライブストリーミング、オンライン教育、ゲームアプリケーションなど、ワークロードが定期的に変動するアプリケーション。

デプロイメントやKnativeサービスなどのリソース。

AHPA概要