Creating a namespace
Applications must be created or deployed under a namespace in your product cluster. Namespaces are required to organize users and their applications.
Required user type or access level: Cluster administrator or team administrator
You can create a namespace by using the OpenShift Container Platform to create a Project. OpenShift Container Platform Projects are recognized as namespaces by IBM Cloud Pak® for Multicloud Management. See Creating a Project in the OpenShift documentation for the procedure for creating a Project.
If the Kubernetes CLI (kubectl) is installed, you can use the
kubectl create namespace command to create a namespace.
- Provide a name for your namespace. The namespace name must meet the Kubernetes requirements for namespaces, including:
- Be unique. You cannot use a duplicate namespace name.
- Not exceed 63 characters in length.
- Contain only lowercase letters, numbers, and the dash symbol (-).
Specify the pod security policy to be associated to your namespace. The pod security policy provides security aspects for pods that are created by applications that are installed on the namespace. The default applied pod security policy field displays the policy name that is applied across the cluster for all of the namespaces that are created.
Attention: Multiple pod security policies can be associated with a namespace or ServiceAccount. Pods can resolve to any of the defined polices that are compatible, which might result in a less-restrictive policy. See Policy Order .
After the deployment completes, a new namespace or Project is displayed on the namespaces page.
Note: Be sure to scroll the
All namespaces menu to view all of your namespaces.
Adding a label
You can use labels to create network policies that are based on a namespace selector. You cannot add labels for a namespace from the console. To add namespace labels, use the Kubernetes CLI.
kubectlcommand line interface. See Installing the Kubernetes CLI (kubectl).
View a list of all namespaces.
kubectl get namespaces
The output resembles the following code:
NAME STATUS AGE default Active 6h dev Active 2h kube-system Active 6h qa Active 2h
kubectl label namespaces dev team=dev