前文
在折腾k8s的时候,我发现当k8s以docker启动的时候,系统会有以下报警:
[WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
意思是要我将docker和kubelet的启动方式从cgroupfs统一改为systemd。
正文
我查了以下资料,常用的方法如下:
- 修改docker配置
-
修改docker的配置文件
新建/etc/docker/daemon.json文件,添加以下内容。
{ "exec-opts": ["native.cgroupdriver=systemd"] }
-
重启docker服务
systemctl daemon-reload systemctl restart docker
- 修改kubelet配置
-
修改kubelet的配置文件
新建/etc/systemd/system/kubelet.service.d/10-kubeadm.conf文件,并添加以下内容。
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --cgroup-driver=cgroupfs"
-
重启kubelet
systemctl daemon-reload systemctl restart kubelet