CostMonStart free

Cloud cost

Allocatable capacity

What is left for pods to request on a Kubernetes node after the kubelet, container runtime, OS, and DaemonSets reserve their share.

Cloud cost

Last updated

Definition

A node's advertised capacity, its full vCPU and memory, is never what you can schedule. The kube-reserved and system-reserved settings, the eviction threshold, and any DaemonSets that run on every node each take a slice first. Allocatable is capacity minus that reservation. It is noticeably smaller than the number on the instance spec sheet.

You pay for full node capacity every hour. It does not matter how much of the allocatable slice is requested or used. So model a cluster's cost with four numbers, not one: capacity, allocatable, requested, and used.

Where it shows up

Allocatable capacity appears on the node object. Run kubectl describe node. It lists a Capacity section with the full advertised vCPU and memory. Below it, an Allocatable section is already reduced by kube-reserved, system-reserved, and the eviction threshold. This happens before any application pod is scheduled onto the node.

What makes it expensive

Teams size a cluster from a node's advertised capacity, not its allocatable slice. Then they wonder why fewer pods fit than expected. Both numbers sit on the same node record, a few lines apart. The reservation between them is often larger than anyone budgeted. Size against the lower number.

The meter you don't watch still grows.

Waste rarely hides in the service you check every week. CostMon watches every meter on your stack, including the ones you forgot were running.

Esc