创建 ConfigMap/Secret 后添加对应类型的卷/环境变量时下拉菜单提示 no matching options

Rancher Server 设置

  • Rancher 版本:v2.7.6 (stable)
  • 安装选项 (Docker install/Helm Chart): Helm Chart
    • 如果是 Helm Chart 安装,需要提供 Local 集群的类型(RKE1, RKE2, k3s, EKS, 等)和版本:v1.26.9+k3s1
  • 在线或离线部署:在线部署

下游集群信息

  • Kubernetes 版本:
  • Cluster Type (Local/Downstream):
    • 如果 Downstream,是什么类型的集群?(自定义/导入或为托管 等):

用户信息

  • 登录用户的角色是什么? (管理员/集群所有者/集群成员/项目所有者/项目成员/自定义):管理员 admin

主机操作系统: Ubuntu 22.04.3 LTS aarch64

问题描述: 创建/编辑工作负载,添加 ConfigMap密文 类型的卷时, 对应下拉菜单中不显示集群已有的 ConfigMap密文,提示 Sorry, no matching options.;添加 ConfigMap KeyConfigMapSecret KeySecret 类型的环境变量时,对应下拉菜单中同样不显示已有的配置,同时提示 Sorry, no matching options.

不太确定是 K3s/Rancher 版本问题,还是部署步骤有问题,还是 SSL 证书方面的问题,还是云主机环境 ARM 架构系统的问题?

预期结果: 能够正常显示 ConfigMap 等配置。

问题截图:


其他上下文信息:

  1. K3s 通过云主机部署 K3s Server 单节点到公网,无 Agent 节点。
  2. 部署步骤参照的是 K3s 官方文档的快速部署指南和 Rancher 官方文档的在 Kubernetes 集群上安装/升级 Rancher,SSL 配置使用你已有的证书。主要部署命令如下:
# k3s
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION="v1.26.9+k3s1" INSTALL_K3S_EXEC="--flannel-backend=wireguard-native" sh -

# rancher
helm install rancher rancher-stable/rancher --namespace cattle-system --set hostname=xxx.org --set bootstrapPassword=admin --set ingress.tls.source=secret
kubectl -n cattle-system create secret tls tls-rancher-ingress --cert=/path/to/tls.crt --key=/path/to/tls.key

重现步骤:

  1. 在本地虚拟机上采用同样步骤进行部署,未重现此问题,即下拉菜单能正常看到已有的 ConfigMap 等。区别是本地虚拟机使用 Debian 10 amd64 操作系统,K3s 使用默认 flannal 后端,SSL 使用 Rancher 生成的证书
  2. 在云主机上修改 K3s 使用默认 flannal 后端,SSL 使用 Rancher 生成的证书,其他不变,问题依然存在
  3. 在云主机上修改 K3s 版本为 v1.26.8+k3s1,其他不变,问题依然存在
  4. 在云主机上修改 Rancher 版本为 latest (2.7.8),其他不变,问题依然存在
  5. 在云主机上使用 Docker 部署单节点 Rancher,问题依然存在

额外发现的问题: 编辑一个与 pod 正常匹配的 Service,选择器处却提示与 0 个 Pod 中的 0 个匹配。如果没有创建选择器,则必须进行手动端点。


我验证了 v2.7.6 的版本,是可以的。

你需要确认下 secret/configmap 和你的 deployment 是否是在一个 namespace 中,根据你的示例,你的 deployment 是在 cattle-system 中,所以你需要确认下这个 ns 中是否有你想要挂载的 secret/configmap:

kubectl get secret -n cattle-system

感谢回复,示例中使用的是 rancher 这个 deployment,部署在 cattle-system 这个 ns 中,默认就已存在许多 Secret/ConfigMap,同时我也尝试了创建新的 Secret/ConfigMap,依然不行。

如图里创建了一个 ConfigMap test ,然后创建新的 deployment,还是不显示:

在 ns default 下面:

这么神奇,你在 rancher 的微信群里么?如果在的话,@ 下 ksd

我使用的Rancher 2.7.5+RKE2 1.26.7,configMap也会偶尔出现no matching,重新创建deployment或者重新进入就可以识别

不在群里呢 :joy:

不过确实神奇,我在自己电脑的虚拟机上部署就很正常,之前内网搭过一套 k8s+rancher 也没问题,这次想在闲置的云主机上搭一套玩玩就出现了奇怪的问题 :joy:

我也尝试过多次重建 deployment,但是并没有用 :joy:

云主机没测试过,我都是用本地的虚拟机测试,建议新建1个项目和命名空间再进行测试