Pods are the smallest deployable unit. Deployments manage pods declaratively.
Pod:
- One or more containers sharing network and storage
- Ephemeral. If a pod dies, it's gone
- Has a unique IP within the cluster
Deployment:
- Declares desired state (replicas, image version)
- Creates ReplicaSets to maintain pod count
- Handles rolling updates and rollbacks
apiVersion: apps/v1
kind: Deployment
spec:
replicas: 3
template:
spec:
containers:
- name: app
image: myapp:v1