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

最后恢复正常

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

相关推荐
yewq-cn11 分钟前
自动更新 Docker 镜像
运维·docker·容器
我还为发觉1 小时前
Docker在系统运维中的应用与实现原理
运维·docker·容器
特立独行的猫a2 小时前
使用Docker/Docker Compose方式安装部署PostgreSQL指南
docker·postgresql·容器
深盾科技3 小时前
Docker 常用命令速查表
运维·docker·容器
H²D3 小时前
真!docker离线部署GLPI资产管理系统
docker·容器·webview
柠檬汁Dev3 小时前
如何用云原生开发,把新项目启动从1天缩短到3分钟
云原生
南山nash3 小时前
docker存储卷详解
运维·docker·容器
幺零九零零3 小时前
Docker底层-Cgroup
运维·docker·容器
卜锦元3 小时前
Golang后端性能优化手册(第四章:异步处理与消息队列)
开发语言·后端·docker·容器·性能优化·golang·团队开发
汪碧康3 小时前
【k8s-1.34.2安装部署】二.kubernets软件、证书、配置、脚本等文件准备
云原生·容器·kubernetes·xkube·k8s管理平台·k8s安装部署·k8s dashboard