我在同一网络中有两个 OpenSUSE Micro Leap 5.5 VM,分别称为 m0.k8b.intranet.domain 和 m1.k8b.intranet.domain。两者都是干净的预配置图像https://get.opensuse.org/leapmicro/5.5/。
两个虚拟机都安装了containerd、kubeadm、kubelet,但kubectl仅在m0中,如https://kubernetes.io/docs/setup/product-environment/tools/kubeadm/install-kubeadm/和https://blog.kubesimplify.com/how-to-install-a-kubernetes-cluster-with-kubeadm-containerd-and-cilium-a-hands-on-guide。
一般来说https://blog.kubesimplify.com/how-to-install-a-kubernetes-cluster-with-kubeadm-containerd-and-cilium-a-hands-on-guide随后 m0 为主,m1 为从,但是 m0 何时加入 m1 集群时出现以下错误:
error execution phase preflight: couldn't validate the identity of the API Server: could not find a JWS signature in the cluster-info ConfigMap for token ID "a4rvza"
答案1
厚脸皮后https://stackoverflow.com/questions/68387634/the-cluster-info-configmap-does-not-yet-contain-a-jws-signature-for-token-id-cj和https://serverfault.com/questions/728727/kubernetes-stuck-on-containercreating结果是创建 ...-controller-manager-... pod 失败,因为尝试在 /usr/libexec 中创建一个文件,该文件只能由发行版的不可变特性读取。