k8s重启后报错Error getting node not found

今天升级一台3主的k8s集群的配置。升级其中一台后另外两个节点就出现Not Ready的状态。

升级之前最好把一些能停的应用停掉。或者能够通过增加临时节点来进行扩容,不然所有pod调度到其他节点,可能把其他节点压垮。没办法,只能把其他两台直接升级配置,然后重启。重启之后三台中有两台Not Ready。节点的Not Ready的凭据是kubelet上报的数据,所以首先重启下kubelet:

systemctl restart kubelet

重启后依然是Not Ready, 于是在Not Ready的节点上查看kubelet的日志:

复制代码
# 查看Kubelet的所有日志
sudo journalctl -u kubelet

# 查看最近的Kubelet日志
sudo journalctl -u kubelet -r

# 查看最近两小时的Kubelet日志
sudo journalctl -u kubelet --since "2 hours ago"

发现报错:

"Error getting node" err="node \"txbj-164020-prod-tb-kubelet\" not found"

于是对比现在的主机名,发现确实不一样,于是使用hostnamectl修改主机名并重启kubelet:

复制代码
hostnamectl set-hostname txbj-164020-prod-tb-kubelet
systemctl restart kubelet

最后恢复正常

但是不知道为什么在控制台重启后主机名为什么会变,总之把我搞紧张了。

相关推荐
蘋天纬地30 分钟前
k8s的控制平面是什么,有什么作用
容器·kubernetes
无级程序员2 小时前
clklog地域分析中的地名中英文对照问题解决
kubernetes
加加and减减5 小时前
Docker真实安装mysql8教程并优化配置
运维·mysql·docker·容器
qiuziqiqi7 小时前
ocker-compose.yml 和Dockerfile 区别
运维·docker·容器
杰克逊的日记7 小时前
如何在不影响业务的情况下对K8S集群升级
云原生·容器·kubernetes
逻极8 小时前
Kubernetes 从入门到精通:云原生容器编排
kubernetes·k8s·服务发现·容器编排
nvd119 小时前
Terraform 避坑:模块下线时,如何不破坏已有的 Instance Template?
云原生·terraform
极客先躯9 小时前
高级java每日一道面试题-2026年02月03日-实战篇[Docker]-如何备份和恢复 Docker Volume?
运维·docker·容器·自动化·备份·持久化·恢复
江湖有缘9 小时前
自建私有任务管理平台|Docker Compose部署Ticky完整教程
运维·docker·容器
子牙老师9 小时前
你管这破玩意叫ChatGPT?
云原生·chatgpt·容器