在paas环境上使用docker加载镜像的时候出现了如下问题

第一反应应该是存储镜像的路径磁盘满了

docker info查看docker的根路径,可以看到为/opt/docker:

查看/opt/docker的磁盘占用率:

从上述可知docker的磁盘并没有占用满,怀疑是inode占用满导致的,查看/opt的inode占用率,发现inode用尽

删除/opt占用过多的文件或目录即可,本问题是因为程序错误,导致在pod的kubernetes.io~secret下面创建了195w多个空目录,导致inode被占用完

注:

使用ls -lR DIR_NAME | grep "^-"|wc -l可以查看目录DIR_NAME中的文件数

使用ls -lR DIR_NAME | grep "^d"|wc -l可以查看目录DIR_NAME中的目录数

在docker中有一个重要的存储器,以centos系统为例,使用docker info可以看到docker的存储系统类型为devicemapper,docker使用thinpool特性来存储容器镜像。

也可以通过/etc/docker/daemon.json查看docker的存储设备:

可以在/dev/mapper中查看挂载的实际设备

/var/lib/docker/devicemapper/metadata/包含了devicemapper本身配置以及镜像和容器层相关的信息,格式为json。

/var/lib/devicemapper/mnt/包含了容器和镜像挂载的点(可以使用lsblk查看),镜像挂载点为空,容器则包含了容器中的文件系统

使用lvs -a可以查看当前存储设备的使用情况:

使用lsblk可以查看当前设备的使用情况(可以使用vgdisplay --verbose来查看vg对应的lv设备):

参考:

https://blog.csdn.net/chengm8/article/details/49890261

https://docs.docker.com/storage/storagedriver/device-mapper-driver/#image-and-container-layers-on-disk

docker “no space left on device”问题定位解决的更多相关文章

  1. boot2docker里报"no space left on device" error的解决方法

    docker中pull远程image时:报 no space left on device virtualbox中调大虚拟内存即可.. 之前调的硬盘大小...

  2. gzip: stdout: No space left on device问题的解决

    一.问题描述 最近安装了ubuntu14.04,并在ubuntu14.04中编译了一次内核.这之后大部分情况下用sudo apt-get install 安装应用都会出现“gzip: stdout: ...

  3. linux服务器报No space left on device错误的解决过程记录

    起因 今天在本地提交了点代码,但到服务器上git pull的时候提示No space left on device,第一反应是猜想可能硬盘满了(很有可能是log导致的),不过想想又觉得不太可能,这台服 ...

  4. linux "No space left on device" 磁盘空间解决办法

    某年某月某日某时,某人在工作中设置crontab定时任务规则保存时,提示“No space left on device”,此时用df -h检查磁盘,发现还有剩余空间.请问是什么原因及如何排查?什么会 ...

  5. 记一次关于NVROM中遇到的“Could not prepare Boot variable:No space left on device”问题的解决历程

    注:关于我电脑遇到的问题,不是一两句话能够说清楚的.为了能够比较完整的呈现问题的某些细节,在这篇博客中我会添加许多问题发生的背景,如果当中有观点与您的三观不合,请立即停止阅读,及时止损. 注:此篇文章 ...

  6. Linux下Apache重启遇到No space left on device错误的解决方法

      解决办法:1.输入:ipcs -s 看有没有超过5个,如果有请执行下面2的命令:2.ipcs -s | perl -ane '/^0x00000000/ && `ipcrm -s ...

  7. inode占满导致No space left on device inode快速解决方法

    暂未发现其他比我这个更快的方法. 因为其他方法会展示那个非常卡的目录,导致效率极低.而我这个方法不会去展示那个目录. 查找占用的目录 find / -type d -size +1M -maxdept ...

  8. 修改 docker image 安装目录 (解决加载大image时报错:"no space left on device")

    修改 docker image 安装目录 (解决加载大image时报错:"no space left on device" ) 基于Ubuntu16.04 docker版本: 17 ...

  9. Docker cgroup.procs no space left on device

    环境:centos6 运行docker 时 错误提示: System error: write /sys/fs/cgroup/docker/01f5670fbee1f6687f58f3a943b1e1 ...

随机推荐

  1. (欧拉公式 很水) Coprimes -- sgu -- 1002

    链接: http://vj.acmclub.cn/contest/view.action?cid=168#problem/B Coprimes 时限:250MS     内存:4096KB     6 ...

  2. Asp.net mvc验证用户登录之Forms实现

    这里我们采用asp.net mvc 自带的AuthorizeAttribute过滤器验证用户的身份,也可以使用自定义过滤器,步骤都是一样. 第一步:创建asp.net mvc项目, 在项目的App_S ...

  3. Java 连接 Memcached 服务

    原文:http://www.runoob.com/memcached/java-memcached.html mac下安装和配置Memcached:http://www.pchou.info/open ...

  4. 关闭父类弹出的ifream窗口

    parent.document.getElementById('zhuce').style.display = 'none';

  5. Alwayson--使用证书创建高可用性组

    --场景: --有服务器SQLNode11,SQLNODE21,SQLNODE31三台在同一故障转移群集SQLNode01中 --的数据库服务器,安装SQL SERVER 2012 并配置启动alwa ...

  6. Backbone学习笔记 - View篇

    Backbone是一种Web端的MVC框架,这里纪录学习Model,View和Collection的笔记. 1 View initialize构造函数 Backbone.View 与jQuery库紧密 ...

  7. Flask基础-配置,路由

    一,配置文件 flask中的配置文件是一个flask.config.Config对象(继承字典),默认配置为: { 'DEBUG': get_debug_flag(default=False), 是否 ...

  8. 4、Orcal数据库dmp文件导入

    1.CMD命令导入备份数据库dmp文件: 以上一篇博客提到的gdnh用户,我们需要在cmd窗口执行如下命令: imp gdnh/admin123@orcl file=E:/createTable.dm ...

  9. SpringMVC 上传文件and过滤器

    SpringMVC提供了一个MultipartResolver接口用来实现文件上传,并使用Commons FileUpload技术实现了一个该接口的实现类CommonsMultipartResolve ...

  10. 使用request.js代理post失败的问题

    前面写过一篇使用request.js做代理的文章,可能眼睛敏锐的朋友已经看出在代理POST方法时和代理其它请求方式是有区别的, 现在我来说一下为什么要这么处理. 相信很多人都采用这种方式去代理POST ...