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

最后恢复正常

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

相关推荐
IT大白鼠1 小时前
Istio 结合 K8s 实现流量管理:服务网格灰度、熔断、限流实战
云原生·kubernetes·istio
鹤落晴春2 小时前
【K8s】认识Kubernetes API:从CRD出发的一次梳理
云原生·容器·kubernetes
yanwumuxi3 小时前
Docker记录:误删宿主机挂载目录导致 PostgreSQL 数据丢失
docker·postgresql·容器
cui_hao_nan5 小时前
Docker 学习 5
docker·容器
A黄俊辉A5 小时前
两分钟上手docker
运维·docker·容器
努力努力再努力wz8 小时前
【Docker入门系列】:从架构演进到容器化:一文建立 Docker、虚拟化与 Namespace 的底层心智模型
运维·开发语言·数据结构·c++·docker·容器·架构
吴佳浩 Alben8 小时前
多智能体系统的通信风暴与死锁治理:生产级降级与容灾方案
人工智能·docker·ai·容器·架构
玉&心9 小时前
在dockers desktop上面部署k8s的前端和后端
云原生·容器·kubernetes
wdfk_prog9 小时前
Docker 29 与 containerd image store:镜像为什么会保存两种形态
运维·docker·容器
MC丶科9 小时前
软考架构师90天冲刺|DAY38·第二阶段综合测试-分布式与云原生
分布式·云原生·架构·serverless·service_mesh·软考架构师