找不到 kubeconfig 文件

coc*_*oco 11 ubuntu remote-access kubernetes

我正在尝试使用 kubectl 访问远程 kubernetes 集群。为了在 kubeconfig 文件中复制/粘贴集群凭据,我尝试使用“ ~/.kube/config ”命令进行访问,但出现错误,提示“没有这样的文件或目录”。

谁能告诉我为什么我会收到此错误?kubectl 运行完美。

VK.*_*VK. 15

就我而言,我在 .bashrc 中将 KUBECONFIG 变量设置为“~/.kube/config”。该文件存在并且具有正确的权限,但未以某种方式得到解决。结果我不得不使用 ${HOME} 代替 ~。这就成功了。


aci*_*uji 10

如果您的kubectl集群工作正常,那么该/kube/config文件应该在那里。

\n

您可以在启动命令时以越来越详细的级别检查文件的位置:

\n
\xe2\x9e\x9c  ~ kubectl get pods -v=6\n\n...] Config loaded from file:  /home/thomas/.kube/config \xe2\x97\x84 \xe2\x97\x84 \xe2\x97\x84 \xe2\x97\x84 \xe2\x97\x84\n...] Starting client certificate rotation controller\n...] GET https://172.17.0.4:8443/api/v1/namespaces/default/pods?limit=500 200 OK in 11 milliseconds\n
Run Code Online (Sandbox Code Playgroud)\n

有一种解决方法可以让您使用以下命令生成配置kubectl config view --flatten

\n
\n

--flatten[=false]:将生成的 kubeconfig 文件压平为自包含输出(对于创建可移植的 kubeconfig 文件很有用)

\n
\n

还有一种可能是,在使用 kubeadm 启动集群时,您没有按照说明移动文件(:

\n
    \n
  • 要使 kubectl 适用于非 root 用户,请运行以下命令,\n这些命令也是输出的一部分 kubeadm init

    \n
    mkdir -p $HOME/.kube\nsudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config\nsudo chown $(id -u):$(id -g) $HOME/.kube/config\n
    Run Code Online (Sandbox Code Playgroud)\n
  • \n
  • 或者,如果您是 root 用户,您可以运行:

    \n
    export KUBECONFIG=/etc/kubernetes/admin.conf\n
    Run Code Online (Sandbox Code Playgroud)\n
  • \n
\n

kube/config如果您将 kubectl 与 sudo 一起使用,您将从根路径使用。

\n
\n

如需更多阅读,请查看以下内容:

\n
    \n
  1. 使用 kubeconfig 文件配置/组织集群访问
  2. \n
  3. 使用 kubeconfig 文件配置/组织集群访问
  4. \n
  5. 掌握-kubeconfig
  6. \n
\n


小智 5

要解决此问题,您首先需要在工作站中创建一个集群。这将生成设置为“~/.kube/config”目录的KUBECONFIG变量。

或者您可以使用 --kubeconfig + kubeconfig 文件的路径