Skip to content
EKS
Sub-page 6 of 10
Scaling & capacity limits

Defaulting to Karpenter for New Clusters, and Cutting Over Cleanly When Migrating an Existing One

Decision drivers
  • Whether the cluster is new (no legacy autoscaler commitment) vs. an existing Cluster Autoscaler deployment being migrated
  • Presence of a compliance framework requiring native ASG lifecycle hooks/dynamic scaling policies
  • Static/homogeneous vs. spiky/diverse compute shape
  • Whether Spot is in use, and whether the SQS interruption queue is actually wired up
  • Presence of long-running batch/stateful workloads sensitive to node churn, and whether Pod Disruption Budgets are configured for them

Cluster Autoscaler trades provisioning speed and Karpenter's flexibility for maturity, ASG-native compliance hooks, and predictable behavior on static, homogeneous fleets. Karpenter trades that ASG abstraction for direct EC2 Fleet API calls — bypassing Auto Scaling Groups entirely, which is both its main advantage (no 450-node-per-ASG ceiling, tighter bin-packing, per-workload instance-type selection) and its main compatibility constraint (no ASG lifecycle hooks, no ASG-native dynamic scaling policies).

Gated · a free account unlocks the full catalog
Sign in to keep reading

This page is part of the AWS track's gated content. Sign in — free — to keep reading. A free account unlocks the full catalog.

Sign in