k8s异常:failed to get container info for “/system.slice/docker.service

1.背景描述

查看k8s日志,执行

journalctl -f -u kubelet

2.异常信息:

failed to get container info for “/system.slice/docker.service

3.异常原因:

kubernetes和docker版本兼容性问题

4.解决方法

在10-kubeadm.conf文件中"KUBELET_CGROUP_ARGS"属性添加"--runtime-cgroups=/systemd/system.slice --kubelet-cgroups=/systemd/system.slice" ,如果不存在"KUBELET_CGROUP_ARGS"属性则新增。

10-kubeadm.conf的路径网上提到的多为:/etc/systemd/system/kubelet.service.d/10-kubeadm.conf,本人的机器路径为:/usr/lib/systemd/system/kubelet.service.d

具体操作命令如下

# vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_SYSTEM_PODS_ARGS=--pod-manifest-path=/etc/kubernetes/manifests --allow-privileged=true"
Environment="KUBELET_NETWORK_ARGS=--network-plugin=cni --cni-conf-dir=/etc/cni/net.d --cni-bin-dir=/opt/cni/bin"
Environment="KUBELET_DNS_ARGS=--cluster-dns=10.96.0.10 --cluster-domain=cluster.local"
Environment="KUBELET_AUTHZ_ARGS=--authorization-mode=Webhook --client-ca-file=/etc/kubernetes/pki/ca.crt"
Environment="KUBELET_CADVISOR_ARGS=--cadvisor-port=0"
Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd --runtime-cgroups=/systemd/system.slice --kubelet-cgroups=/systemd/system.slice"
Environment="KUBELET_CERTIFICATE_ARGS=--rotate-certificates=true --cert-dir=/var/lib/kubelet/pki"
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_SYSTEM_PODS_ARGS $KUBELET_NETWORK_ARGS $KUBELET_DNS_ARGS $KUBELET_AUTHZ_ARGS $KUBELET_CADVISOR_ARGS $KUBELET_CGROUP_ARGS $KUBELET_CERTIFICATE_ARGS $KUBELET_EXTRA_ARGS
# systemctl daemon-reload
# systemctl restart kubelet

参考文章:https://www.jianshu.com/p/5c2e15fa6733


版权声明:本文为tony_you原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。