Namespaces & Quotas

Namespaces provide a mechanism for isolating group resources within a single physical Kubernetes cluster, enabling multi-tenancy across teams or environments.

1. Default Built-in Namespaces

  • default: The fallback namespace for objects created without specifying a target namespace.
  • kube-system: Contains system control plane components (API Server, DNS, Ingress Controllers).
  • kube-public: Publicly readable namespace containing cluster discovery information.

2. ResourceQuotas (Limiting Team Resources)

Prevent a single development team namespace from exhausting all cluster CPU and Memory:

apiVersion: v1
kind: ResourceQuota
metadata:
  name: dev-quota
  namespace: development
spec:
  hard:
    requests.cpu: "4"
    requests.memory: "8Gi"
    limits.cpu: "8"
    limits.memory: "16Gi"
    pods: "20"

Next Up

Learn Health Checks & Probes: Liveness Probes, Readiness Probes, Startup Probes, and HTTP/TCP checks.

Next Lesson: Liveness & Readiness Probes →