Uma das funcionalidades fundamentais do Kubernetes é o autoscaling horizontal: a capacidade que permite provisionar novos pods quando demanda por capacidade aumenta e removê-los quando a carga diminui. No entanto, isso só funciona se os nós necessários para hospedar os pods já existirem. O Cluster Autoscaler pode realizar uma expansão básica do cluster acionada por falhas de pods, mas possui flexibilidade limitada. O Karpenter, por outro lado, é um autoescalador de nós, mais inteligente, de código aberto Kubernetes Operator. Ele analisa os workloads atuais e restrições de agendamento de pods, seleciona um tipo de instância apropriada e então a inicia ou interrompe conforme a necessidade. O Karpenter é um operador no mesmo espírito de ferramentas como o Crossplane que podem provisionar recursos de cloud fora do cluster. Embora o Karpenter tenha sido originalmente desenvolvido pela AWS para o EKS, ele está se tornando a escolha padrão para provisionadores automáticos de nós entre os provedores de serviços Kubernetes em nuvem. O Azure recentemente iniciou o suporte ao Karpenter com o AKS Karpenter Provider.
Um dos recursos fundamentais do Kubernetes é a habilidade de iniciar automaticamente novos pods quando se faz necessária uma capacidade adicional, e desligá-los quando as cargas diminuem. Esse escalonamento automático horizontal é um recurso útil, mas só pode funcionar se os nós necessários para hospedar os pods já existirem. Embora o Cluster Autoscaler possa fazer alguma expansão de cluster rudimentar desencadeada por falhas de pod, sua flexibilidade é limitada. Karpenter, no entanto, é um escalonador automático Operador Kubernetes de código aberto com mais inteligência integrada: analisa as cargas de trabalho atuais e as restrições de agendamento de pod para selecionar automaticamente um tipo de instância apropriado e, em seguida, iniciá-lo ou interrompê-lo conforme necessário. Karpenter é um operador com o mesmo espírito de ferramentas como Crossplane, que pode provisionar recursos de nuvem fora do cluster. Karpenter é um companheiro atraente para os serviços de auto escalonamento oferecidos nativamente por provedores de nuvem com seus clusters Kubernetes gerenciados. Por exemplo, a AWS agora oferece suporte ao Karpenter como uma alternativa de primeira classe em seu serviço EKS Cluster Autoscaler.