NotReady state, causing etcd to lose quorum. Containers on the affected node are in an exited state, and few pods are in a terminating state.Cluster test is unhealthy:Get "http://localhost:1080/external-cert/<supervior clone plane ip>/6443/version?timeout=2m0s": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
kubectl get nodes shows belowroot@### [ ~ ]# kubectl get nodesNAME STATUS ROLES AGE VERSION<node-1> Ready control-plane,master 571d v1.25.6+vmware.wcp.2<node-2> NotReady control-plane,master 571d v1.25.6+vmware.wcp.2<node-3> Ready control-plane,master 571d v1.25.6+vmware.wcp.2
kubelet log using command "journalctl -xeu kubelet">kubelet[34395]: E0528 hh:mm:ss.ss 34395 server.go:425] "Client rotation is on, will bootstrap in background">kubelet[34395]: E0528 hh:mm:ss.ss 34395 bootstrap.go:265] "Client rotation is on, will bootstrap in background">kubelet[34395]: E0528 hh:mm:ss.ss 34395 run.go:74] "command failed" err="FAILED_TO_RUN_KUBELET: unable to load bootstrap kubeconfig: stat /etc/kubernetes/kubelet.conf: no such file or directory"
The node is NotReady because the kubelet service failed to start due to an expired certificate in /etc/kubernetes/kubelet.conf. This prevents the kubelet from connecting to the API server, causing containers to exit, pods to terminate, and etcd to lose quorum since only two of the three nodes are operational.
openssl x509 -in /var/lib/kubelet/pki/kubelet-client-current.pem -text -noout/etc/kubernetes/kubelet.confclient-certificate-data" to "client-certificate" and "client-key-data" to "client-key"client-certificate and client-key points to a valid certificate path at /var/lib/kubelet/pki/kubelet-client-current.pem instead of certificate content in double encoded format.client-certificate-data: #.....<Certificate-content in double encoded format>client-key-data: #....<Certificate-content in double encoded format>apiVersion: v1clusters:- cluster: certificate-authority-data: [REDACTED] server: https://xx.xxx.xxx.xxx:6443 name: <cluster name>contexts:- context: cluster: <cluster name> user: system:node:<cluster name>-controlplane-xxxxx name: system:node:<cluster name>-controlplane-xxxxx@<cluster name>current-context: system:node:<cluster name>-controlplane-xxxxx@<cluster name>kind: Configpreferences: {}users:- name: system:node:<cluster name>-controlplane-xxxxx user: client-certificate: /var/lib/kubelet/pki/kubelet-client-current.pem client-key: /var/lib/kubelet/pki/kubelet-client-current.pem
systemctl restart kubelet.service
systemctl status kubelet.servicekubectl get pods -A -o widecrictl ps -akubectl get nodes -o wide