Karpenter Integration Overview
Karpenter integration is available for Amazon EKS clusters with Karpenter installed. Requires Wave 3.1.0+.
Wave extends Karpenter with real-time monitoring, proactive node warming, and intelligent spot/on-demand placement — capabilities that Karpenter alone does not provide.
What is Karpenter Integration?
Karpenter is AWS's open-source node provisioner for Kubernetes that automatically provisions right-sized compute resources. Wave builds on top of Karpenter to add three capabilities that eliminate manual node management overhead:
1. Karpenter Dashboard
Real-time visibility into your Karpenter-provisioned nodes across all NodePools. Monitor node count, cost per hour, spot ratio, disruptions, and lifecycle events in a unified interface. Automatically detects thrashing patterns (nodes being repeatedly created and destroyed) and provides per-NodePool cost breakdowns.
Learn more in the Dashboard guide.
2. Node Warmup
Proactive node pre-provisioning with parallel image pre-caching. When no existing node can fit the largest pod in a NodePool, Wave triggers a warmup pod to create a new node and pre-pulls container images in parallel. This reduces first pod startup time from 31 seconds to 3 seconds (10x faster). Warmed nodes are protected with do-not-disrupt annotations to prevent premature consolidation.
Learn more in the Node Warmup guide.
3. Spot Workload Placement
Automatic spot/on-demand splitting via MutatingWebhookConfiguration. Set a per-deployment Pod Spot Threshold — pods below the threshold go to on-demand nodes, pods above go to spot nodes. No YAML changes required. Supports Prefer (fallback to on-demand) and Require (strict spot) strategies. Spot instances cost 60-90% less than on-demand pricing.
Learn more in the Spot Workload Placement guide.
Prerequisites
- Amazon EKS cluster (Karpenter is EKS-only)
- Karpenter installed and configured with at least one NodePool
- Wave 3.1.0 or later
- cert-manager installed (required for Spot Workload Placement webhook TLS)
Architecture
Wave integrates with Karpenter through three pathways:
- Metrics Collection: The WA Metrics Agent collects Karpenter node, NodePool, and NodeClaim data via gRPC and sends it to WA Core for processing.
- Node Management: WA Core monitors NodePool capacity and triggers warmup pods when proactive provisioning is needed.
- Webhook Injection: A MutatingWebhookConfiguration intercepts pod creation events and injects
nodeAffinityrules for spot/on-demand placement based on configured thresholds.
Getting Started
See the Getting Started guide for step-by-step installation and configuration.