Smart Sizing
Pod CPU/メモリrequestsとlimitsを継続的に最適化し、過剰プロビジョニングと過小プロビジョニングを排除して30-40%のリソース無駄を除去します。
概要
Kubernetes Podのrequestsとlimitsはしばしば推測または保守的な過剰プロビジョニングに基づいています。これにより40-60%のリソース無駄(過剰プロビジョニング)またはパフォーマンスボトルネック(過小プロビジョニング)が発生します。標準VPAはデフォルト設定がありますがワークロード固有の動作を学習しません。
Smart Sizingは実際のリソース消費を継続的に分析し、各ワークロードに対する最適なCPUおよびメモリrequests/limitsを自動的に適用します。静的設定の推測を排除し変化するワークロード需要に適応して安定性とコスト効率の両方を保証します。
Smart Sizingが優れている理由
| 標準VPA | Wave Smart Sizing | |
|---|---|---|
| Adjustment Method | InPlaceOrRecreate (beta in K8s 1.33+) uses the in-place primitive but silently falls back to evict-and-restart when the node lacks capacity | Same in-place primitive, surfaced as an explicit user choice: In-Place stays in-place (skip on node-pressure, retry next cycle), Manifest Patch is rollout-managed — no silent restarts |
| Configuration Complexity | Manual VPA objects per deployment with complex update policies | One-click enablement for all workloads or per-deployment |
| Configuration Drift | VPA recommendations can drift from actual deployment manifests | Continuous synchronization with actual workload behavior |
ビジネス成果
過剰プロビジョニング排除によりクラスターリソース無駄を削減
Achieve optimal CPU and memory utilization
手動YAML編集または推測なしで継続的サイジング
動作原理
1. リソース消費追跡
Waveは時間経過とともに各ワークロードの実際のCPUおよびメモリ使用量をモニタリング。
2. 最適サイジング計算
MLモデルが消費パターンを分析し安定性とコスト効率をバランスよく調整したrequests/limitsを計算。
3. 自動的にサイジング適用
Smart Sizingが最適化されたリソース設定をデプロイメントに自動的に適用して手動変更不要。
4. 継続的調整
ワークロードが進化するにつれてSmart Sizingが継続的に推奨事項を再計算して適用。
ビジネス成果
Discover over-provisioned workloads wasting CPU and memory
過剰プロビジョニング排除によりクラスターコストを最適化
Eliminate manual resource request/limit tuning efforts
動作原理
1. リソース消費追跡
Waveは時間経過とともに各ワークロードの実際のCPUおよびメモリ使用量をモニタリングします。
2. ギャップ分析
MLモデルが要求されたリソースと実際の使用量を比較して過小/過剰プロビジョニングを識別。
3. 最適推奨事項生成
システムが安定性とコスト効率をバランスよく調整した正確なCPU/メモリrequestsとlimitsを提案。
4. 自動適用
Smart Sizingが有効化されると推奨事項がデプロイメントに自動的に適用されて継続的最適化を保証。
Realtime Resizing: 自動適用、in-place、再起動なし
Realtime Resizing がループを自動的に閉じます。各ワークロード (Deployment / StatefulSet / DaemonSet / Argo Rollout / OpenShift DeploymentConfig) は 3 つの Apply Mode から 1 つを選択し、自動適用はコンテナ単位の opt-in です — 明示的に有効化するまでクラスタには変更が加わりません。手動で管理したい場合は、Resize Now で任意の推奨値をいつでも適用できます。
Off
Wave は推奨を生成し続けますがワークロードには触れません。Smart Sizing を試したい場合に使用。
In-Place Pod Resize
実行中の pod に K8s 1.27+ の /resize サブリソースを呼び出します。pod 再起動も rollout もダウンタイムもありません。K8s 1.27–1.32 では InPlacePodVerticalScaling feature gate が必要で、1.33 からデフォルト有効、1.35 で GA になります。
Manifest Patch
ワークロード spec を patch。次回 rollout から新 pod が新リソースで起動します。in-place feature gate なしでも動作。
コンテナ単位の buffer / min / max コントロールは Container Settings で管理でき、安全マージンを維持できます。
Deployment / StatefulSet / DaemonSet / Argo Rollout / OpenShift DeploymentConfig に対応。
自動適用を有効にする前に
- • ノイズを抑える hysteresis: priority 比率 ≥ 10% OR CPU 変化量 ≥ 50 mCPU OR memory 変化量 ≥ 64 MiB のいずれかを満たす場合のみ適用 (VPA スタイル閾値、OR 結合)。
- • In-Place は pod ごとに 1 回だけ呼び出され、再試行しません。ノードのリソース不足で kubelet が拒否した場合、その pod はスキップされ次の 10 分サイクルで再試行されます。確実な再スケジュールが必要な場合は Manifest モードを使用してください。
- • Manifest モードは Argo CD auto-sync と競合します — Argo が patch を戻します。Wave がリソース値の source of truth であるべきワークロードでは、Autopilot と同様に auto-sync を OFF にしてください。
- • Deployment の Smart Sizing 自動適用は Autopilot に切り替わると自動的に解除されます — Autopilot が管理するワークロードのリソースは Autopilot が所有します。
Waveでリソース無駄を除去
コンテナ単位の buffer / min / max、広い hysteresis、Apply History パネルを備えた in-place ベースの継続的・非破壊的リソース最適化。
無料デモを予約