kubernetes 使用kube-adm安装后,控制平面pod处于重启循环中

hwamh0ep  于 2023-06-21  发布在  Kubernetes
关注(0)|答案(1)|浏览(82)

我第一次尝试使用kube-adm安装k8s,如入门指南中所述
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/
kubeadm init
没有错误地完成,我可以使用kubectl命令查看闪亮的新集群,例如。
kubectl get pods --all-namespaces
给了我coredns,etcd,apiserver,controller-manager,kube-proxy,scheduler的pods。
但过了一分钟左右,一些吊舱被拆除并重新启动。特别是etcd和apiserver,所以kubectl从那时起只能间歇性地工作。

$kubectl get pods --all-namespaces

NAMESPACE     NAME                            READY   STATUS    RESTARTS        AGE
kube-system   coredns-787d4945fb-mptkz        1/1     Running   3 (4m50s ago)   11m

kube-system   coredns-787d4945fb-r248b        1/1     Running   4 (73s ago)     11m

kube-system   etcd-mango                      1/1     Running   18 (4m1s ago)   13m

kube-system   kube-apiserver-mango            0/1     Running   14 (12s ago)    13m

kube-system   kube-controller-manager-mango   1/1     Running   23 (38s ago)    13m

kube-system   kube-proxy-mlwc9                1/1     Running   14 (43s ago)    12m

kube-system   kube-scheduler-mango            1/1     Running   18 (74s ago)    13m

这里发生的一切对我来说很神秘。Pod的日志可以在这里找到:
https://github.com/kubernetes/kubernetes/issues/117293
但我认为这些并不特别有启发性。
我不知道接下来该怎么办。有什么建议如何调试它吗?

s8vozzvw

s8vozzvw1#

我遇到了同样的问题,结果是containerd配置错误。未应用SystemdCgroup设置。您可以通过运行以下命令来检查:

containerd config dump | grep SystemdCgroup

由于您使用的是systemd(和我一样),因此需要将其设置为true。然而,按照Kubernetes容器运行时安装文档中描述的设置配置文件似乎没有正确设置该值。
我所缺少的是,我需要首先生成一个基线配置:

containerd config default > /etc/containerd/config.toml

然后编辑该文件中的SystemdCgroup设置。
这样做之后,你描述的问题就不再发生了。

相关问题