Checklist · Cloud and DevOps
Kubernetes Production Checklist
Opens with creditsA pre-launch verification list for a workload going to production on Kubernetes, and for the cluster it lands on. Each check has a severity and a command or test that proves it, covering cluster version and access, resources, probes, availability, Pod security, RBAC and network policy, secrets and images, autoscaling, and backups of cluster state.
What you will learn
9 chapters · about 24 min
1Cluster version, upgrades and control plane accessWhether the cluster itself is on a supported release, can be upgraded safely, and keeps its control plane out of reach.8 checks · 4 min
- 1The cluster runs a Kubernetes minor release that still gets patches
- 2Node and client versions are within the supported skew
- 3There is an upgrade runbook, and it has been rehearsed on a non-production cluster
- 4Manifests and charts use no deprecated or removed API versions
- 5The API server, kubelet API and etcd are not exposed to the internet
- 6Nobody uses system:masters for day-to-day access
- 7Cluster access is reviewed and certificates have a known expiry
- 8API audit logs are enabled, retained and protected from general access
8 in this chapterOpen this chapter2Requests, limits and capacityWhether every container tells the scheduler what it needs, cannot take a node down with it, and has room to grow.5 checks · 3 min
- 1Every container sets CPU and memory requests
- 2Every container has a memory limit equal to its request
- 3CPU limits are a deliberate choice, not a copied default
- 4The namespace has a ResourceQuota and a LimitRange
- 5The cluster has room for the workload at peak, plus a node failure
5 in this chapterOpen this chapter- Health probes and graceful shutdownWhether traffic only reaches Pods that can serve it, stuck Pods get restarted without cascading restarts, and shutdowns drop no requests.4 checks · 2 minOpens with credits
- Replicas, spread and disruptionsWhether the workload survives the loss of a Pod, a node or a zone, and routine maintenance such as node drains and upgrades.5 checks · 2 minOpens with credits
- Pod securityWhether a compromised container is boxed in: enforced Pod Security Standards, non-root, minimal privileges and no unneeded credentials.5 checks · 3 minOpens with credits
- RBAC and network policyWhether people and workloads hold only the permissions they need, and Pods can only talk to what they are meant to.4 checks · 2 minOpens with credits
- Secrets and container imagesWhether credentials are stored and delivered safely, and the images that run are known, scanned and pinned.6 checks · 3 minOpens with credits
- Autoscaling and day-two operationsWhether the workload scales with demand without fighting your deploys, and the team will see Kubernetes-level failures.4 checks · 2 minOpens with credits
- Backups of cluster state and dataWhether you could rebuild the workload, and the cluster under it, after losing the control plane, a namespace or a volume.5 checks · 3 minOpens with credits
About this checklist
Kubernetes will happily run a workload that is not ready for production. A Deployment with one replica, no requests, no readiness probe and a container running as root applies cleanly and serves traffic, right up to the first node drain, the first memory spike or the first leaked token. Nothing in the API stops you; the gaps only show up under load, during an upgrade or in an incident. This checklist is the last pass before go-live, written as checks you can run against the real cluster instead of principles to agree with.
It is built from the Kubernetes project's own documentation: the security checklist, the Pod Security Standards, the disruptions and PodDisruptionBudget guide, the version skew policy, the release support schedule and the etcd operations guide. Everything was checked against Kubernetes 1.37, the newest minor release as of October 2026, and holds for 1.35 and 1.36 as well. Where a managed service (EKS, GKE, AKS and others) handles part of the control plane for you, the check says what to confirm with your provider instead.
This is not a tutorial on how to write manifests. If you want the reasoning behind requests, probes and network policies, read a Kubernetes best practices guide first. Here each item states one thing that should be true, why it matters in production, and how to verify it: a kubectl command, a setting to inspect or a drill to run. A box ticked without that evidence does not count.
Each check carries a severity. A must is something that turns a routine event (a node drain, a traffic spike, a compromised Pod) into an outage or a breach if it is missing. A should closes a gap that usually bites within the first months. A nice adds depth for workloads that matter more or clusters that are shared. Run it with the team that will be on call for the workload, and turn every gap into a ticket with an owner before the launch date.
Common questions
What should I check before running a workload on Kubernetes in production?
At minimum: CPU and memory requests and a memory limit on every container, readiness probes, at least two replicas with a PodDisruptionBudget, an enforced Pod Security Standard, least-privilege RBAC, default-deny network policies, encrypted Secrets, scanned images, and tested backups of both manifests and data. Then drain a node under load and confirm users notice nothing.
How is this different from a Kubernetes best practices guide?
A best practices guide explains how to design manifests and why. This checklist assumes the design is done and asks you to prove each property on the real cluster before launch, with a command, a setting to inspect or a drill. Use the guide while building and this list as the gate before go-live.
How long is a Kubernetes version supported?
The Kubernetes project maintains the three most recent minor releases, and since 1.19 each minor release gets roughly one year of patch support. Managed providers publish their own calendars, which can differ, so check both and plan upgrades before your version reaches end of life.
Does a PodDisruptionBudget protect against node failures?
No. A PDB only limits voluntary disruptions that go through the Eviction API, such as kubectl drain during maintenance or upgrades. Hardware failures, kernel panics and out-of-resource evictions still happen, though they count against the budget. Protection from those comes from multiple replicas spread across nodes and zones.
Do I need etcd backups on a managed Kubernetes service?
On services such as EKS, GKE and AKS the provider runs etcd and you usually cannot snapshot or restore it yourself. Read what the provider backs up, and make sure you can rebuild your workloads from Git and restore persistent data on your own, since that is what you control.
Sources (8)
Checked against these, last on 13 October 2026.
- Security Checklist, Kubernetes docskubernetes.io/docs/concepts/security/security-checklist/
- Pod Security Standards, Kubernetes docskubernetes.io/docs/concepts/security/pod-security-standards/
- Disruptions, Kubernetes docskubernetes.io/docs/concepts/workloads/pods/disruptions/
- Liveness, Readiness, and Startup Probes, Kubernetes docskubernetes.io/docs/concepts/configuration/liveness-readiness-startup-probes/
- Version Skew Policy, Kuberneteskubernetes.io/releases/version-skew-policy/
- Releases, Kuberneteskubernetes.io/releases/
- Operating etcd clusters for Kubernetes, Kubernetes docskubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/
- Considerations for large clusters, Kubernetes docskubernetes.io/docs/setup/best-practices/cluster-large/
Related on Sefism
Picked from the other libraries by shared topics.
Roadmaps
See allCheat sheets
See allBest practices
See all- Kubernetes Best PracticesRun workloads on Kubernetes that schedule well, survive restarts and node drains, and stay locked down: resources, probes, PDBs, Pod Security and RBAC.
- Terraform Best PracticesWrite Terraform that teams can review and change safely: file layout, version pinning, remote state with locking, secrets, modules, refactoring and tests.
- Secrets Management Best PracticesKeep API keys, passwords and tokens out of git, logs and browser bundles: secret managers, scanning, rotation, OIDC in CI and leak response.
Checklists
See all- Incident Response ChecklistPrepare for and handle production incidents: on-call, severity levels, declaring, roles, mitigation, security containment, status updates and blameless postmortems.
- Disaster Recovery ChecklistBackups and DR you can prove: RPO and RTO per system, backup coverage, off-site and immutable copies, restore tests, zone and region choices, runbooks, drills, dependencies and communication.
- Production Readiness ChecklistCheck a service before it takes real traffic: ownership, SLOs, capacity, timeouts and retries, alerts, rollout and rollback, backups, security and on-call.
Project structures
See all- Terraform project structureAn infrastructure repository for a small app on AWS: reusable modules, one folder per environment with its own remote state, pinned providers, tests and security scans, with plan on every pull request and apply from CI. For students who have finished the Terraform tutorials and want to know how a real team lays out the files. The same layout works unchanged with OpenTofu.
- Kubernetes with Helm project structureA Helm chart repository for one app: the chart that
helm creategives you, grown into a tested, versioned package with per-environment values, unit tests, install tests in a kind cluster and releases to an OCI registry. For students who can write a Deployment by hand and want to know how a team organises charts. It is about the repo layout and what each file does, not about cluster design. - Spring Boot project structureA REST API in Java with Spring Boot 4, PostgreSQL, Flyway and Testcontainers, organised by feature the way the Spring docs suggest. It grows from the Initializr scaffold to a service with JWT security, problem-detail errors, MapStruct DTOs, slice and integration tests, CI, containers and observability, and finally Modulith boundaries, contract and load tests. For students who know some Java and want to see how a real service is organised.
Career questions
See all- Do I need Docker and Kubernetes as a junior developer?Docker, yes: learn the basics, because nearly every team uses containers and you will be expected to run the project locally and read a Dockerfile. Kubernetes, mostly no: understand what it does and a few core terms, but deep Kubernetes can wait until your job or a DevOps direction needs it.
- What is platform engineering, and how is it different from DevOps?DevOps is a culture and set of practices: developers and operations sharing responsibility for shipping and running software. Platform engineering is one way to put that into practice at scale: a team builds an internal platform, a paved road of tools and templates, so product teams can ship without becoming infrastructure experts.
- Can I become an SRE or platform engineer straight after graduating?Sometimes, but it is rare, because these roles expect you to have run production systems. The more reliable path is a first job in backend, DevOps or cloud support, where you learn production, then a move into SRE or platform work within a couple of years.
Stuck on something specific?
Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.
- 1:1 Mentorship
- Fresh Graduate Mentorship
- Career Guidance
Brand deals, promos and partnerships: tauseeffayyaz@gmail.com