We are excited to announce early access to OCI Kubernetes Engine (OKE) Managed Karpenter. This feature automatically deploys, configures, upgrades, monitors, and operates the Karpenter Provider for OCI (KPO) on behalf of customers.

Earlier this year, Oracle announced the general availability of the Karpenter Provider for OCI. That release brought Karpenter’s flexible, workload-aware node provisioning model to OKE. Administrators could specify multiple allowed shapes and capacity types, and Karpenter could watch for unscheduled Pods and provision nodes directly through OCI Compute to meet dynamic workload demands. By bypassing managed node pools, Karpenter addressed capacity-related limitations of Cluster Autoscaler and improves node scaling time.

Use Karpenter to automatically select the right Compute shape for your workloads

Why Karpenter? 

Karpenter provides a flexible, workload-aware approach to node auto-provisioning in Kubernetes clusters. Traditional Kubernetes node autoscaling is built around the combination of the Kubernetes Cluster Autoscaler and managed node pools with a strict configuration that includes a specific shape, architecture, availability domain, and capacity type. If a preferred shape runs out of capacity in a given availability domain or fault domain, nodes cannot be added and Pods can remain pending even when an acceptable alternative shape is available. The usual workaround is to add more pools for every shape, which creates node pool sprawl, extra planning, and additional operational overhead.

Karpenter uses a similar approach to Cluster Autoscaler when it comes to watching for unschedulable Pods and their Kubernetes resource requests, selectors, affinities, topology needs, and other scheduling constraints. It differs in the flexible policies users define using Karpenter’s Kubernetes-native NodePools and OCINodeClasses, and in the actions it takes based on those policies. Based on the policies the administrator writes, Karpenter provisions the right node directly from OCI Compute, rather than scaling only a static node pool defined in advance. This gives teams the flexibility to use OCI capacity options without forcing them to predict every fallback path.

What is OKE Managed Karpenter? 

Comparing Cluster Autoscaler, self-managed Karpenter, and OKE-managed Karpenter

Managed Karpenter makes the Karpenter Provider for OCI controller an OKE-managed capability. Once enabled, OKE deploys Karpenter CRDs, and customers configure its behavior through NodePool, OCINodeClass, and other Karpenter resources. The controller runs on OKE-managed infrastructure rather than customer worker nodes. OKE manages deployment, placement, credentials, custom resource definitions, version selection, monitoring, upgrades, rollback, and support readiness. Kubernetes events, resource status, and OCI work requests help explain why a node was selected, why a Pod is still pending, or why a provisioning request failed. Customers keep ownership of their application requirements and node provisioning policy, while OKE owns the controller lifecycle.

Simply put: Customers keep ownership of their application requirements and node provisioning policy, while OKE owns the controller lifecycle behind the service.

How will customers use OKE Managed Karpenter?

Managed Karpenter exposes a cluster-level OKE capability that can be enabled during cluster creation or on an existing supported cluster.

After enabling Managed Karpenter, customers use the Kubernetes API, typically through kubectl, to define intent. An OCINodeClass holds OCI-specific configuration such as the node compartment, networking, security groups, image, tags, volumes, capacity reservations, and placement. One or more NodePools define the provisioning policy: allowed shapes and architectures, availability domains, on-demand or preemptible capacity, resource limits, labels, taints, weights, and disruption behavior. OKE will not create a default NodePool or OCINodeClass, and customers remain responsible for their workload manifests, provisioning policy, referenced OCI resources, and resulting infrastructure costs. Existing OKE Managed Node Pools can continue to support stable, simple, or not-yet-migrated workloads while teams move suitable workloads incrementally. You may also optionally configure supported feature gates and Node Repair policies.

After you deploy workloads, Managed Karpenter responds to unscheduled Pods within those declared boundaries. It creates NodeClaims for suitable OCI instances, and customers can observe provisioning through Kubernetes. This model is particularly useful for bursty services, capacity-constrained environments, and cost-sensitive workloads that can prefer preemptible capacity while retaining appropriate safeguards and fallback behavior.

How can I preview OKE Managed Karpenter? 

To join the preview for OKE Managed Karpenter, please reach out to your Oracle account team. 

Further reading