# Karpenter

> Karpenter is an open-source Kubernetes node autoscaler that automatically provisions just-in-time compute resources to handle cluster workloads efficiently and cost-effectively.

Karpenter is an open-source Kubernetes node autoscaler built at AWS and licensed under the Apache License 2.0. It automatically launches and terminates compute nodes in response to unschedulable pods, minimizing both scheduling latency and infrastructure cost. The project lives under the `kubernetes-sigs` GitHub organization and is designed to work with any Kubernetes cluster across all major cloud providers and on-premises environments.

## What It Is

Karpenter is a Kubernetes-native node provisioning controller that watches for pods the Kubernetes scheduler has marked as unschedulable, evaluates their resource and scheduling constraints, and provisions exactly the right nodes to satisfy those requirements. Unlike traditional cluster autoscalers that work with pre-defined node groups, Karpenter takes a groupless approach — it selects instance types dynamically based on workload needs, enabling tighter cost optimization and faster scale-out.

## How It Works

Karpenter operates by observing the aggregate resource requests of pending pods and making real-time decisions to launch or terminate nodes:

- **Watches** for pods marked unschedulable by the Kubernetes scheduler
- **Evaluates** scheduling constraints including resource requests, node selectors, affinities, tolerations, and topology spread constraints
- **Provisions** nodes that meet pod requirements, selecting from available compute capacity
- **Removes** nodes when they are no longer needed, consolidating workloads onto more efficient resources

Configuration is handled through a single declarative `NodePool` resource with opinionated defaults, requiring no additional configuration out of the box.

## Multi-Cloud Provider Support

Karpenter is architected as a multi-cloud project with a core library and separate provider implementations. The GitHub README lists active provider implementations for:

- **AWS** (the original and reference implementation)
- **Azure**, **GCP**, **IBM Cloud**, **Oracle Cloud Infrastructure (OCI)**, **AlibabaCloud**, **Huawei Cloud**, **Akamai/Linode** (Alpha), **Exoscale**, **Proxmox**, **Bizfly Cloud**, and **Cluster API**

This provider model means teams running Kubernetes on different clouds can use the same Karpenter concepts and `NodePool` API while the cloud-specific provisioning logic is handled by the relevant provider.

## Update: v1.12.0

The latest release is **v1.12.0**, published on April 24, 2026, according to the GitHub repository metadata. The project is actively maintained under `kubernetes-sigs/karpenter` with regular working group meetings (bi-weekly) and issue triage meetings (weekly). The repository shows ongoing development with the last push recorded in May 2026. The project has been presented at multiple KubeCon and Container Day events, including a 2025 KubeCon talk on automating Kubernetes cluster updates with zero downtime.

## Community and Governance

Karpenter is governed under the Kubernetes community code of conduct and participates in the broader Kubernetes SIG ecosystem. Community support channels include the `#karpenter` and `#karpenter-dev` channels in the Kubernetes Slack workspace. The project welcomes contributions via GitHub issues and pull requests, with labeled "Good first issue" and "Help wanted" tags to guide new contributors. Working group meetings are open and publicly calendared.

## Features
- Just-in-time node provisioning for Kubernetes clusters
- Automatic scale-out in response to unschedulable pods
- Node consolidation and removal of under-utilized nodes
- Groupless autoscaling without pre-defined node groups
- Declarative NodePool resource with opinionated defaults
- Support for resource requests, node selectors, affinities, tolerations, and topology spread constraints
- Multi-cloud provider architecture
- Cost optimization through workload consolidation and cheaper node selection
- Fast compute provisioning to minimize scheduling latency
- Apache License 2.0 open-source

## Integrations
Kubernetes, AWS, Azure, Google Cloud Platform (GCP), IBM Cloud, Oracle Cloud Infrastructure (OCI), AlibabaCloud, Huawei Cloud, Akamai/Linode, Exoscale, Proxmox, Bizfly Cloud, Cluster API

## Platforms
CLI, API

## Pricing
Open Source

## Version
v1.12.0

## Links
- Website: https://karpenter.sh
- Documentation: https://karpenter.sh/docs
- Repository: https://github.com/kubernetes-sigs/karpenter
- EveryDev.ai: https://www.everydev.ai/tools/karpenter
