What Is a Kubernetes Namespace?

A Kubernetes namespace is simply a place to run pods. Security, resource isolation, and resource quotas in Kubernetes are organized around the notion of a namespace. For more information, see Namespace.

Kubernetes uses namespaces to separate and isolate resources and applications. The following illustration shows the namespaces created as part of MapR installation in Kubernetes.

The following namespaces (one per Kubernetes environment) are created in the Kubernetes environment during the bootstrap phase:
  • mapr-system – This namespace is created for the CSpace operators. This namespace is designed to reduce the risk of security vulnerabilities by isolating high-privilege components. The operator running in this namespace has privileges that operators running in other namespaces, such as the Spark operator, Drill operator, and others, do not have.
  • spark-operator – Created for the Spark operator.
  • drill-operator – Created for the Drill operator.
  • mapr-csi – Created for running the MapR Container Storage interface (CSI) pods. The Container Storage Interface (CSI) is an industry-standard interface that enables volume plug-ins to be containerized to make it agnostic to the underlying host for volume plug-in driver binaries. The MapR CSI driver implements the v0.3 spec as described here. The CSI driver provides POSIX support for an ObjectStore pod to connect to a MapR storage cluster. For more information about CSI, see:
  • mapr-external-info – Contains information about the external storage cluster, including the secrets for the external CSpaces to connect to MapR storage clusters.
  • mapr-configuration-cspaces – Contains templates for CSpace resources.

Namespaces for the Compute Space are created in the Kubernetes environment when you deploy the corresponding Custom Resource files. CSpace namespaces are used to run compute applications. These namespaces are home to MapR Kubernetes Ecosystem applications such as Spark and Drill. CSpace services such as the Hive Metastore, Compute CLI, and Spark History Server can also run in these namespaces.