文档简介:
可能原因
问题定位及解决思路
容器运行时使用的目录所在磁盘爆满
docker 默认使用的目录
Pod 启动过程事件
Warning FailedCreatePodSandBox 53m kubelet, 172.22.0.44 Failed create
pod sandbox: rpc error: code = DeadlineExceeded desc = context deadline exceeded
Warning FailedCreatePodSandBox 2m (x4307 over 16h) kubelet, 10.179.80.31
(combined from similar events): Failed create pod sandbox: rpc error: code
= Unknown desc = failed to create a sandbox for pod "apigateway-6dc48bf8b6-l8xrw":
Error response from daemon: mkdir /var/lib/docker/aufs/mnt/1f09d6c1c9f24e8daaea
5bf33a4230de7dbc758e3b22785e8ee21e3e3d921214-init: no space left on device
Warning Failed 5m1s (x3397 over 17h) kubelet, ip-10-0-151-35.
us-west-2.compute.internal (combined from similar events): Error:
container create failed: container_linux.go:336: starting container
process caused "process_linux.go:399: container init caused \"rootfs_linux.
go:58: mounting \\\"/sys\\\" to rootfs \\\"/var/lib/dockerd/storage/overlay
/051e985771cc69f3f699895a1dada9ef6483e912b46a99e004af7bb4852183eb/merged\\\"
at \\\"/var/lib/dockerd/storage/overlay/051e985771cc69f3f699895a1dada9ef6483
e912b46a99e004af7bb4852183eb/merged/sys\\\" caused \\\"no space left on device\\\"\""
Pod 删除过程事件
Normal Killing 39s (x735 over 15h) kubelet, 10.179.80.31 Killing
container with id docker://apigateway:Need to kill Pod
Kubelet 使用的目录所在磁盘爆满
kubelet 默认使用的目录
Pod 事件
Warning UnexpectedAdmissionError 44m kubelet, 172.22.0.44 Update
plugin resources failed due to failed to write checkpoint file
"kubelet_internal_checkpoint": write /var/lib/kubelet/device-plugins
/.728425055: no space left on device, which is unexpected.
处理步骤
$ cd /var/lib/docker/containers$ du -sh * # 找到比较大的目录$ cd dda02c9a7491fa797ab730c1568ba06cba74cecd4e4a82e9d90d00fa11de743c$ cat /dev/null > dda02c9a7491fa797ab730c1568ba
06cba74cecd4e4a82e9d90d00fa11de743c-json.log.9 # 删除log文件
kubectl drain <node-name>
systemctl restart dockerd# or systemctl restart docker
kubectl uncordon <node-name>