如何将Pod移动到新的节点池/实例组

时间:2019-06-15 14:18:59

标签: kubernetes google-cloud-platform google-kubernetes-engine

我有一个连接了一个节点池的Gke集群

我想对节点池进行一些更改-例如添加标签等

因此,我使用新配置创建了一个新的节点池,并将其附加到集群。所以集群现在有2个节点池。

此时,我想将吊舱移至新的节点池并销毁旧的节点池

该过程如何完成?我这样做正确吗?

2 个答案:

答案 0 :(得分:2)

有多种方法可以将吊舱移动到新的节点池。

一种方法是使用pod规范中的标签选择器将pod引导到新的节点池,如Google blog post that announced node pools中的“节点节点的更多乐趣”中所述(需要注意的是强制终止现有的广告连播,以便对其进行重新安排)。这样可以使群集中的所有节点都保持正常运行,并且您可以使用节点池上的标签轻松地在池之间来回移动Pod(GKE自动将节点池名称添加为标签,以简化操作)。

另一种方法是遵循Migrating workloads to different machine types的教程,该教程描述了如何封锁/耗尽节点以将工作负载转移到新的节点池。

最后,您可以只使用GKE删除旧的节点池。 GKE将在删除节点之前自动清空节点,这将导致您的工作负载转移到新池中,而无需您自己运行任何其他命令。

答案 1 :(得分:0)

您可以使用:

kubectl drain <node_name>

为了将所有吊舱从特定节点移动到其他节点