centos7下安装docker(9.3容器对资源的使用限制-Block IO))
Block IO:指的是磁盘的读写,docker 可以通过设置权重,限制bps和iops的方式控制容器读写磁盘的带宽
注:目前block IO限额只对direct IO(不使用文件缓存)有效。
1.Block IO权重:--blkio-weight,这个--blkio-weight的权重值在 10~1000之间
和容器cpu的使用机制是一致的,所有容器都可以平等的读写磁盘,可以通过--blkio-weight参数来改变容器的优先级
--blkio-weight和-c类似,设置的都是资源使用的权重,都是在资源紧张的情况下才会起到权重的作用,正常情况下,都是平等的
--blkio-weight-device 针对特定的设备设置权重 例:docker run -d --blkio-weight-device /dev/sdb:30M httpd
如果同时设置了--blkio-weight和--blkio-weight-device,则以--blkio-weight为全局默认配置
--blkio-weight和--blkio-weight-device,由于是根据权重进行资源分配的,而这种权重有体现在资源紧缺的情况下,所以暂时不做试验
2.限制bps和iops
bps:byte per second ,每秒读写的数据量
iops:io per second ,每秒IO次数
可以通过以下参数来控制容器的bps 和iops:
--device-read-bps:限制读某个设备的bps(数据量) 例:docker run -d --device-read-bps /dev/sdb:30M httpd
--device-write-bps : 限制写入某个设备的bps(数据量) 例:docker run -d --device-write-bps dev/sdb:30M httpd
--device-read-iops :限制读某个设备的iops(次数) 例:docker run -d --device-read-iops /dev/sdb
--device-write-iops :限制写入某个设备的iops(次数)
做一个限制bps的写入的操作的试验:由于没有找到比较好的“读”相关的bps和iops 的测试,所以这种测试之后在实际工作环境下再酌情进行测试吧~
docker run -it--device-write-bsp /dev/sda:60M --name bsp3 centos
oflag=direct:指定使用direct IO方式写文件,这样--device-write-bps才会生效
在这个实验中,从结果来看是63M,但是我设置的是60M,按正常来说应该低于60M,但是为什么会高于60M呢?
根据我的分析来讲,是由于docker block IO 是根据权重来限制,而这种权重是体现在资源紧张的情况下的,在本实验中,资源非常够用,所以会出现以上结果
我们来看一下正常情况下的试验结果
在这个试验中,是没有对容器加限制的,可以看到他的写入大小速度非常高
最新文章
- SSM整合(三):Spring4与Mybatis3与SpringMVC整合
- windbg学习.formats--转换成各种进制
- 【ZOJ 1221】Risk
- 【iM_VGA模块】运行 ucgui 演示!
- c++11编码规范 NULL还是nullptr
- android开源项目---developer篇
- easyui中Tab的tools按钮刷新当前tab
- 关闭MyEclipse的Quick Update
- C语言基础学习基本数据类型-字符专属的输入输出函数
- html和html5学习
- 老司机教你下载tumblr上视频和图片的正确姿势
- H5个性三级联动日期插件(一)
- [技术]浅谈c++ this指针
- SAML2.0 协议初识(一)
- JavaWeb一小时急速入门总结反思
- mybatis if test 判断字符串的坑
- 牛客国庆集训派对Day2
- rabbitmq安装错误集
- requests库的post请求
- glide从入门到精通使用
热门文章
- 3分钟看完Java 8——史上最强Java 8新特性总结之第四篇 其他新特性
- FFmpeg数据结构AVPacket
- [算法]PHP随机合并数组并保持原排序
- R语言学习笔记(五)绘图(1)
- IdentityServer4 中文文档 -6- (简介)示例服务器和测试
- expressjs项目里使用npm run dev,实现热更新
- 禁用 Gnome Shell 默认的 Ubuntu Dock 和 Ubuntu AppIndicators 扩展
- 2018-01-11 Antlr4实现数学四则运算
- php向数据库插入数据
- 解决git did not exit cleanly (exit code 128)