Kubernetes 集群名称更改

Kam*_*mil 5 kubernetes kubeadm

我正在创建一个集群kubeadm init --with-stuff(Kubernetes 1.8.4,出于某些原因)。我可以设置节点weave等。但是我在设置集群名称时遇到了问题。当我打开admin.conf或不同的配置文件时,我看到:

name: kubernetes
Run Code Online (Sandbox Code Playgroud)

当我运行时kubectl config get-clusters

NAME
kubernetes
Run Code Online (Sandbox Code Playgroud)

这是默认设置。有没有办法在init(没有命令行参数)期间设置集群名称?或者有没有办法在之后改变这个init?当前name在许多文件中被引用/etc/kubernetes/

最佳毕业生
卡米尔

小智 5

您现在可以使用 kubeadm 的配置文件来执行此操作。公关在这里:

https://github.com/kubernetes/kubernetes/pull/60852

使用 kubeadm 配置,您只需在顶层设置以下内容

clusterName: kubernetes
Run Code Online (Sandbox Code Playgroud)


Ant*_*nko 3

不,您无法更改正在运行的集群的名称,因为它用于集群内部的发现,这需要在整个集群中几乎同时更改它。

遗憾的是,您之前也无法更改集群的名称init这是Github上的问题。

更新:从版本 1.12 开始,kubeadm允许您在“init”阶段之前更改集群名称。

为此(当然对于 >=1.15 的版本,对于较低版本,命令可能不同,命令在版本 1.12 和 1.15 之间有时会发生变化),您需要clusterName在集群配置文件中设置值,如下所示:

  1. 通过命令将默认配置保存到文件(集群配置是可选的,因此我们需要先执行该步骤,以免从头开始编写)kubeadm config print init-defaults < init-config.yaml
  2. clusterName在配置中设置 值。
  3. kubeadm使用配置参数运行init:kubeadm init --config init-config.yaml