当您不再需要该节点继续工作时,可以通过以下操作移除节点。本文介绍如何在容器服务 Kubernetes 版中移除节点。
前提条件
-
已创建Kubernetes集群。具体操作,请参见创建Kubernetes托管版集群、创建Kubernetes专有版集群。
-
已通过kubectl连接Kubernetes集群。具体操作,请参见获取集群KubeConfig并通过kubectl工具连接集群。
使用说明
-
移除节点会涉及Pod迁移,可能会影响业务,请在业务低峰期操作。
-
操作过程中可能存在非预期风险,请提前做好相关的数据备份。
-
操作过程中,后台会将当前节点设置为不可调度状态。
-
移除节点仅移除Worker节点,不会移除Master节点。
-
移除节点请通过控制台进行操作,如果使用kubectl delete node方式手动移除节点,则:
-
移除后的节点无法再添加到其他集群上。
-
删除集群时,该节点所在的ECS实例会被释放。
-
-
如果您没有通过容器服务控制台,而是直接在ECS或者ESS控制台(或相关API)主动释放节点、移除实例,或者因包年包月到期而被动释放节点,那么节点或实例就会直接停机,自动从容器服务控制台中移出。如果节点池设置了期望节点数,那么节点池为了能够将节点个数维持在期望节点数,会根据相应节点池配置自动扩容其他实例至节点池,以达到期望节点数。
操作步骤
-
登录容器服务管理控制台,在左侧导航栏选择集群。
-
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择节点管理 > 节点池。
-
在节点池页面,单击目标节点池名称。在节点管理页签中,选中目标节点,并单击移除节点。
-
可选:在移除节点对话框中,可选中同时释放ECS和自动排空节点(drain)。
-
同时释放ECS:
-
仅释放按量未费类型的ECS实例及其数据盘,不被释放的ECS实例会继续收费。
-
对于预付费ECS实例,计费周期到期后,ECS实例会自动释放。
-
您也可以在ECS实例到期前:
-
申请退款,提前释放实例,请参见退款规则及退款流程。
-
将计费方式转为按量付费后释放实例,请参见包年包月转按量付费。
-
-
若不选择同时释放ECS,该节点所在的ECS实例会继续计费。
-
-
自动排空节点(drain):将待移除节点上的Pod转移到其他节点。请确保集群其他节点的资源充足。
您还可以通过执行命令
kubectl drain node-name [options]
的方式将待移除节点上的Pod转移到其他节点。说明
-
node-name格式为your-region-name.node-id。
your-region-name为您集群所在的地域名称。node-id为待移除节点所在的ECS实例ID。例如,cn-hangzhou.i-i-bp1asavedmte377c3**** 。
-
options
为该命令的可选配置参数。例如,可配置为--force --ignore-daemonsets --delete-local-data
。更多信息,请执行命令kubectl drain --help
查看。
-
-
-
选中我已了解上述说明,确认移除节点,单击确定。
说明
如果提示节点移除失败,取消勾选同时释放ECS和自动排空节点(drain)后重新移除。
常见问题
问题现象
节点池的节点管理页签中没有目标节点,但目标节点属于集群。
解决方案
您可以通过以下方式移除节点。
-
登录容器服务管理控制台,在左侧导航栏选择集群。
-
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择节点管理 > 节点。
-
在节点页面,选中所有要移除的节点,单击批量移除。
-
在弹出页面确认相关信息,单击确定。
相关文档
-
扩缩容节点池
-
添加已有节点
-
节点池运维
-
节点与节点池最佳实践
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/167732.html