helm 和 kubectl 上下文不匹配

helm and kubectl context mismatch

我无法理解 helmhelm --kube-context=microk8s install ... 的使用应该安装到上下文中 microk8s 因此安装到我的本地 microk8s 集群而不是我曾经使用过的远程 GKE 集群连接到。

但是由于 Error: could not get Kubernetes config for context "microk8s": context "microk8s" does not exist 如果我 运行 例如helm --kube-context=microk8s install --name mereet-kafka 在成功 运行 宁 helm init 并添加必要的存储库之后。

上下文 microk8s 存在并根据 kubectl config current-context 启用。为了避免任何拼写错误,我什至可以通过 运行ning helm --kube-context=$(kubectl config current-context) install --name mereet-kafka 重现它。

为什么 helm 不能使用明显存在的上下文?

这看起来更像是 kubernetes 配置问题,而不是 helm 本身的问题。

有几件事可能会有所帮助:

  1. 检查~/.kube/config

    中的配置文件
    • kubectl config view

是否current-context设置为:microk8s?

  1. 尝试使用:

    • kubectl config get-contexts

    • kubectl config set-context

    • kubectl config use-context

有适当的参数--server --user --cluster

  1. 检查您引用的是来自 ~/.kube/config 的配置,而不是来自其他地方的您自己的私有配置。

  2. 检查您是否有 KUBECONFIG 环境变量 (echo $KUBECONFIG)

希望对您有所帮助。