You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何清理kubectl top nodes中重复显示的旧节点主机名?

如何清理kubectl top nodes中重复显示的旧节点主机名?

嗨,这个问题我碰到过!其实是因为改主机名后,旧的节点对象还留在Kubernetes集群里,再加上metrics-server的缓存没更新,就导致重复显示了。按照下面的步骤来操作就能解决:

  • 先找出旧节点
    运行以下命令列出所有节点的详细信息:
    kubectl get nodes -o wide
    对比你实际的4个集群节点,那些状态为NotReady、IP不匹配或者是旧主机名的,就是需要清理的目标节点。

  • 删除旧的节点对象
    找到旧节点的主机名后,执行删除命令:
    kubectl delete node <旧节点主机名>
    如果删除时提示节点仍处于连接状态,可以用强制删除命令:
    kubectl delete node <旧节点主机名> --force --grace-period=0

  • 刷新metrics-server的缓存
    kubectl top 依赖metrics-server提供数据,它可能还缓存着旧节点的监控信息,所以需要重启metrics-server让它重新采集数据:
    先确认metrics-server所在的Pod(k3s中通常在kube-system命名空间):
    kubectl get pods -n kube-system | grep metrics-server
    然后重启metrics-server的部署:
    kubectl rollout restart deployment metrics-server -n kube-system

  • 验证结果
    等待几十秒让metrics-server完成重启和数据采集,再运行 kubectl top nodes,应该就只会显示当前的4个正常节点了!

小提醒:以后如果需要修改节点主机名,建议先把节点从集群中移除(worker节点可执行k3s agent leave,server节点需注意高可用集群的操作规范),修改完成后再重新加入集群,这样就能避免留下这类幽灵节点啦。

备注:内容来源于stack exchange,提问作者slondr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 08:53:05