码迷,mamicode.com
首页 > 其他好文 > 详细

centos7下安装docker(9.3容器对资源的使用限制-Block IO))

时间:2017-10-25 16:36:37      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:blog   dock   dev   为什么   资源分配   安装docker   出现   全局   src   

Block IO:指的是磁盘的读写,docker 可以通过设置权重,限制bpsiops的方式控制容器读写磁盘的带宽

注:目前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 是根据权重来限制,而这种权重是体现在资源紧张的情况下的,在本实验中,资源非常够用,所以会出现以上结果

 

我们来看一下正常情况下的试验结果

技术分享

在这个试验中,是没有对容器加限制的,可以看到他的写入大小速度非常高

 

centos7下安装docker(9.3容器对资源的使用限制-Block IO))

标签:blog   dock   dev   为什么   资源分配   安装docker   出现   全局   src   

原文地址:http://www.cnblogs.com/lkun/p/7729363.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!