在项目中准备进行数据库地址切换测试时,发现测试环境的某一台k8s节点状态为NotReady,通过命令发现存在报错。
systemctl status docker
kubectl describe nodes node1
排查思路
检查docker容器任务
通过命令发现docker无正在运行的容器任务
docker ps
通过命令发现docker存在很多运行失败的容器任务,超过2万以上。
docker ps -a
清理docker任务
通过命令删除docker所用运行的任务(时间可能漫长)
docker ps -a|awk 'NR>1 {print $1}'|xargs -i docker rm -f {}
如命令无法使用,可以尝试删除docker/containers/目录下所有目录。
文章来源于互联网:k8s集群中某一台节点docker报错error: write unix /var/run/docker.sock->@ write: broken pipe