Skip to content

Vertical Scalers

Kedify provides two complementary approaches for in-place vertical scaling:

Use Pod Resource Profile (PRP) when you want declarative, event-driven transitions of CPU and memory.

Typical fit:

  • Increase resources during startup, then shrink once warm
  • React to lifecycle events such as containerReady
  • React to ScaledObject activated / deactivated state changes
  • Apply explicit resource profiles at defined points in workload lifecycle

Use Pod Resource Autoscaler (PRA) when you want instant, utilization-based in-place right-sizing.

Typical fit:

  • Continuously adjust resources from observed CPU and/or memory utilization
  • Keep a target utilization band with scaling thresholds and cooldowns
  • Adapt quickly to changing workload pressure without restarts

You can use both capabilities together. This is supported, but requires careful timing so both controllers do not keep overriding each other.

Recommended setup:

  • Stagger action timing with PRA .spec.policy.after and .spec.policy.delay
  • Stagger PRP transitions with .spec.trigger.after and .spec.trigger.delay
  • Keep clear intent for each capability (for example PRP for lifecycle/profile transitions, PRA for continuous utilization-based right-sizing)