我正在尝试使用 Jenkins 访问 k0s 集群,以便从 Jenkins 管道进行部署。为了在 kubeconfig 文件中复制/粘贴集群凭据,我尝试使用“~/.kube/config”命令进行访问,但是当我运行时出现“没有这样的文件或目录”的错误:
sudo cp ~/.kube/config ~/.jenkins/.kube/
我得到没有这样的文件或目录错误。似乎配置文件不存在,或者可能位于我不知道的其他地方。根据此处的文档,我为 root 用户创建了一个 kubeconfig 文件(假设它默认不存在):
k0s kubeconfig create root
但是当我重新尝试复制时,我仍然收到同样的错误“没有这样的文件或目录”。kubeconfig 文件已根据此命令的输出创建k0s kubeconfig create root
:
WARN[2022-01-30 17:44:16] no config file given, using defaults
apiVersion: v1
clusters:
cluster:
server: https://10.XXX.XXX.XXX:6443
certificate-authority-data: xxxxxxxx
name: k0s
contexts:
context:
cluster: k0s
user: root
name: k0s
current-context: k0s
kind: Config
preferences: {}
users:
name: root
user:
client-certificate-data: xxxxxxxxxxxx
我可以使用命令验证该文件是否确实存在k0s kubectl config view
:
apiVersion: v1
clusters:
cluster:
certificate-authority-data: DATA+OMITTED
server: https://localhost:6443
name: local
contexts:
context:
cluster: local
namespace: default
user: user
name: Default
current-context: Default
kind: Config
preferences: {}
users:
name: user
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
其中一篇文章建议使用该命令k0s kubectl get pods -v=6
查看 kubeconfig 文件的确切位置,但是当我运行它时 -v 似乎不支持 k0s :
Error: unknown shorthand flag: 'v' in -v=6
See 'k0s kubectl get --help' for usage
作为检查,我已经完成了cd ~/.kube/config
,但那里也没有任何东西
我错过了什么?