kubectl 日誌錯誤:您必須登入伺服器(伺服器已要求用戶端提供憑證

kubectl 日誌錯誤:您必須登入伺服器(伺服器已要求用戶端提供憑證

我的 k8s 版本 v1.17.13
我的憑證今天過期了,所以我 在所有主伺服器上運行
kubeadm alpha certs renew all
systemctl restart kubelet 。 我運行的所有 kubectl 命令都工作正常..例如 kubectl getnodes 、 kubectlscale 、kubectldescribe... 但是,運行 kubectllogs 會出現以下錯誤 : You必須登入伺服器(伺服器已要求提供客戶提供憑證




知道為什麼......我相信我的 ~/.kube/config 沒問題,因為我能夠執行其他 kubectl 命令。我刪除了 kube-apiserver 以強制重新啟動..但仍然是相同的問題..

請您幫我解決這個問題。謝謝,

答案1

環顧四周...我在我的工作節點上看到了這個
由於錯誤而無法驗證請求:x509:證書已過期或尚未有效

經過進一步故障排除...我的 3 個主機中只有 2 個導致了此錯誤
kubectl 日誌錯誤:您必須登入伺服器(伺服器已要求用戶端提供憑證

在檢查了大量資源之後,我確實找不到導致問題的原因,因此我決定一次重新啟動 2 個失敗的主伺服器中的每一個,這樣就解決了問題。我猜 kube-system 中的某些 Pod 需要重新啟動。

此外,我在所有工作節點上重新啟動了 kubelet,但不確定這是否有效。

請注意,在https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/#manual-certificate-renewal沒有提到重新啟動大師

最後一點..我不確定為什麼證書更新不那麼順利..在遇到本文中描述的kubectl日誌問題之前...我在我的第一個master上遇到了這個錯誤(“bootstrap-kubelet.conf確實不存在」問題,不允許kubelet 重新啟動),所以我必須遵循修復https://stackoverflow.com/questions/56320930/renew-kubernetes-pki-after-expired

相關內容