ZFSは、zpoolに対してはcgroupが効かない
ZFSでIOPS limitを利用するには、ZVOLで利用する必要があります。
ZPOOLのディスクに制限をかけても効かない
# zpool status pool: pool01 state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM pool01 ONLINE 0 0 0 rbd1 ONLINE 0 0 0 # lsblk | grep rbd1 rbd1 251:16 0 2T 0 disk cgcreate -g blkio:/DiskIO_Group cgset -r blkio.throttle.write_iops_device="251:16 10" DiskIO_Group # dd if=/dev/zero of=BBB bs=512 count=100 oflag=direct 100+0 records in 100+0 records out 51200 bytes (51 kB) copied, 0.000876598 s, 58.4 MB/s
zfs create -V 20G pool01/zvol01 mkfs.xfs /dev/zvol/pool01/zvol01 mount /dev/zvol/pool01/zvol01 /mnt/ # lsblk| grep zd zd0 230:0 0 10G 0 disk /mnt cgset -r blkio.throttle.write_iops_device="230:0 10" DiskIO_Group # dd if=/dev/zero of=BBB bs=512 count=100 oflag=direct 100+0 records in 100+0 records out 51200 bytes (51 kB) copied, 10.0009 s, 5.1 kB/s cgset -r blkio.throttle.write_iops_device="230:0 100" DiskIO_Group # dd if=/dev/zero of=BBB bs=512 count=1000 oflag=direct 1000+0 records in 1000+0 records out 512000 bytes (512 kB) copied, 9.91114 s, 51.7 kB/s