【问题描述1】
主节点上误删了/etc/kubernetes下的文件,当做kubeadm init的时候,找不到对应的key文件
invalid or incomplete external CA: failure loading key for apiserver: couldn't load the private key file /etc/kubernetes/pki/apiserver.key: open /etc/kubernetes/pki/apiserver.key: no such file or directory

【解决方案1】
删除“$HOME/.kube/config”文件并执行kubeadm reset命令方可解除
然后提示还有没有清除的,没关系,在执行kubeadm init

kubeadm init \
--apiserver-advertise-address=10.1.1.2 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.4 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16
执行结果如下
# kubeadm init \
> --apiserver-advertise-address=10.1.1.2 \
> --image-repository registry.aliyuncs.com/google_containers \
> --kubernetes-version v1.23.4 \
> --service-cidr=10.96.0.0/12 \
> --pod-network-cidr=10.244.0.0/16
[init] Using Kubernetes version: v1.23.4
[preflight] Running pre-flight checks
[preflight] Pulling images required for setting up a Kubernetes cluster
[preflight] This might take a minute or two, depending on the speed of your internet connection
[preflight] You can also perform this action in beforehand using 'kubeadm config images pull'
[certs] Using certificateDir folder "/etc/kubernetes/pki"
[certs] Generating "ca" certificate and key
[certs] Generating "apiserver" certificate and key
[certs] apiserver serving cert is signed for DNS names [host-10-19-83-151 kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.1.1.2]
[certs] Generating "apiserver-kubelet-client" certificate and key
[certs] Generating "front-proxy-ca" certificate and key
[certs] Generating "front-proxy-client" certificate and key
[certs] Generating "etcd/ca" certificate and key
[certs] Generating "etcd/server" certificate and key
[certs] etcd/server s

本文描述了在Kubernetes集群中误删关键文件后如何进行恢复,并详细记录了重新初始化控制平面以及加入工作节点的步骤。在修复过程中,执行了`kubeadm reset`、清空CNI配置、重启kubelet以及清理iptables规则等操作,最终成功加入新节点到集群。
最低0.47元/天 解锁文章
3029

被折叠的 条评论
为什么被折叠?



