Skip to content
Calcrivo

OpenShift Cluster Health Calculator

Score OpenShift cluster health from node readiness, pod failures, etcd fsync latency, API latency and degraded operators.

Inputs

nodes
nodes
pods
pods
ms

Above 10 ms etcd starts losing leader elections.

ms

The SLO for read requests is under 1000 ms.

operators
%

Cluster Health Score

95/ 100

Health Grade

A — Excellent

Node Readiness

100.0%

Pod Health

99.1%

etcd Latency Reading

Acceptable but close to the 10 ms threshold

Largest Contributing Risk

etcd latency is the weakest signal at 80 out of 100

Step by step

  1. Values used

    Nodes in cluster = 12 nodes; Nodes not ready = 0 nodes; Pods scheduled = 640 pods; Pods not running or ready = 6 pods; etcd 99th percentile fsync = 8 ms; API server 99th percentile latency = 180 ms; Degraded cluster operators = 0 operators; PersistentVolumeClaims pending = 1 %

  2. OpenShift Cluster Health

    score = node readiness × 0.25 + pod health × 0.20 + etcd latency score × 0.25 + API latency score × 0.15 + operator score × 0.10 + storage score × 0.05.

  3. Cluster Health Score

    = 95 / 100

  4. Health Grade

    = A — Excellent

  5. Node Readiness

    = 100.0

  6. Pod Health

    = 99.1

  7. etcd Latency Reading

    = Acceptable but close to the 10 ms threshold

  8. Largest Contributing Risk

    = etcd latency is the weakest signal at 80 out of 100

How it works

The score is a weighted blend of the signals that actually predict an OpenShift outage. etcd fsync latency carries as much weight as node readiness because etcd is the single point of failure for the whole control plane — once fsync exceeds 10 ms the leader loses elections and every API call starts timing out, regardless of how healthy the workers look. Symptoms surface far from their cause in Kubernetes: slow etcd disks present as failing deployments, and a degraded operator presents as an upgrade that silently will not start. Scoring the signals together points at the layer that is actually broken.

Formula

OpenShift Cluster Health

score = node readiness × 0.25 + pod health × 0.20 + etcd latency score × 0.25 + API latency score × 0.15 + operator score × 0.10 + storage score × 0.05.

etcd latency score
Banded from 99th-percentile fsync: 100 under 5 ms, 80 under 10 ms
operator score
100 minus 25 per degraded cluster operator
node readiness
Ready nodes as a share of total nodes

Frequently Asked Questions

How is OpenShift Cluster Health calculated?

score = node readiness × 0.25 + pod health × 0.20 + etcd latency score × 0.25 + API latency score × 0.15 + operator score × 0.10 + storage score × 0.05. The score is a weighted blend of the signals that actually predict an OpenShift outage. etcd fsync latency carries as much weight as node readiness because etcd is the single point of failure for the whole control plane — once fsync exceeds 10 ms the leader loses elections and every API call starts timing out, regardless of how healthy the workers look.

Why does OpenShift Cluster Health matter?

Symptoms surface far from their cause in Kubernetes: slow etcd disks present as failing deployments, and a degraded operator presents as an upgrade that silently will not start. Scoring the signals together points at the layer that is actually broken.

What values do I need to enter?

This calculator takes 8 inputs: Nodes in cluster, Nodes not ready, Pods scheduled, Pods not running or ready, etcd 99th percentile fsync, API server 99th percentile latency, Degraded cluster operators, PersistentVolumeClaims pending. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

Why is etcd fsync weighted so heavily?

etcd must durably commit every write to its write-ahead log before acknowledging it, so fsync latency is the floor for every API write. Beyond 10 ms at the 99th percentile, heartbeats miss their deadlines and the cluster starts electing new leaders under normal load.

You might also need