步骤一:启动一个容器
[host]#docker run -t -i centos:latest /bin/bash
在容器里运行:
[docker]#grep Dirty /proc/meminfo
Dirty: 168 kB
步骤二:在主机里创建大量的脏页
[host]#dd if=/dev/zero of=testfile bs=1048576 count=4096
在容器里运行:
[docker]#grep Dirty /proc/meminfo
Dirty: 4194460 kB #创造了大量的脏页
步骤三:
在容器里运行命令
[docker]#sync
此命令会阻塞一会,因为要回写脏页
[docker]#grep Dirty /proc/meminfo
Dirty: 40 kB
验证结果:sync是全局的行为。内核代码里sync会遍历superlock list,这个super block list是全局不是每个容器的
博客介绍了在Docker容器中的操作步骤。先启动容器并查看脏页情况,接着在主机创建大量脏页后再次查看容器脏页,最后在容器运行sync命令回写脏页并验证结果,表明sync是全局行为,会遍历全局的super block list。
171万+

被折叠的 条评论
为什么被折叠?



