Karpenter

Karpenter 是开源的k8s自动扩缩容项目,相比于原来的auto scaler, 它将资源扩容时间由分钟级降为秒级

EKS

Karpenter工作原理如下:

  • 监控由scheduler标记为unschedulable状态的pod。这种状态通常由CPU/内存资源不足、不能满足selector条件、不满足node的taint/toleration条件、hostport被占用等引起。
  • Karpenter分析这些限制,并提供node来满足这些条件

  • 将pod调度到新创建的node

  • 当不再需要这些node时,移除掉它们