Kubernetes State

Config, volumes and stateful workloads — why a database is not a stateless API with a disk attached, and where the abstraction stops helping.

ConfigMaps and Secrets

Two objects that inject configuration into pods, one of which is named after a security property it does not, on its own, provide.

Q · How does configuration reach a container, and what does calling something a Secret actually buy you?
Volumes: Storage With a Lifecycle

A container filesystem dies with the container. A volume is a way of saying which data outlives what — the pod, the node, or the cluster — and each answer has different failure modes.

Q · What happens to data a container writes, and how do I choose how long it should survive?
Why Stateful Workloads Are Harder

A stateless replica is interchangeable and can be replaced at any moment. A database replica has an identity, a copy of the data, a position in a replication stream and an opinion about who is the leader.

Q · Why can I replace an API pod at will and not a database pod?
StatefulSets: Identity, Storage and Order

The workload controller that gives each replica a stable name, its own volume and a defined position in startup and rollout — which makes running stateful systems possible, not advisable by default.

Q · What does Kubernetes offer a workload that needs stable identity, and what does it still leave to you?
Kubernetes Anti-Patterns

The recurring mistakes that produce most cluster incidents — each one reasonable at the moment it is made, and each one with a specific failure it eventually causes.

Q · Which cluster practices reliably produce incidents, and what does each one actually break?