kubernetes controller_manager的cluster-name参数的用途是什么?

时间:2017-03-02 18:06:17

标签: kubernetes

所以问题在于标题。

我想知道来自kubernetes controller_manager的cluster-name参数的用途是什么?

2 个答案:

答案 0 :(得分:1)

允许您创建多个群集并帮助您区分它们。大多数人只使用kubernetes(这是默认设置)当你设置你的kubectl时,你也提供它。

这是来自k8s网站@ https://kubernetes.io/docs/getting-started-guides/scratch/

您应该为群集选择一个名称。为每个群集选择一个短名称,该名称对于未来的群集名称是唯一的。这将以多种方式使用:

  • 通过kubectl来区分您可以访问的各种群集。稍后您可能需要第二个,例如测试新的Kubernetes版本,在世界其他地区运行等等。
  • Kubernetes集群可以创建云提供商资源(例如AWS ELB),不同的集群需要区分每个创建的资源。请致电此CLUSTER_NAME

答案 1 :(得分:1)

阅读cluster manager的代码,您会发现群集名称传递给service controllerpersistent volume controller,然后将其传递给相关对象(负载平衡器,持久卷,......)。

在这两种情况下,这些都会将群集名称传递给相关的cloud providersee interface),可以在其提供者特定对象的命名中使用它。如果您在同一个提供程序上并排运行多个Kubernetes集群,这是有道理的。

GCEAWS云提供商就是这样做的,有些人不这样做。

因此,为控制器管理器配置两个具有相同群集名称配置的群集可能会因云提供商创建的对象中的名称冲突而导致问题。