50 Kubernetes configuration checks, scored per cluster.
Security, reliability, scheduling and resource settings, ranked by severity, with the YAML to fix each one.
- Every permission listed
- Severity-ranked
- Copy-paste fixes
50
configuration checks
6
categories
3
findings on this example
What we check
50 checks in six categories.
Each finding names the resource, its severity, and the setting to change.
Security
11 checks
- SEC-001Running as root
- SEC-002Privileged container
- SEC-007Read-only root FS missing
Reliability
11 checks
- REL-001Single replica
- REL-005No liveness probe
- REL-006No readiness probe
Workload Config
9 checks
- WRK-002Missing PDB
- WRK-003No graceful shutdown
- WRK-004No revision history
Scheduling & Placement
6 checks
- SCH-001No anti-affinity
- SCH-002No topology spread
- SCH-003Missing tolerations
Namespace Org
5 checks
- NS-001Missing resource quota
- NS-002No limit range
- NS-003Missing labels
Resource Config
8 checks
- RES-001No CPU limits
- RES-002No memory limits
- RES-003No requests set
Checks informed by the Kubernetes Pod Security Standards and NSA/CISA hardening guidance
Finding → fix
From finding to copy-paste fix.
Each finding comes with the exact resource, why it matters, how to fix it, and the YAML.
payment-service
Why it matters
Container runs as UID 0. A pod escape grants root on the node.
How to fix
- 1
Add securityContext.runAsNonRoot: true
- 2
Set securityContext.runAsUser: 10001
- 3
Rebuild image with non-root USER directive
spec: template: spec:+ securityContext:+ runAsNonRoot: true+ runAsUser: 10001 containers: - name: api image: payment:1.4.2Exact resource
Cluster, namespace, kind and name.
Step-by-step
Each finding has numbered remediation steps.
Real YAML
Copy-paste YAML for the fix.
Score over time
Track the score as you fix findings.
Each cluster gets one score. It rises as findings are fixed.
Example · best-practices score · 8 weeks
prod-east cluster
Now
92
from 38
Install in 5 minutes
Stop paying for unused capacity.
Free up to 100 vCPU. After that, $1.99 per vCPU per month, dropping to $0.60 at volume.