Skip to content
Calcrivo

Control Plane Resource Calculator

Size control plane CPU and memory for the API server, scheduler and controller manager.

Inputs

nodes

Total worker nodes in the cluster.

pods

Total running pods across the cluster.

req/s

Expected API server queries per second.

objects

Total Kubernetes objects stored in etcd.

Total Control Plane CPU

7cores

Total Control Plane Memory

16GB

API Server CPU

2cores

etcd Memory

4GB

Step by step

  1. API server CPU

    max(2, ceil(500QPS / 250))

    = 2 cores

  2. API server memory

    max(4, ceil(2000 pods / 500) × 2)

    = 8GB

  3. etcd CPU

    max(2, ceil(500QPS / 500))

    = 2 cores

  4. etcd memory

    max(2, ceil(10000 objects / 5000) × 2)

    = 4GB

  5. Total control plane

    API + etcd + scheduler + controller

    = 7 CPU, 16GB RAM

How it works

Control plane sizing scales with cluster size (nodes, pods, objects) and API request rate. API server needs ~1 core per 250 QPS, etcd needs ~1 core per 500 QPS plus memory proportional to stored objects. These are heuristics based on Kubernetes community guidance for production clusters.

Formula

API Server CPU

apiCPU = max(2, ceil(QPS / 250))

QPS
API queries per second

Frequently Asked Questions

Should I run control plane on dedicated nodes?

Yes — for production clusters, dedicated control plane nodes prevent workload interference and ensure the API server, etcd, and scheduler have guaranteed resources.

How does etcd performance affect the cluster?

etcd is the bottleneck for all state changes — slow etcd (high latency, disk saturation) directly causes slow API responses, failed leader elections, and cluster instability.

You might also need