Autopilot
Deployment ごとに自身の性能モデルでスケーリングし、HPA が約 30 秒かかる判断を約 10 秒で行います。
トラフィックが急増しても、HPA が最初の Pod を追加するのは約 30 秒後です
kubernetes.io, Horizontal Pod Autoscaling、kubernetes-sigs/metrics-server、Cast AI, 2026 State of Kubernetes Optimization Report
デフォルトでは metrics-server が 15 秒ごとにメトリクスを収集し、HPA が 15 秒ごとに確認します。急増したトラフィックは、HPA が最初の Pod を追加するまで最大 30 秒待つことがあります。
その後も HPA が追加できるのは、15 秒ごとに最大 4 個または現在の Pod の 100% までです。Pod を 10 個から 80 個にするには 3 回の増加が必要で、最後の増加は最初の 30 秒後です。
この待ち時間を避けるため、チームは余分なレプリカを常に動かしています。Cast AI が測定したクラスタの平均 CPU 使用率は、2025 年に 8% でした。
HPA 約 30 秒: metrics-server の収集 最大 15 秒と HPA の同期間隔 最大 15 秒の合計 (kubernetes.io、kubernetes-sigs/metrics-server)。HPA のスケールアップのデフォルト (15 秒ごとに 100% または Pod 4 個): kubernetes.io。Autopilot 約 10 秒: Autopilot ドキュメント。負荷、Pod 数、Autopilot のその後の段階は例示です。
Wave の仕組み
- kubelet の cAdvisorPod の CPU とメモリを読む
- 15 秒ごとmetrics-serverPod ごとの最新値を保持
- 15 秒ごとHPA コントローラーレプリカ = ceil(現在 × メトリクス ÷ 目標)
- スケールDeployment新しい Pod を起動
- Wave AgentcAdvisor と共に全ノードで動作
- gRPCWave Coreメトリクス履歴を保持し、ルールとクールダウンを適用
- 履歴Wave Intelligence14 日分の動きから学習した、このワークロードのモデル
- レプリカ数Kubernetes APIWave Core がレプリカを設定
ワークロードのメトリクスを収集
すべてのノードの Wave Agent が Pod のメトリクスを Wave Core に送るため、Autopilot は現在の数値で判断します。
ワークロードごとにモデルを学習
Autopilot はデフォルトで 14 日分のワークロードの動きから ML モデルを学習し、ある負荷に何個の Pod が必要かを把握します (Autopilot ドキュメント)。
約 10 秒で判断
Autopilot はモデルとルール、クールダウンを組み合わせ、約 10 秒でレプリカ数を決めます。モデルがまだない場合は HPA と同じ方法でスケーリングします。
結果
負荷の変化からスケーリングの判断まで。HPA の約 2 倍の速さ
Autopilot ドキュメント、HPA: kubernetes.io のデフォルト値
インタラクティブ速度比較
ボタンを押してトラフィック急増をシミュレーションし、各システムがいつスケーリングを判断するかを確認します。時間は例示です。
Kubernetes HPA
HPA: 監視中
Wave Autopilot
Autopilot: 準備完了
約 20 秒早い: Autopilot は 10 秒以内、HPA は約 30 秒で判断するため、急増中に Pod が不足する時間が短くなります。