问题起因:
早上,干活时候
A同事:问我,为啥k8s调度过来的是正常的,就是起不来嘞;
(说明这个开发同学,还是知道k8s一些东西,不能装逼了)
小运维:回答说,我看一下哈;待会给您回复
(其实心里是如下图:)

既然人家是k8s中发现的问题,就肯定让人家“”保护现场”,把报错截图发错来哈
看不清吧,我也当是也这么说的,于是就有下面的截图:
放错了,其实解决速度太快,忘记记录错误日志了;先凑合看一下哈;
问题解决思路如下:
1.排查k8s的故障pod查看,然后kubelet调度组件查看kublet和docker日志
2.节点维护,进行kubectl drain node (记得跟开发打个招呼哈,虽然我只是通知)
3.其实,也是有参考链接,借鉴也要理智气壮,亲测操作如下
3.1 暂停节点调度 systemctl stop kubelet
3.2 清理容器服务内容
docker rm $(docker ps -q -f status=exited)
docker volume rm $(docker volume ls -qf dangling=true)
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
systemctl restart docker.service
PS:docker 默认/var/lib/docker/devicemapper/devicemapper/date文件大小为100g
3.3 调整方法如下:
vim /usr/lib/systemd/system/docker.service
docker启动参数增加ExecStart=/usr/bin/dockerd 后面增加 --storage-opt dm.loopdatasize=200G
systemctl daemon-reload
systemctl restart docker.service
没办法,我操作起来就是这么快速;
服务恢复也还是要写的:
赶走也要请回来:
systemctl start kubelet #pod管理组件
kubectl uncordon nodes #请回来
一波搞定,若有报错,不要慌,关注或私信哈