KO THE CLOUD TO ENTER OUR GIVEAWAY

WIN KEYBOARD!
Pod Rightsizing

Right-size every pod without fighting your pipeline

Most pod requests are set once, padded for safety, and never touched again. Sedai right-sizes CPU and memory continuously from live behavior and SLOs, in small verified steps, and applies changes as pods are created so CI/CD never reverts them.

Book a Demo
4.0vCPU requested

Animation: a workload’s CPU request sits flat at 4 vCPU while actual usage stays below 2, leaving most of the request idle. Sedai lowers the request in three small steps, to 3.2, 2.6, and then 2.2 vCPU, verifying latency against the SLO after each one. The request stays above peak usage throughout.

Background

Pod requests are guesses that never get revisited

Research attributes 29% of container spend to workload idle: CPU and memory that pods request but never use. It persists for three reasons.

Set once, at deploy time

Requests come from Helm defaults or a best guess when the service launched. Usage changes; the numbers don’t.

Padded out of fear

Nobody wants to cause an OOM kill or CPU throttling, so requests get padded, and cutting them by hand feels like a risk nobody owns.

Reverted as drift

Change a running workload by hand and your CI/CD pipeline flags it as drift and puts the old values right back.

Right-sized at creation, invisible to your pipeline

With Pod Interceptor, Sedai right-sizes each pod as it’s created instead of editing your deployment spec. Your IaC and spec still agree, so CI/CD sees no drift and nothing gets reverted. Guardrails as Code sets the limits on what Sedai can change.

Pod Interceptor

Sizing that understands the application

Recommendations are easy. Changes you can trust in production are the hard part.

Application-aware, not just resource-aware

Sizing decisions account for latency, error rates, and your SLOs, not CPU and memory alone.

Small, verified increments

Sedai adjusts requests and limits a step at a time, verifies each change against live behavior, and rolls back automatically if anything drifts.

Vertical and horizontal, together

Native VPA and HPA conflict on the same workload. Sedai’s vertical scaling runs alongside HPA and tunes its target, finding the most cost-effective balance of pod size and replica count.

Your level of autonomy

Start with recommendations in Datapilot, approve changes in Copilot, and move to Autopilot as confidence grows.

Rightsizing is where savings start, not where they land

Smaller requests free up capacity in small pieces across every node, but the bill drops only when nodes go away. In a modeled 40-node cluster, rightsizing alone cut node spend by 5%. Adding placement, consolidation, and scaling tuning cut it by 38%.

Bin packing & pod placement

Sedai Scheduler packs your right-sized pods densely onto fewer nodes

Node consolidation

Sedai Compactor clears stranded pods so your autoscaler can remove empty nodes

Karpenter optimization

Accurate requests mean Karpenter provisions fewer, smaller nodes

Native VPA vs. Sedai rightsizing

Same goal. Very different results in production.

Native VPA and manual tuningSedai
Can’t run alongside HPA on the same workload
Runs alongside HPA and tunes its target
Manual changes reverted by CI/CD as drift
Applied at pod creation, so nothing drifts
Sizes on CPU and memory alone
Accounts for latency, errors, and SLOs
One-time recommendations that go stale
Continuous, in small verified increments
Freed capacity stays on half-empty nodes
Paired with placement and consolidation

See how much your pods are really asking for

Compare used and requested capacity across your clusters with a Sedai engineer.

Frequently asked questions

Yes. Native VPA and HPA conflict on the same workload, so most teams turn VPA off in production. Sedai’s vertical scaling runs alongside HPA and also tunes the HPA target.

No. With Pod Interceptor, Sedai right-sizes the pod at creation rather than editing the deployment spec, so your IaC and spec stay in agreement and nothing is flagged as drift.

Use Sedai’s original execution model with IaC loopback, which writes changes back to your infrastructure code. Guardrails as Code limits what Sedai can change under either model.

From live workload behavior and your SLOs. Sizing accounts for latency and error rates as well as CPU and memory, and changes are made in small increments that are verified before Sedai goes further.

Yes. Guardrails as Code sets boundaries such as minimum and maximum values or excluded workloads, and Sedai stays within them.

Yes. Start in Datapilot for recommendations only, move to Copilot to approve each change, and switch to Autopilot when you’re ready.

Smaller requests free capacity on existing nodes, but the pods stay where they are, so no nodes are released. Placement and consolidation turn that freed capacity into nodes your autoscaler can remove.