1.1 IOPS 控制(blkio)

Cgroup还可以限制设备的每秒最大 I/O 操作数 (IOPS)。


1)我将使用iostat测量设备的未设限 IOPS(iostatsysstat程序包的一部分),并将使用hdparm生成一些磁盘负载

2)每秒更新一次,汇总该驱动器的 IOPS数。运行hdparm命令(具体为hdparm --direct -t /dev/sda)并观察iostat的每秒事务值 (tps) 变化

a)调用系统命令 hdparm –direct –t /dev/sda

b)重新打开ssh session ,调用系统命令(iostat 1 -d /dev/sda ) 观察tps 值

1.Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 1421.00 1455104.00 0.00 1455104 0


2.Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 1531.00 1567744.00 0.00 1567744 0


3.Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 538.00 550912.00 0.00 550912 0

3)设置IOPS 值

a)cgset -r blkio.throttle.read_iops_device="8:050" ioctl-william

b)调用系统命令 hdparm –direct –t /dev/sda

c)调用系统命令(iostat 1 -d /dev/sda ) 观察tps 值

1.Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 15.00 15360.00 0.00 15360 0


2.Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 50.00 51200.00 0.00 51200 0


3.Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 50.00 51200.00 0.00 51200 0


4.Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

sda 37.00 37888.00 0.00 37888 0