Kubernetes in simple terms
Kubernetes continuously compares desired state with actual state and tries to close the gap. You declare what should exist; controllers reconcile it.
The small vocabulary
| Object | Plain meaning |
|---|---|
| Pod | Smallest scheduled unit; one or more tightly coupled containers |
| Deployment | Keeps stateless Pods running and rolls out versions |
| StatefulSet | Stable identity and ordered behavior for stateful Pods |
| DaemonSet | Runs a Pod on selected nodes |
| Job / CronJob | Finite or scheduled work |
| Service | Stable network identity for a changing set of Pods |
| Gateway / Ingress | Routes external or internal application traffic |
| ConfigMap | Non-secret configuration |
| Secret | Kubernetes secret object; use careful encryption and access controls |
| Namespace | Logical scope for names, policy, quota, and team boundaries |
Labels identify objects. Selectors find groups of objects. Controllers use selectors, so a wrong label can send traffic to the wrong Pods or prevent a Deployment from managing them.
Requests and limits
A CPU or memory request tells the scheduler what a Pod needs and influences capacity and cost. A limit is an upper bound. Missing or unrealistic values cause poor scheduling, evictions, throttling, or wasted nodes.
Health
- Startup probes protect slow-starting applications.
- Readiness probes decide whether a Pod receives traffic.
- Liveness probes decide whether a stuck container should restart.
A liveness probe must detect a condition a restart can fix. A readiness failure should remove traffic without creating a restart storm.
The declarative habit
Store reviewed manifests or templates in version control. Avoid making important production changes only with imperative commands. Git history should explain what changed, while audit logs explain who applied it.