容器服务 移出节点

当需要对 TKE 集群进行缩容时,可以通过移出节点的方式将不再需要的节点从集群中移除。这里说明如何在不同业务场景下安全地移出集群中的节点。

相关产品
容器服务 产品页,含版本规格、价格与购买入口。

一、操作场景

注意:1. 移出节点操作不可逆,节点移出后将不再承载集群工作负载。请根据节点上是否运行业务 Pod,选择对应的操作流程,避免因操作不当导致业务中断。

注意:2. 请不要使用例如 kubectl delete node 的方式直接对节点资源进行删除,否则可能导致节点关联资源泄露进而影响业务正常运行;请务必按照以下流程安全地对节点进行移出。

二、前提条件

·已登录 容器服务控制台。

·已确认目标节点所属的集群和节点池。

·已确认目标节点上的业务运行状态。

三、对系统影响

·节点移出后,该节点上运行的 Pod 将被终止。如果 Pod 由 Deployment、StatefulSet 等控制器管理,控制器会在其他可用节点上重新调度这些 Pod。

·如果节点上运行了使用本地存储(如 hostPath、emptyDir)的 Pod,本地数据将丢失。

·移出节点不会自动释放对应的 CVM 实例。如需释放,请在 CVM 控制台 另行操作。

四、操作步骤

根据节点上是否运行业务 Pod,选择对应的操作流程。

五、场景一:节点上无业务 Pod

如果目标节点上没有运行业务 Pod(例如新加入的空闲节点、已完成业务迁移的节点),可以直接移出节点。操作方式有以下两种:

六、方式一:在节点池详情页移出节点

1. 登录容器服务控制台,选择左侧导航中的 集群。

2. 在集群列表中,选择目标集群 ID,进入该集群的基本信息页面。

3. 选择左侧导航中的节点管理,切换到节点池页签,选择目标节点池进入详情页。

4. 在节点池详情页的节点列表中,选中需移出的节点,单击移出。如下:

5. 在弹窗中确认节点信息,单击确定,即可完成节点移出。

七、方式二:修改节点池期望节点数

如果集群使用节点池管理节点(非弹性伸缩模式),你也可以通过调整节点池的期望节点数来实现缩容:

1. 登录容器服务控制台,选择左侧导航中的 集群。

2. 在集群列表中,选择目标集群 ID,进入该集群的基本信息页面。

3. 选择左侧导航中的节点管理,切换到节点池页签,选择目标节点池,单击编辑。

4. 将节点数量调整为缩容后的目标值,单击确定。

注意:说明:

注意:通过修改节点池期望节点数缩容时,系统会自动选择节点进行移出。如需指定移出特定节点,请使用 方式一。

八、场景二:节点上有业务 Pod

如果目标节点上正在运行业务 Pod,请勿直接移出节点,否则可能导致业务中断。请按照以下步骤操作:

九、步骤 1:封锁节点

封锁(cordon)节点后,新的 Pod 将不会被调度到该节点。

1. 登录 容器服务控制台,选择左侧导航中的集群。

2. 在集群列表中,单击集群 ID,进入集群管理页面。

3. 选择节点管理,在节点页签中单击节点行右侧的更多 > 封锁。

4. 在弹出的对话框中,确认节点信息后,单击确定。

注意:说明:

注意:封锁节点的详细说明,请参见 驱逐或封锁节点。

十、步骤 2:驱逐节点上的 Pod

驱逐(drain)操作会将节点上的 Pod 安全迁移到其他可用节点。

1. 在节点页签中,单击节点行右侧的更多 > 驱逐。

2. 在弹出的对话框中,确认驱逐信息,单击确定。

十一、步骤 3:确认 Pod 迁移完成

1. 在节点详情页,查看节点上的 Pod 列表。

2. 确认所有业务 Pod 已被成功迁移(节点上仅剩 DaemonSet 管理的 Pod 或无 Pod)。

十二、步骤 4:移出节点

确认 Pod 迁移完成后,按照场景一的 方式一 操作移出节点。

赞 (0)
上一篇 4天前
下一篇 4天前