使用 cgroups 限制 IO 使用
Restrict IO usage using cgroups
我正在尝试使用 cgroups 限制 Io 在我的服务器上的使用。
这是我的分区table信息:
major minor #blocks name
8 0 10485760 sda
8 1 9437184 sda1
8 2 1047552 sda2
这是我的文件系统结构:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 8.9G 8.4G 37M 100% /
none 1004M 0 1004M 0% /dev/shm
当我尝试执行以下命令时:
echo "8:1 10485760" >
/cgroup/blkio/test2/blkio.throttle.write_bps_device
我得到的输出为:
-bash: echo: write error: No such device
这是我的 cgroups 配置:
mount {
blkio = /cgroup/blkio;
}
group test2 {
blkio {
blkio.throttle.write_iops_device="";
blkio.throttle.read_iops_device="";
blkio.throttle.write_bps_device="";
blkio.throttle.read_bps_device="";
blkio.weight="";
blkio.weight_device="";
}
}
为什么我不能限制 /dev/sda1 IO 使用?
设置blkio时需要使用物理设备。对整个磁盘 (8:0) 使用 major:minor。
我正在尝试使用 cgroups 限制 Io 在我的服务器上的使用。
这是我的分区table信息:
major minor #blocks name
8 0 10485760 sda
8 1 9437184 sda1
8 2 1047552 sda2
这是我的文件系统结构:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 8.9G 8.4G 37M 100% /
none 1004M 0 1004M 0% /dev/shm
当我尝试执行以下命令时:
echo "8:1 10485760" > /cgroup/blkio/test2/blkio.throttle.write_bps_device
我得到的输出为:
-bash: echo: write error: No such device
这是我的 cgroups 配置:
mount {
blkio = /cgroup/blkio;
}
group test2 {
blkio {
blkio.throttle.write_iops_device="";
blkio.throttle.read_iops_device="";
blkio.throttle.write_bps_device="";
blkio.throttle.read_bps_device="";
blkio.weight="";
blkio.weight_device="";
}
}
为什么我不能限制 /dev/sda1 IO 使用?
设置blkio时需要使用物理设备。对整个磁盘 (8:0) 使用 major:minor。