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

Container Service for Kubernetes:Auto scaling の概要

最終更新日:Jun 18, 2026

ワークロードスケーリングおよび計算リソーススケーリングは、トラフィックスパイクに対応しコストを削減するために、Pod レプリカ数およびクラスター容量を動的に調整します。

注意事項

ワークロードスケーリングおよび計算リソーススケーリング

ACK の Auto scaling は次の 2 つのレイヤーで動作します。

  • ワークロードスケーリング:スケジューリングレイヤーで Pod 数または Pod あたりのリソース割り当てを調整します。たとえば、HPA はトラフィックの変化に基づいてアプリケーション Pod をスケーリングします。

  • 計算リソーススケーリング:ノードスケーリングおよび仮想ノードスケーリングを通じて、Pod スケジューリングおよびリソース使用量に基づいてクラスターリソースを調整します。

両方のレイヤーを組み合わせることで、Pod スケジューリングの要件を満たしながらリソース利用率を向上させることができます。

ワークロードスケーリング ソリューション

一時的なスケーリングを行うには、kubectl scale を実行して手動で Pod 数を調整します。自動スケーリングを行うには、以下のワークロードスケーリングソリューションから選択してください。

ソリューション

説明

スケーリングメトリック

シナリオ

参考情報

HPA

HPA はピーク時に Pod をスケールアウトし、オフピーク時にスケールインすることでコストを最適化します。ほとんどのシナリオに適しています。

e コマース、オンライン教育、金融サービスなど、頻繁にトラフィックが変動するオンラインサービスに最適です。

Horizontal Pod Autoscaler (HPA) の使用

コンテナ定時スケーリング

コンテナ定時スケーリングは、タイムゾーンおよび日付をサポートする事前定義された Crontab 形式のスケジュールに基づいて Pod をスケーリングします。祝日などの日付を除外できます。HPA と互換性があります。

スケジュールスケーリング

予測可能なトラフィックパターンまたは定期タスクを持つアプリケーションに最適です。

VPA

VPA は Pod のリソース消費を監視し、CPU およびメモリ割り当てを推奨し、レプリカ数を変更せずに割り当てを調整します。

VPA は、Pod の CPU およびメモリのリクエストとリミットを推奨し、必要に応じて自動調整します。

ステートフルアプリケーションや大規模なモノリシックデプロイメントなど、安定したリソース割り当てが必要なシナリオに最適です。通常、Pod が異常から回復する際に VPA が有効になります。

Vertical Pod Autoscaler (VPA)

Kubernetes-based Event Driven Autoscaling (KEDA)

KEDA は、多様なイベントソースからのワークロードに対してイベント駆動型の自動スケーリングを実現します。

キュー長などのイベント数。

ビデオおよび音声トランスコーディング、イベント駆動型ジョブ、ストリーム処理など、即時スケーリングを必要とするイベントベースのオフラインジョブに最適です。

イベント駆動型自動スケーリング

Advanced Horizontal Pod Autoscaler (AHPA)

AHPA は過去のメトリックからワークロードの変動パターンを学習し、リソース需要を予測して予測的スケーリングを実現します。

  • CPU、メモリ、GPU 使用率などのリソースメトリック

  • 秒間クエリ数 (QPS) やレスポンスタイム (RT) などのトラフィックメトリック

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

ライブ配信、オンライン教育、ゲームなど、周期的なトラフィックパターンを持つシナリオに最適です。

Auto Scaling Prediction (AHPA)

UnitedDeployment コントローラーは、複数のサブセットにわたって同一タイプのワークロードを管理し、サブセットごとにレプリカ数を調整します。上記のスケーリングソリューションと組み合わせることで、計算リソースタイプ間での柔軟なスケーリングが可能になります。UnitedDeployment コントローラーに基づくワークロードスケーリングの実装をご参照ください。

計算リソーススケーリング

計算リソーススケーリングコンポーネントは保留中の Pod を検出し、スケジューリング要件を満たすために ECS ノードまたはエラスティックコンテナインスタンスをプロビジョニングします。

ノードスケーリングの比較については、ノードスケーリングをご参照ください。

重要

以下の表に示すリソース配信統計は理論値です。実際の値は環境によって異なる場合があります。

ソリューション

説明

シナリオ

リソース配信効率

参考情報

ノード自動スケーリング

ACK は、クラスターリソースが Pod スケジューリング要件を満たせない場合に自動的にノードをスケーリングします。

すべてのシナリオに適しています。特にオンラインサービス、ディープラーニングタスク、小規模スケーリングに推奨されます。自動スケーリング対応ノードプールが 20 未満、または各ノードプールのノード数が 100 未満のクラスターに推奨されます。

クラスターに 100 ノードを追加するのに必要な時間:

ノード自動スケーリングの有効化

ノードインスタントスケーリング

ノードインスタントスケーリングは、ノード自動スケーリングと比較して、より高速なスケーリング、より高い配信成功率、および ECS インスタンス在庫のヘルスモニタリングを提供します。ソリューション比較をご参照ください。

すべてのシナリオに適しています。特に、大規模クラスターで高速スケーリングが必要な場合、マルチインスタンスタイプおよびマルチゾーンスケーリング、またはトポロジースプレッド制約などの高度なスケジューリングが必要な場合に推奨されます。自動スケーリング対応ノードプールのいずれかに 100 ノード以上が含まれる、またはクラスター全体で自動スケーリング対応ノードプールが 20 を超える場合、大規模クラスターとみなされます。

クラスターに 100 ノードを追加するのに必要な時間:

仮想ノード

仮想ノードにより、ノード管理および容量計画が不要になります。クラスターは仮想ノード上で最大 50,000 Pod をサポートし、スケールアウト時には最大 1 分以内に 10,000 Pod を作成できます。

すべてのシナリオに適しています。特にタスク、定期タスク、データコンピューティング、AI アプリケーション、ワークロードの急増に最適です。

クラスターで 1,000 Pod を作成するのに必要な時間:

ECI 上で実行するように Pod をスケジュール

課金

Auto scaling 自体は無料です。スケーリングコンポーネントは Pod として実行されるため、ご利用のクラスターには少なくとも 1 つのノードが必要です。自動スケーリングによって追加されたノードについては課金されます。課金概要をご参照ください。

よくある質問

Auto scaling のよくある質問をご参照ください。

クリックして表示ノード自動スケーリングの FAQ インデックス

カテゴリ

サブカテゴリ

リンク

ノード自動スケーリングのスケーリング動作

既知の制限事項

スケールアウト動作

スケールイン動作

拡張機能サポート

cluster-autoscaler は CustomResourceDefinitions (CRDs) をサポートしていますか?

カスタムスケーリング動作

Pod を使用したスケーリング動作の制御

ノードを使用したスケーリング動作の制御

cluster-autoscaler コンポーネント

クリックして表示ノードインスタントスケーリングの FAQ インデックス

カテゴリ

サブカテゴリ

リンク

ノードインスタントスケーリングの動作

既知の制限事項

スケールアウト動作

スケールイン動作

カスタムスケーリング動作

Pod を使用したスケーリング制御

Pod を使用してノードのスケールインを制御するにはどうすればよいですか?

ノードを使用したスケーリング制御

ノードインスタントスケーリングアドオン

クリックして表示ワークロードスケーリング(HPA および CronHPA を含む)の FAQ インデックス

参照