liveBook · Manning

Namespace

As explained in Platform Engineering on Kubernetes

A Kubernetes namespace is a logical scope that isolates and organizes namespaced resources within a cluster.

A Kubernetes namespace is a low-cost logical boundary for separating resources inside one cluster. It organizes environments or tenants without providing strong isolation. section 4.1.4 section 6.2.3

Use namespaces with supporting controls and recognize their operational limits:

  • Pair namespaces with RBAC roles to restrict users’ visibility and with resource quotas to prevent one namespace consuming cluster resources. section 6.2.3
  • Treat namespace-per-environment as a simple pipeline arrangement, while remembering that staging and production still share cluster resources. section 4.1.4
  • Account for shared Kubernetes API endpoints and cluster-wide resources when multiple tenants require different controllers, extensions, or operating privileges. section 6.2.3

Environment pipeline

A team can create development environments as namespaces in a shared cluster, while keeping staging and production on separate clusters and configuration repositories. Promotion then follows the corresponding environment’s repository workflow. section 4.1.4

Figure 4.9 Different environment configurations, based on requirements. A more realistic approach can use the same cluster for multiple teams doing day-to-day work, while more sensitive environments like staging and production are separated on their own clusters and Git repositories to store their configurations. For a service to be promoted to a new environment, a pull request needs to be submitted to the corresponding Git repository.

Compare shared development namespaces with separate staging and production clusters, including repository boundaries and promotion flow. section 4.1.4

How Platform Engineering on Kubernetes covers it

How deep it goes
Explains logical boundaries, RBAC, quotas, shared APIs, and isolation trade-offs, but stops short of implementation commands.
Examples
Uses namespace-per-environment layouts, shared development clusters, and separate staging and production clusters as contrasting deployment arrangements.
What it assumes
Assumes familiarity with Kubernetes clusters and introduces namespaces alongside RBAC and resource quotas as isolation controls.
What you can do after
Evaluate namespace-based environment layouts and identify when separate clusters provide stronger isolation and access control.
How it connects
Connects namespaces with RBAC, resource quotas, Helm, Helmfile, environment pipelines, multi-tenancy, and Kubernetes clusters.

Also explained in

Compare how 20 books explain namespace →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Platform Engineering on Kubernetes. The section links point to the parts of the book it draws on.