k8s之认证文件失效,导致kubelet无法正常启动
如:你将master节点设置为可以调度,将配置文件重新生成后,master节点会恢复到原来的不可调度的情况,当你的k8s集群只要一个master节点,那么pod将没有机器可以调度。要慎重,因为这样做会将原有集群生成的资源信息重置掉。(目前按照这种方法做了,kubelet可以起来,集群正常。配置文件生成完后,会将原有的pod,svc,ns等资源去除,配置的一些内容也很更新,需要确认。首先集群状态无法
·
k8s之认证文件丢失
首先集群状态无法查看,检查了防火墙,selinux是否关闭。随后检查sawp是否禁用。
关闭swap
swapoff -a
都不是以上问题。查看kubulet进程,发现kubelet有报错。
报错信息
systemctl status kubelet
failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory
显示目前无法启动kubelet进程。
解决方法:重新生成证书
- 备份并重新生成证书
cd /etc/kubernetes/pki/
mkdir backup
mv apiserver.crt apiserver-etcd-client.key apiserver-kubelet-client.crt front-proxy-ca.crt front-proxy-client.crt front-proxy-client.key front-proxy-ca.key apiserver-kubelet-client.key apiserver.key apiserver-etcd-client.crt backup
kubeadm init phase certs all
- 备份并重新生成配置文件
cd /etc/kubernetes/
mkdir backup
mv admin.conf controller-manager.conf kubelet.conf scheduler.conf backup
kubeadm init phase kubeconfig all
配置文件生成完后,会将原有的pod,svc,ns等资源去除,配置的一些内容也很更新,需要确认。
如:你将master节点设置为可以调度,将配置文件重新生成后,master节点会恢复到原来的不可调度的情况,当你的k8s集群只要一个master节点,那么pod将没有机器可以调度。
pod会一直处于pending的状态,这时describe查看pod信息。
要慎重,因为这样做会将原有集群生成的资源信息重置掉。(目前按照这种方法做了,kubelet可以起来,集群正常。)
没有办法重试其他方式。
更多推荐
已为社区贡献7条内容
所有评论(0)