kubelet启动失败的解决方案
原因之一:
是kubelet cgroup驱动程序“ cgroupfs”与docker cgroup驱动程序不同
公司的k8s,新增了一个节点,但kubelet启动一直报错,无法启动,网上找了半天,发现是kubelet cgroup驱动程序“ cgroupfs”与docker cgroup驱动程序不同,所导致,原因不详。
cgroups 的全称是 Linux Control Groups,主要作用是限制、记录和隔离进程组(process groups)使用的物理资源(cpu、memory、IO 等)。
systemd是系统自带的cgroup管理器, 系统初始化就存在的, 和cgroups联系紧密,为每一个进程分配cgroups, 用它管理就行了. 如果设置成cgroupfs就存在2个cgroup控制管理器, 实验证明在资源有压力的情况下,会存在不稳定的情况。
一、查看docker cgroup驱动
[root@shrs-35 ~]# docker info|grep Driver Storage Driver: overlay2 Logging Driver: json-file Cgroup Driver: systemd
二、查看kubelet cgroup驱动
[root@shrs-35 ~]# systemctl show --property=Environment kubelet | cat Environment=KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml
发现确实是俩个cgroup驱动程序不一致导致的
三、解决办法
3.1 修改docker的Cgroup Driver
修改/etc/docker/daemon.json文件
{
"exec-opts": ["native.cgroupdriver=systemd"]
}重启docker
systemctl daemon-reload systemctl restart docker
3.2 修改kubelet的Cgroup Driver
修改/etc/systemd/system/kubelet.service.d/10-kubeadm.conf文件,增加–cgroup-driver=systemd (官方推荐用systemd)
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --cgroup-driver=systemd"
重启kubelet
systemctl daemon-reload systemctl restart kubelet
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
浅析k8s中各组件和kube apiserver通信时的认证和鉴权问题
这篇文章主要介绍了k8s中各组件和kube apiserver通信时的认证和鉴权,本文使用的k8s集群是用kubekey搭建,命令是./kk create cluster --with-kubernetes v1.21.5 --with-kubesphere v3.2.1,需要的朋友可以参考下2022-06-06
Kubernetes中crictl的详细用法教程与应用实战记录
crictl作为Kubernetes的容器运行时接口(CRI)的命令行工具,为Kubernetes的调试和管理提供了强大的支持,通过本文的详细介绍,你应该已经掌握了crictl的基本安装、配置、常用命令以及高级用法,需要的朋友可以参考下2024-07-07
k8s:pod has unbound PersistentVolumeClaims问题及
部署redis-ha时,Pod因PVC未绑定报错,原因在于value.yaml中storageClassName为空,且未启用DefaultDefaultStorageClass,解决方法是手动指定PVC的StorageClassName为现有存储类,确保PV分配成功2025-07-07
kubernetes之statefulset搭建MySQL集群
这篇文章主要为大家介绍了kubernetes之statefulset搭建MySQL集群示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-04-04
Google Kubernetes Engine 集群实战详解
这篇文章主要为大家介绍了Google Kubernetes Engine 集群实战详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-08-08


最新评论