Kubernetes cgroup driver misconfiguration

Solution 1:

I had the same problems. You need to ensure that Docker and Kubelet run with same cgroup driver.

In Centos Docker runs in cgroupfs while kubelet runs in systemd cgroup. In order to change this you need to follow Kubelet documentation: https://kubernetes.io/docs/setup/independent/install-kubeadm/#configure-cgroup-driver-used-by-kubelet-on-master-node

To fix this you need:

sed -i "s/cgroup-driver=systemd/cgroup-driver=cgroupfs/g" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf

Then restart kubelet

systemctl daemon-reload
systemctl restart kubelet

Solution 2:

Modify the file /etc/sysconfig/kubelet with your cgroup-driver value, like so:

KUBELET_EXTRA_ARGS=--cgroup-driver=<value>

To get your Docker Cgroup driver:

docker info | grep -i 'cgroup driver'

Then reload systemd daemon and restart kubelet:

systemctl daemon-reload
systemctl restart kubelet