The Open Source Way to Rightsize Kubernetes With One Click

Rightsizing resource requests is an increasing challenge for teams using Kubernetes—and especially critical as they scale their environments. Overprovisioning CPU and memory lead to costly overspending, but underprovisioning risks CPU throttling and out-of-memory errors if requested resources aren’t sufficient. Dev and engineering teams that don’t thoroughly understand the live performance profile of their containers will usually play it safe and request vastly more CPU and memory resources than required, often with significant budget waste.

The open source Kubecost tool (https://github.com/kubecost) has had a Request Sizing dashboard to help Kubernetes users bring more cost efficiency to their resource requests. One of the tool’s most popular optimization features, the dashboard identifies over-requested resources, offers recommendations for appropriate per-container resource requests, and estimates the cost-savings impact of implementing those recommendations. The dashboard utilizes actual usage data from live containers to provide accurate recommendations. However, leveraging the dashboard has included some hurdles, requiring users to manually update YAML requests to align resource requests with Kubecost recommendations or introduce integrations using a CD tool. 

Use Ketch to Deploy Apps on Kubernetes Without YAML

Ketch, a relatively new open source project from application-as-code platform Shipa, offers a simple command-line interface that developers can use to deploy and manage applications on any Kubernetes cluster without writing YAML configuration files.

Kubernetes is the ubiquitous standard for orchestrating containerized and microservices-based applications. However, operating Kubernetes requires developers to overcome a rather steep learning curve. Running Kubernetes successfully means gaining expertise in Kubernetes concepts, objects, and how to write and manage YAML files. Ketch eliminates much of that complexity by deploying applications directly to Kubernetes clusters, rendering YAML files unnecessary and easing entry for developers.

Use Open-Source Kubecost to Understand (and Control) Kubernetes Spending

Many organizations deploying and quickly scaling Kubernetes struggle to understand how their cloud spend is actually, well, being spent. Precise visibility into which teams, projects, or applications are spending what amount on which infrastructure services is difficult to achieve. This black box of understanding has bigger implications, of course, as Kubernetes environments grow. 

(For more data on this problem, check out the Cloud Native Computing Foundation’s recent – and first-ever – report into FinOps for Kubernetes.)