【问题标题】:How to save generated kube config to .kube/config如何将生成的 kube 配置保存到 .kube/config
【发布时间】:2018-03-09 22:20:39
【问题描述】:

我正在使用rke 在私有云中生成 Kubernetes 集群。它产生一个kube_config_cluster.yml 文件。有没有办法将此配置添加到我的$HOME/.kube/config 文件中?

在没有设置 .kube/config 的情况下,使用kubectl 时,我必须传递参数:

kubectl --kubeconfig kube_config_cluster.yml <command>

或者设置 KUBECONFIG 环境变量。

export KUBECONFIG=kube_config_cluster.yml

【问题讨论】:

  • 查看 kubectl config 下的子命令 - 它们让您可以在集群和上下文之间进行操作和切换(集群 + 命名空间 + 身份验证)。

标签: kubernetes kubectl


【解决方案1】:

kubectl config merge 命令是not yet available。但是你可以通过运行实现配置合并:

命令格式:

KUBECONFIG=config1:config2 kubectl config view --flatten

示例:

将配置合并到~/.kube/config 并写回~/.kube/config-new.yaml

不要直接通过管道连接到配置文件!否则,它将删除您所有的旧内容!

KUBECONFIG=~/.kube/config:/path/to/another/config.yml kubectl config view --flatten > ~/.kube/config-new.yaml

cp ~/.kube/config-new.yaml ~/.kube/config

【讨论】:

  • 这将使~/.kube/config 无法使用。写入不同的文件,然后将mv 写入config
  • UGH,我希望在尝试之前先阅读您的评论。它删除了我的整个文件
【解决方案2】:

如果kubectl 可以将其读取为有效的配置文件,您可以将其用作您的 kubeconfig。所以cp kube_config_cluster.yaml $HOME/.kube/config 应该可以正常工作。默认情况下,它会从那里读取该配置文件,您不必指定它。

【讨论】:

    【解决方案3】:

    我一般使用以下命令来查看和更改上下文,不会太杂乱且容易触发

     
    kubectl config current-context #show the current context in use
    kubectl config use-context context-name-you-want-to-use
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-21
      • 2021-09-18
      • 1970-01-01
      • 1970-01-01
      • 2021-04-24
      • 2021-02-27
      • 2019-05-21
      • 2021-02-17
      相关资源
      最近更新 更多