首页 / 项目管理 / 命名空间 / 创建命名空间

创建命名空间

在项目关联的集群下,基于项目可用配额,创建新的命名空间。

新的命名空间将使用项目已有的资源(内存、CPU 等),且一个命名空间的所有资源只能来源于同一个集群。

创建命名空间

创建单个命名空间

  1. 项目管理 视图,单击待创建命名空间的 项目名称

  2. 在左侧导航栏中,单击 命名空间 > 命名空间

  3. 单击 创建命名空间

  4. 配置 基本信息

    参数 说明
    所属集群 在项目已关联的集群中,选择一个要创建命名空间的集群。
    命名空间 命名空间的名称,名称的固定前缀为项目名称。
  5. (可选)配置 资源配额(ResourceQuota)。

    命名空间下每指定一个容器的计算或存储资源限额(limits),或者每新增一个 Pod 或 PVC,都将占用此处所设配额。

    说明

    • 命名空间的资源配额,来源于集群分配给项目的配额。对于某一种资源,可设置的最高配额为在项目中的尚未使用的资源配额,如果任意一种资源的可使用量为 0,将无法继续创建命名空间,请联系平台管理员获得支持。

    • 仅当集群中部署了 GPU(vGPU 或 pGPU)资源时,支持配置 GPU 资源配额。当 GPU 资源为 vGPU 资源时,同时支持配置 显存 配额。

      GPU 单位:100 个单位的虚拟核心等于 1 个物理核心(1 颗 pGPU = 1 核 = 100 vGPU),pGPU 的单位为颗,只能整颗分配;1 个单位的显存为 256 Mi,1024 Mi = 1 Gi。

    • 如果未输入某类资源的配额,默认为 不限制。即命名空间可按需占用集群已分配给项目的可用的相应类型的资源,无限额。

  6. (可选)若指定了 CPU 或内存的配额,需对应配置 容器限额(LimitRange)。

    参数 说明
    最大值 命名空间下单一容器可使用的资源(CPU、内存)的最大限制值(limits)。如果通过 YAML 编排文件将容器的资源请求设置成大于此 最大值 的值,容器将创建失败。
    默认值 命名空间下单一容器可使用的资源(CPU、内存)的默认限制值(limits)。若未特别指定,容器的资源限额(limits)默认为此 默认值

    说明:容器的资源请求(requests)为资源限额(limits)除以集群超售比。requests 值供调度器调度容器时参考和判断。调度器会检测每个节点可用于分配的资源(资源总额 - 已调度到节点上 Pod 内的容器的 requests 之和),当新建的 Pod 内的容器的 requests 值的总和,超过了节点的剩余可用资源,该 Pod 将不会被调度到此节点上。

  7. (可选)容器组安全策略可以限制容器组中的容器使用哪些特权或功能,以及规定容器组中的容器如何运行,平台基于 PSA(Pod Security Admission)实现了更加细粒度的容器组安全策略。它定义了三种安全安全模式和安全标准:

    • 安全模式:Kubernetes 中的安全模式(Security Mode)是一种控制安全策略的机制,用于定义 Kubernetes 如何处理违反安全策略的容器组。更多更多细节请参考 官方文档 ,安全模式可以分为以下三种:

      • Enforce 模式:当容器组违反了安全策略时,Kubernetes 将拒绝该容器组的创建或修改,并返回错误信息,适合对安全要求较高的生产环境使用。

      • Audit 模式:当容器组违反了安全策略时,Kubernetes 将记录该事件,并将记录存储在审计日志中。这种模式通常用于了解集群中的安全事件,以便进行后续的调查和分析。

      • Warn 模式:当容器组违反了安全策略时,Kubernetes 将允许该容器组的创建或修改,并返回警告信息。这种模式通常用于测试或过渡期,以便管理员可以逐步调整安全策略而不会对应用程序造成影响。

    • 安全标准:Pod 安全性标准定义了三种不同的策略(Policy),以广泛覆盖安全应用场景,更多细节请参考 官方文档

      • Privileged 标准:容器组中的容器拥有特权访问,允许所有操作,没有任何限制。

      • Baseline 标准:限制容器组中的容器使用宿主机的命名空间、网络、文件系统、进程等。这是一种默认的安全标准,通常适用于大多数场景。

      • Restricted 标准:进一步限制容器组中的容器使用宿主机的资源,包括限制容器使用文件系统、网络等。这是一种高度安全的标准,适用于对安全性要求非常高的场景。 这些安全标准可以通过 Kubernetes 中的 Admission Controller 对容器组进行验证,以确保容器组中的容器不会破坏 Kubernetes 集群的安全性。

  8. (可选)在 更多配置 区域,为当前命名空间添加标签(labels)、注解(annotations)。

    提示:可通过标签定义命名空间的属性,或通过注解为命名空间补充附加信息,两者均可用于过滤、筛选命名空间。

  9. 单击 创建

批量创建命名空间

批量创建命名空间功能用于边缘计算海量集群场景,不再进行配额相关校验,请您在使用前提前做好集群内项目、命名空间配额规划,避免业务应用因配额不足导致创建失败。

  1. 项目管理 视图,单击待创建命名空间的 项目名称

  2. 在左侧导航栏中,单击 命名空间 > 命名空间

  3. 单击 创建命名空间 右侧的

  4. 单击 批量创建命名空间,相关配置请参考 创建单个命名空间

  5. 创建完成后,可单击 更多记录,查看创建进度的相关信息。

    提示

    • 创建任务记录最多保留七天,最多保留 1000 条记录。

    • 创建命名空间支持 10 条并发,超过该数量的任务将处于等待中的状态。

    对于创建失败的任务,可进行查看详情、重试操作。

相关操作

删除/移除命名空间

在指定的项目下,删除/移除一个命名空间。

删除命名空间:删除命名空间并清理命名空间下已有资源,释放命名空间占用的配额资源。

移除命名空间:移除命名空间只是将该命名空间移除出项目,不影响命名空间下已有资源。例如:应用、持久卷声明、配置、计算、命名空间成员及其角色等。
移除后的命名空间,可导入其他关联了该命名空间所在集群的项目下管理。具体操作请参考 导入命名空间