Karpenter Architecture

Karpenter Architecture An architecture diagram generated by Archify. Unschedulable Pods · pending scheduling · Kubernetes Cluster Unschedulable Pods pending scheduling CRD CEL Validation · rules built into the CRDs · Kubernetes Cluster CRD CEL Validation rules built into the CRDs Karpenter Controller · manages node provisioning · Kubernetes Cluster Karpenter Controller manages node provisioning NodePool CRD · node provisioning policy · Kubernetes Cluster NodePool CRD node provisioning policy EC2NodeClass CRD · node configuration · Kubernetes Cluster EC2NodeClass CRD node configuration Kubernetes API · kube-apiserver · Kubernetes Cluster Kubernetes API kube-apiserver Instance API · cloud provider API · Cloud Provider Instance API cloud provider API Compute Instances · provisioned nodes · Cloud Provider Compute Instances provisioned nodes watches uses uses calls calls provisions creates validates validates Kubernetes Cluster Cloud Provider Legend Frontend Backend Database Cloud Security

How it works

  • • The controller detects unschedulable pods and analyzes their resource, node selector, and toleration requirements
  • • Determines the appropriate node type from the NodePool and EC2NodeClass configuration
  • • Calls the cloud provider API to provision nodes; pods are scheduled once the nodes join the cluster