You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:使用Rancher CLI在指定项目创建命名空间,却生成在默认项目

解决Rancher CLI在指定项目创建命名空间的问题

你当前的命令通过--dry-run生成的Namespace YAML未包含Rancher项目关联的专属标签,导致执行apply后命名空间被默认归类到default项目。以下是两种可行的解决方法:

方法一:直接使用Rancher CLI的命名空间创建命令

直接通过rancher namespace create指定目标项目,无需依赖kubectl管道:

rancher namespace create myns --project p-abc

注:p-abc为你登录时--context参数中的项目ID(即c-abc:p-abc冒号后的部分)

方法二:给kubectl生成的YAML添加项目标签

如果坚持使用kubectl的方式,需要手动添加Rancher关联项目的标签:

  1. 生成基础的Namespace YAML文件:
    rancher kubectl create namespace myns --dry-run=client -o yaml > myns.yaml
    
  2. 编辑myns.yaml,在metadata.labels中添加Rancher项目ID标签:
    apiVersion: v1
    kind: Namespace
    metadata:
      name: myns
      labels:
        field.cattle.io/projectId: p-abc
    
  3. 应用修改后的YAML文件:
    rancher kubectl apply -f myns.yaml
    

原理说明

Rancher通过field.cattle.io/projectId标签建立命名空间与项目的关联关系,缺少该标签时,Rancher会自动将命名空间分配到default项目中。

内容的提问来源于stack exchange,提问作者Maxster17

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 02:20:30