Container Orchestration Language
5 exercises — master the vocabulary Kubernetes engineers use when discussing pod scheduling, workload controllers, service exposure, namespace boundaries, and resource management.
0 / 5 completed
Kubernetes vocabulary quick reference
- Pod — atomic scheduling unit; containers in the same pod share network namespace and can use localhost
- Deployment — manages stateless replicas; pods have random names, any PVC is shared
- StatefulSet — manages stateful replicas; pods get stable ordinal names and dedicated PVCs
- ClusterIP — stable virtual IP accessible only inside the cluster
- LoadBalancer — provisions a cloud load balancer with a public IP; builds on ClusterIP + NodePort
- Namespace — logical partition for RBAC and quotas — NOT a network boundary
- NetworkPolicy — CNI-enforced ingress/egress rules; required for real network isolation
- Request / Limit — request = scheduler input; limit = runtime cap enforced by kernel
1 / 5
A senior architect says: "The logging sidecar runs in the same pod as the application container."
What does co-location inside the same pod guarantee that running the two containers in separate pods would not provide?
A pod is a co-scheduling boundary with shared Linux namespaces — it is not just a logical grouping.
What containers in the same pod share:
What containers in the same pod do NOT automatically share:
• File system — each container has its own root FS from its image. Shared data requires explicit
• Resource limits — each container in the pod spec has its own
• Restart behaviour — containers can crash and restart independently; a crashing sidecar does not restart the main container (unless
Key vocabulary:
• Pod — the smallest deployable unit in Kubernetes; one or more containers sharing network and storage namespaces
• Sidecar container — a secondary container in the same pod that augments the main application (logging, proxying, config injection)
• Network namespace — the Linux kernel resource that isolates networking; containers in the same pod share it
• Co-scheduling — Kubernetes guarantees all containers in a pod run on the same worker node
What containers in the same pod share:
| Shared resource | What this means in practice |
|---|---|
| Network namespace | Same IP address. Containers communicate via localhost:port — no DNS, no service mesh resolution needed |
| PID namespace (optional) | Containers can see each other's processes if shareProcessNamespace: true |
| IPC namespace | Shared memory and semaphores between containers |
| Volumes | Pod-level volumes can be mounted by multiple containers (e.g., app writes logs → sidecar reads and ships them) |
| Node placement | Scheduler places the entire pod on one node — containers are always co-located |
What containers in the same pod do NOT automatically share:
• File system — each container has its own root FS from its image. Shared data requires explicit
volumeMount• Resource limits — each container in the pod spec has its own
resources.requests / resources.limits• Restart behaviour — containers can crash and restart independently; a crashing sidecar does not restart the main container (unless
restartPolicy triggers the whole pod)Key vocabulary:
• Pod — the smallest deployable unit in Kubernetes; one or more containers sharing network and storage namespaces
• Sidecar container — a secondary container in the same pod that augments the main application (logging, proxying, config injection)
• Network namespace — the Linux kernel resource that isolates networking; containers in the same pod share it
• Co-scheduling — Kubernetes guarantees all containers in a pod run on the same worker node