【问题标题】:Kubectl config view gives empty resultsKubectl 配置视图给出空结果
【发布时间】:2020-01-22 13:36:30
【问题描述】:

配置存储在 ~/.kube/config 中。但是当我使用下面的命令时,它会给出空的结果。 kubectl config view

输出:

apiVersion: v1
clusters: []
contexts: []
current-context: ""
kind: Config
preferences: {}
users: []

【问题讨论】:

  • 当你运行这个命令时你会得到什么信息kubectl cluster-info dump

标签: kubernetes configuration config kubectl azure-aks


【解决方案1】:
  • 只是为了确保,请尝试运行kubectl config view --kubeconfig <PATH_TO_YOUR_CONFIG_FILE>
  • 确保您的$KUBECONFIG 为空,(或者它指向~/.kube/config)。
  • 如果您通过snap 安装kubectl,则可能是沙盒问题。

【讨论】:

  • 这不起作用。使用显式文件,我的 yaml 文件在 users 下有内容,但用户总是用显式 --kubeconfig 和直接路径显示为空
【解决方案2】:

这几天我一直在为同样的问题苦苦挣扎。我的 Linode 集群的 kubeconfig 根本不起作用。 kubectl config view -v 8 (verbose max) 给了我这个输出:

I0312 10:01:07.513754   16368 loader.go:379] Config loaded from file:  C:\Users\username\.kube\config
apiVersion: v1
clusters: null
contexts: null
current-context: ""
kind: Config
preferences: {}
users: null

我终于发现我的配置文件在一行的开头包含一个零宽度空格(U+200B)。它在我使用的每个编辑器中都是不可见的,包括启用了 显示所有字符 的 Notepad++。我的一位同事使用 Vim 发现了它。您也可以通过尝试使用 iconv 将文件转换为 ASCII 来找到它:

$ iconv -t ascii ./config
apiVersion: v1
kind: Config
preferences: {}
iconv: config:4:0: cannot convert

检查一些可能是显而易见的事情,但直到你经历过它。将文本复制到一个新文件中也会使它不可见。

我感到失望的是,在这种情况下 kubectl 至少不会提供错误消息,而是通过输出一个空的 kubeconfig 静默失败。 (我使用了 kubectl v1.19.5 和 v1.20.4)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多