AnyShare-AnyShare 7 节点状态 NotReady,kubelet服务提示:node "localhost.localdomain" not found
关键字
NotReady、hostname、localhost.localdomain
适用产品
- AnyShare Enterprise 7.0.x
- AnyShare Express 7.0.x
问题描述
执行 kubectl get node 命令查看集群的所有 node 节点,显示有一个节点状态为 NotReady 。

查看此节点的 kubelet 服务,提示以下错误信息:
node "localhost:localhomain" not found

问题影响
节点状态为 NotReady,会导致在此节点上的所有 pod 异常。
问题原因
集群添加此节点时,使用的 hostname 命令修改的节点名称,未修改此节点的 Static hostname。
解决方案
为了解决该问题,需要将节点的 Static hostname 修改为正确的节点名称,请按照以下步骤执行:
1.通过命令 hostnamectl,查看此节点的 Static hostname 和Transient hostname;
hostnamectl

2.使用命令修改 Static hostname 为正确的节点名称;
hostnamectl --static set-hostname node-100-56

注意:此处以正确的节点名称为 node-100-56 为例。
3.重启此节点的 kubelet 服务,可以看出,之前提示的异常信息已消失;
systemctl restart kubelet

4.查看所有节点状态。
kubectl get node

更多信息
在 CentOS 系统中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(pretty)。“静态”主机名也称为内核主机名,是系统在启动时从 /etc/hostname 自动初始化的主机名。