操作场景
当您需要对 TKE 集群进行缩容时,可以通过移出节点的方式将不再需要的节点从集群中移除。本文介绍如何在不同业务场景下安全地移出集群中的节点。
注意:
移出节点操作不可逆,节点移出后将不再承载集群工作负载。请根据节点上是否运行业务 Pod,选择对应的操作流程,避免因操作不当导致业务中断。
前提条件
已登录 容器服务控制台。
已确认目标节点所属的集群和节点池。
已确认目标节点上的业务运行状态。
对系统影响
节点移出后,该节点上运行的 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. 在弹出的对话框中,确认驱逐信息,单击确定。
注意:
驱逐操作不会迁移 DaemonSet 管理的 Pod,这些 Pod 会在节点移出后自动终止。
如果节点上存在使用本地存储的 Pod,驱逐操作可能会失败。此时需要在驱逐对话框中勾选强制驱逐选项,或手动删除相关 Pod。
建议在驱逐前确认目标 Pod 的副本数和集群剩余资源,确保其他节点有足够资源承载被迁移的 Pod。
步骤 3:确认 Pod 迁移完成
1. 在节点详情页,查看节点上的 Pod 列表。
2. 确认所有业务 Pod 已被成功迁移(节点上仅剩 DaemonSet 管理的 Pod 或无 Pod)。