100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Containers, Docker & Kubernetes
25 minintermediate

Namespaces, ResourceQuotas and LimitRanges — cluster multi-tenancy

A Kubernetes cluster is a shared computing resource, and without explicit governance mechanisms a single team's misconfigured workload can exhaust CPU and memory that other teams depend on. Namespaces are the primary multi-tenancy boundary in Kubernetes: they scope most resource types — Pods, Services, ConfigMaps, Secrets, Deployments — to a named partition that RBAC policies and resource governance objects can target independently. ResourceQuotas set aggregate consumption limits for a namespace: a quota can restrict the total number of Pods, the total CPU and memory requested by all containers, and the number of LoadBalancer Services — any workload that would push the namespace over its quota is rejected at admission time by the ResourceQuota admission controller, preventing gradual resource exhaustion by any single namespace. LimitRanges complement quotas by setting default and maximum resource requests and limits for individual containers, ensuring that every container in the namespace has resource governance even when developers omit the `resources` block from their Pod specs.

Analogy🏏Cricket
🏏 Think of it like cricket: The Pod-ReplicaSet-Deployment hierarchy maps precisely onto the three levels of IPL franchise team management. A Pod is a single player on the field at a given moment — the smallest unit of participation, carrying its own identity and fulfilling a specific role in the current game. A ReplicaSet is the franchise's match-day playing XI contract — it specifies that exactly eleven players matching a specific profile must always be on the field; if one is injured and leaves, the team management immediately sends a substitute of the same profile to restore the count. A Deployment is the franchise's season-long team strategy — it manages how the playing XI evolves between matches: when a new batting approach is adopted, the Deployment replaces the old XI with the new one in a controlled rolling substitution rather than swapping all eleven players simultaneously and disrupting team cohesion. Just as the franchise director does not manage individual players directly — the playing XI contract (ReplicaSet) handles the count and the season strategy (Deployment) handles the transitions — you never manage Pods directly in production; the Deployment manages the transition and the ReplicaSet maintains the count. This reveals why the three-level hierarchy exists rather than one omnibus 'workload' object: each level solves one specific problem, and composing three focused abstractions produces better separation of concerns than one object that conflates scheduling, scaling, and update management.
Lesson 12 of 33
0% complete