Intelligent Cluster Autoscaling with Karpenter¶
Congratulations to the maintainers of the Karpenter project!
The Karpenter project graduated to beta on 1st Nov, 2023. This is a major milestone for the Karpenter project.
We were very early adopters of Karpenter and have collaborated extensively with our customers and AWS to ensure that Karpenter works seamlessly for their EKS clusters when used with the Rafay Kubernetes Management platform. In this blog, we will describe the benefits of Karpenter and how our customers use Karpenter with Rafay.
Many of our enterprise customers use the cluster as service design pattern where they provide a dedicated EKS cluster for each application team for their development needs.
Since many of these EKS clusters are primarily used for pre-production purposes, it is critical that they optimize the costs associated with the EKS cluster. For example, it makes sense to do the following at minimum:
- Standardize on Spot instances and save 70-80% in infrastructure costs over On-Demand instances.
- Ensure the cluster is right sized to eliminate wastage
However, since pre-production environments are extremely dynamic, it can be impractical for the platform/Ops team to constantly invest time and effort in right sizing the clusters. This is exactly where the Karpenter project can come in extremely handy.
Why not Cluster Autoscaler?¶
Users that are new to Karpenter almost always ask us
How is Karpenter different from Cluster Autoscaler?
In a manner similar to the cluster auto scaler, when Karpenter is installed in your cluster, Karpenter observes the aggregate resource requests of unscheduled pods and makes decisions to launch new nodes and terminate them to reduce scheduling latencies and infrastructure costs. This is where the similarities end.
- Karpenter is significantly faster at provisioning instances and scheduling pods than Cluster Autoscaler.
- Karpenter will automatically select the best suited instance type for the required workloads. - With Karpenter, there is no need to configure and manage node groups for each instance type.
- Karpenter will continuously adjust the cluster with the most optimal instance types.
In summary, with Karpenter, it is possible to drive down the administrative burden associated with the above tasks to zero for the platform and Ops teams.
Karpenter with Rafay¶
Since early 2022, we have invested significant time and effort in collaboration with the AWS team to develop and validate a reference design for the use of Karpenter and Spot with Rafay.
This well tested design pattern has allowed users of the Rafay platform to right size their EKS clusters and save significant costs by eliminating wastage.
Sincere thanks to readers of our blog who spend time reading our product blogs. Please Contact the Rafay Product Team if you would like us to write about other topics.