Achieving infrastructure efficiency and controlling compute costs is a continuous effort. While traditional machine pools are effective for steady workloads, scaling diverse applications often requires balancing cloud utilization with the effort spent manually right-sizing instances, all while providing continuous node availability when compute demands spike. To help achieve this balance, we are introducing the Red Hat build of Karpenter, based on the upstream Karpenter project. With the release of Red Hat OpenShift 4.22, Red Hat build of Karpenter can be enabled on Red Hat OpenShift Service on AWS with hosted control planes.
What is Karpenter?
Karpenter is a high-performance, Kubernetes-native node autoscaler. Instead of scaling fixed pools of identical machines, it looks at the collective resource requirements of your pending pods and provisions the right compute resources just-in-time, then continuously consolidates the cluster to reduce your infrastructure costs. The result is compute that is right-sized automatically, around the clock, with no manual intervention.
What is the Red Hat build of Karpenter?
Red Hat build of Karpenter brings workload-aware, just-in-time node provisioning to Red Hat OpenShift Service on AWS with hosted control planes. Instead of managing static machine pools with pre-defined instance types, Karpenter evaluates the exact CPU, memory, and scheduling constraints of pending pods and provisions the optimal EC2 instance automatically, and then consolidates underutilized nodes when they are no longer needed.
Controllers hosted in the control plane
The Karpenter controllers run as part of the hosted control plane, not on your worker nodes. There are no extra pods to manage, no added compute overhead, and no resource contention between Karpenter and your applications.
Enable on existing clusters
Karpenter can be turned on for existing clusters once they are upgraded to OpenShift 4.22. There is no need to recreate your cluster to adopt it.
Independent upgrades
The Red Hat build of Karpenter allows you to upgrade the worker nodes either along with or independently of the hosted control plane on the schedule that fits your requirements.
Coexistence with Cluster Autoscaler
Karpenter and the Cluster Autoscaler can all run in the same cluster. You can migrate gradually from self-managed to Karpenter-managed NodePools.
Capacity Reservations and Capacity Blocks for ML
Karpenter works with reserved capacity, including Amazon EC2 On-Demand Capacity Reservations (ODCRs) and Capacity Blocks for ML. This is critical for machine learning training and for workloads with regulatory requirements that demand reserved compute. Also, Karpenter can dynamically choose between on-demand and Capacity Reservation market types based on utilization of the reservation.
Kubelet configuration and node tuning
For advanced use cases, you can apply kubelet configurations and TuneD profiles to meet the needs of diverse workloads.
Security compliance
The Red Hat build of Karpenter is designed to slot into your existing security posture rather than work around it. Red Hat provides the compliance foundation, including FIPS, SOC 2, and FedRAMP, while Karpenter respects all Kubernetes scheduling constraints, taints, and tolerations.
Cost savings
This shift to intelligent node management helps your organization achieve cost savings in four key ways:
- Automatic right-sizing: Instead of using fixed groups of identical machines, Karpenter looks at exactly what your applications need right now and chooses the most cost-effective size to fit them. This means you stop paying for unused computing power.
- Just-in-time scaling: Nodes spin up instantly when your application traffic spikes to keep things running smoothly, and they disappear the moment demand drops so you aren't paying for idle servers.
- Utilizing Spot Instance: Karpenter dynamically compares prevailing market rates for various Spot instances with On-Demand pricing and selects the least expensive one(s) that still meets your workload requirements.
- Maximizing existing AWS commitments: Karpenter automatically prioritizes your pre-purchased AWS assets—such as On-Demand Capacity Reservations (ODCRs) and Capacity Blocks for ML. It utilizes your discounted capacity first before falling back to buying brand-new compute.
- Reducing operational overhead: By automating the sizing, monitoring, and day-to-day optimization of your cluster infrastructure, Karpenter eliminates manual node-pool management so platform teams can focus on higher-priority work.
Best Practices for smarter autoscaling
As you adopt Red Hat build of Karpenter on your ROSA clusters, keep these 5 recommendations in mind:
- Keep your Amazon EC2 instance requirements flexible: By allowing a diverse range of EC2 instance types and sizes, Karpenter can dynamically select the most cost-effective compute for your ROSA clusters. Review supported ROSA EC2 instance types and define your criteria as broadly as possible for maximum cost savings.
- Align cluster defaults with your operational needs: Karpenter-provisioned nodes are set to expire and initiate an automatic drain after 30 days, so you will want to ensure your applications are ready for this regular rotation. Additionally, if your workloads require highly stable environments that cannot tolerate the sudden interruptions of Spot instances, you should proactively update your NodePool configuration to restrict provisioning to On-Demand instances exclusively.
- Rate limiting disruptions: While Karpenter continuously strives to scale, consolidate, and provision nodes to save costs, you can still rate limit the disruptions according to your application and operational requirements. You can achieve this by setting node disruption budgets to protect critical workloads and prevent aggressive node replacement. Additionally, you can define a clear consolidation policy to inform Karpenter whether it should actively consolidate any underutilized nodes or restrict its actions strictly to nodes that are completely empty.
- Observe with in-cluster monitoring, logging, and alerting: ROSA exposes prometheus-format metrics in the in-cluster monitoring stack, allowing you to use the dashboards on the OpenShift console for tracking provisioning latency, node utilization and capacity trends. You should configure alerting rules and destinations as needed to get notified for important events. If needed, you can enable logging to receive Karpenter logs from the hosted control plane and route them to a destination of your choice, such as Amazon S3 or CloudWatch.
Conclusion
Red Hat build of Karpenter gives platform teams a powerful and trusted option for managing cluster capacity. To learn more:
- Visit the Red Hat OpenShift on AWS web page to see how the managed service fits your environment.
- Read the documentation to get started with the Red Hat build of Karpenter on your cluster.
- Read the Karpenter documentation for a deep dive into the upstream project.
- Explore the Karpenter interactive walkthrough
제품 체험판
Red Hat OpenShift Container Platform | 제품 체험판
저자 소개
Subin Modeel is a principal technical product manager at Red Hat.
Bala Chandrasekaran is a Product Manager in the Managed OpenShift Cloud Services. He has over 20 years of experience across cloud native technologies, infrastructure and data systems.
유사한 검색 결과
Red Hat Ansible 올스타: 네트워크 및 인프라 자동화의 미래를 주도합니다
Ansible Automation Platform을 위한 새로운 오토메이션 오케스트레이터로 IT 워크플로우를 규모에 맞게 통합
Random Acts Of Automation | Compiler
Scaling with Orchestrators | Compiler
채널별 검색
오토메이션
기술, 팀, 인프라를 위한 IT 자동화 최신 동향
인공지능
고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트
오픈 하이브리드 클라우드
하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요
보안
환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보
엣지 컴퓨팅
엣지에서의 운영을 단순화하는 플랫폼 업데이트
인프라
세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보
애플리케이션
복잡한 애플리케이션에 대한 솔루션 더 보기
가상화
온프레미스와 클라우드 환경에서 워크로드를 유연하게 운영하기 위한 엔터프라이즈 가상화의 미래