首页 > 解决方案 > kubelet 说找不到节点“master01”

问题描述

我尝试将我的kubeadm集群与三个master 堆叠起来。我从我的init命令收到这个问题......

[kubelet-check] Initial timeout of 40s passed.

Unfortunately, an error has occurred:
    timed out waiting for the condition

This error is likely caused by:
    - The kubelet is not running
    - The kubelet is unhealthy due to a misconfiguration of the node in some way (required cgroups disabled)

If you are on a systemd-powered system, you can try to troubleshoot the error with the following commands:
    - 'systemctl status kubelet'
    - 'journalctl -xeu kubelet'

Additionally, a control plane component may have crashed or exited when started by the container runtime.
To troubleshoot, list all containers using your preferred container runtimes CLI, e.g. docker.
Here is one example how you may list all Kubernetes containers running in docker:
    - 'docker ps -a | grep kube | grep -v pause'
    Once you have found the failing container, you can inspect its logs with:
    - 'docker logs CONTAINERID'
error execution phase wait-control-plane: couldn't initialize a Kubernetes cluster

但是我没有使用 cgroupfs 而是systemd 我的 kubelet 抱怨不知道他的节点名。

Jan 23 14:54:12 master01 kubelet[5620]: E0123 14:54:12.251885    5620 kubelet.go:2266] node "master01" not found
Jan 23 14:54:12 master01 kubelet[5620]: E0123 14:54:12.352932    5620 kubelet.go:2266] node "master01" not found
Jan 23 14:54:12 master01 kubelet[5620]: E0123 14:54:12.453895    5620 kubelet.go:2266] node "master01" not found

请让我知道问题出在哪里。

标签: kuberneteskubeadmkubelet

解决方案


问题可能是由于 docker 版本,因为最新的 kubernetes 版本(即 v1.13.xx)支持 docker 版本 < 18.6。

实际上我也遇到了同样的问题,但是在将 docker 版本从 18.9 降级到 18.6 后它得到了解决。


推荐阅读