Creating a Namespace

When to Use Namespaces

A namespace is a collection of resources and objects. Multiple namespaces can be created inside a cluster and isolated from each other. This enables namespaces to share the same cluster Services without affecting each other.

For example, you can deploy workloads in a development environment into one namespace, and deploy workloads in a testing environment into another namespace.

Prerequisites

At least one cluster has been created. For details, see Creating a CCE Cluster.

Notes and Constraints

A maximum of 6,000 Services can be created in each namespace. The Services mentioned here indicate the Kubernetes Service resources added for workloads.

Namespace Types

Namespaces can be created in either of the following ways:

Creating a Namespace

  1. Log in to the CCE console. In the navigation pane, choose Resource Management > Namespaces. Click Create Namespace.
  2. Set the parameters listed in Table 1. The parameters marked with an asterisk (*) are mandatory.

    Table 1 Parameters for creating a namespace

    Parameter

    Description

    * Namespace

    Unique name of the created namespace.

    * Cluster

    Cluster to which the namespace belongs.

    Node Affinity

    If this parameter is set to on, workloads in this namespace will be scheduled only to nodes with specified labels. To add labels to a node, choose Resource Management > Nodes > Manage Labels.

    This parameter is displayed only for clusters of v1.13.10-r0 and later.

    Description

    Description about the namespace.

    Set Resource Quotas

    Resource quotas can limit the amount of resources available in namespaces, achieving resource allocation by namespace.

    NOTICE:

    You are advised to set resource quotas in the namespace as required to prevent cluster or node exceptions caused by resource overload.

    For example, the default number of pods that can be created on each node in a cluster is 110. If you create a cluster with 50 nodes, you can create a maximum of 5,500 pods. Therefore, you can set a resource quota to ensure that the total number of pods in all namespaces does not exceed 5,500.

    Quotas can be configured for the following resources:

    • CPU (cores)
    • Memory (MiB)
    • StatefulSet
    • Deployment
    • Job
    • Cron job
    • Pod
    • Service

    Enter an integer. If the quota of a resource is set to 0, no limit is posed on the resource.

    If you want to limit the CPU or memory quota, you must specify the CPU or memory request value when creating a workload.

  3. When the configuration is complete, click OK.