重启工作节点 docker 服务时缺少 Kubelet 配置 yaml

Kubelet config yaml is missing when restart work node docker service

当我重启work节点的docker服务时,master节点的kubelet日志报no such file错误

# in work node
# systemctl restart docker service

# in master node
# journalctl -u kubelet
# failed to load Kubelet config file /var/lib/kubelet/config.yaml, error failed to read kubelet config file "/var/lib/kubelet/config.yaml", error: open /var/lib/kubelet/config.yaml: no such file or directory

您可能已经完成 kubeadm reset 清理所有文件。

只需kubeadm reset --force重置节点,然后kubeadm init在master节点,然后kubeadm join在woker节点。

Arghya 是对的,但我想补充一些您应该知道的信息:

  1. 你可以执行kubeadm init phase kubelet-start只调用一个特定的步骤,写入kubelet配置文件和环境文件,然后启动kubelet。

  2. 执行重启后交换有可能重新启用。确保 运行 swapoff -a 以将其关闭。

  3. 如果您遇到任何令牌验证问题,而不是简单地 运行 kubeadm token create --print-join-command,然后使用提供的信息进行加入过程。请记住,默认情况下,令牌会在 24 小时后过期。

  4. 如果您想了解更多关于 kubeadm init phase 的信息,可以找到 here and here.

如果有帮助,请告诉我。