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


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

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

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

  • 相关阅读:
    组合数取模 Lucas定理
    关于上下界的二分查找
    POJ 1091 跳蚤
    Eular 函数模板
    POJ 数学(3)
    SRM 567 div2
    SRM 570 div2
    最大最小搜索,alpha beta 剪枝
    JavaScript:prototype属性使用方法
    ArcGIS网络分析之Silverlight客户端服务区分析(五)
  • 原文地址:https://www.cnblogs.com/lkun/p/7729363.html
Copyright © 2020-2023  润新知