解决Kubeadm搭建Kubernetes 重启后 kubelet启动失败的问题

之前我用kubeadm搭建了 一个master 一个node 的Kubernetes集群 ,后来有次我把这两个虚拟机重启了

我先启动master节点所在的虚拟机
重启之后
docker 先启动 (node节点所在的虚拟机 也一样 也要先启动 docker)

systemctl start docker

检验一下 docker是否启动

docker ps

docker启动后执行

systemctl start kubelet

然后再执行

kubectl get nodes 

结果失败了
在这里插入图片描述
出现了错误:The connection to the server x.x.x.x:6443 was refused - did you specify the right host or port?
输入 systemctl status kubelet 命令查看kubelet的情况,发现kubelet没有启动。
解决Kubeadm搭建Kubernetes 重启后 kubelet启动失败的问题_第1张图片

解决:
需要关闭交换内存

swapoff -a

可能有人纳闷了,我不是安装的时候就已经关闭了吗
因为没有注释掉swap的自动挂载,机器重启后,swap还是会自动启用,从而导致kubelet无法启动。

设置swap开机不启动
修改/etc/fstab文件

vim /etc/fstab

解决Kubeadm搭建Kubernetes 重启后 kubelet启动失败的问题_第2张图片

free -m
若swap那一行输出为0,则说明已经关闭。
在这里插入图片描述
出现其他问题
若启动kubelet后 执行kubectl get nodes
发现 master节点 NotReady
在这里插入图片描述

可以再执行一遍:

	mkdir -p $HOME/.kube
  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  sudo chown $(id -u):$(id -g) $HOME/.kube/config

解决Kubeadm搭建Kubernetes 重启后 kubelet启动失败的问题_第3张图片
亲测有效…

有问题的地方欢迎指出,欢迎大家一起讨论

你可能感兴趣的:(Kubernetes)