Namespaces

A namespace is a logical partition within a cluster that provides a mechanism for isolating sets of resources from each other. Such resource segmentation allows multiple teams or applications to share the same cluster without conflict, because each has its own set of resources in its own namespace.

Using namespaces, you can use a single EDA instance to manage multiple sets of resources with distinct administrators. Each EDA user can also be granted access to only selected namespaces. A common real-world case for such system is an operator with regional operations teams, where a single controller instance supports all of the regions, but users within a region can only see the resources and states relating to their region.

The base namespace

EDA always includes one built-in namespace; by default, this is eda-system. The default can be modified during EDA installation.

All EDA core services run in the base namespace, including Pods for NPP and CX-simulated TopoNodes. Unnamespaced resources (those with "namespaced" set to false in their manifest) also exist in the base namespace.

Namespaces in the EDA GUI

The top of every page in the EDA GUI includes a namespace selector. You must use to specify the namespace you are working in.

Figure 1. Namespace selector
The data displayed in data grids always conforms to the selected namespace.
  • If you have selected All Namespaces, then data grids contain data from all namespaces. You must have permissions defined in a Cluster Role to access data in this view.
  • If you have selected a specific namespace, then data grids contain data exclusively from that namespace. You must have permissions defined in either a Cluster Role or a namespace Role to access data in this view.

The currently selected namespace is automatically used as the Namespace value for any resource you create in the GUI. To create a resource in a different namespace, you must select the intended namespace in the selector.

Figure 2. Namespace is read-only metadata derived from the current namespace selection

User-created namespaces

You can create new namespaces using the EDA GUI.

Creating a namespace

Only users with sufficient privileges can create a new namespace.
  1. Open the System Administration menu.
  2. Click Namespaces to open the Namespaces page.
  3. On the Namespaces page, click Create.
  4. Enter the following details about the new namespace:
    • The Name of the namespace
    • One or more Labels
    • One or more Annotations
    • An optional Description for the Namespace
  5. Commit the new namespace by doing one of the following:
    • Click Commit to commit the new configuration immediately.
    • Click Add to Transaction to add this configuration to a cumulative transaction.