断电后,集群无法启动。3 个工作程序 + 2 个控制平面。使用 kubeadm 安装。版本 1.27.1 containerd 1.6.22 Ubuntu 22.04.3 LTS 它已经运行良好一年多了,最后一次 kube* 升级是在 2-3 个月前。
containerd 启动。Kubelet 启动,但没有任何 pod 启动,包括 etcd 和 kube-apiserver。因此 kubelet 不会执行 /etc/kubernetes/manifests/.yaml 我使用 crictl 验证了这一点。etcd 和 kubepod 的日期是 5 周前,上次我重启了服务器。它们的日志指的是它们运行的最后一天。两个控制平面具有相同的行为,这非常可疑。我在 kubelet、containerd、pod 中激活了调试模式和详细程度……什么都不清楚。
我认为这与网络和名称解析有关,因为我读到 Ubuntu 上的 kubernetes 可能会出现 resolv.conf 问题。但我验证了 /var/lib/kubelet/config.yaml 指向正确的 resolv.conf。resolvConf:/run/systemd/resolve/resolv.conf
证书很好。
在 /run/containerd/ 中没有 io.containerd.grpc.v1.cri、runc 或 s 目录。
我检查了所有日志,但我不知道该怎么做。有什么想法吗?