dd 或 cat – 读取 /dev/zero 时过载

dd 或 cat – 读取 /dev/zero 时过载

我需要回收精简磁盘,所以我尝试在 vhdd 上填充零。但是当我运行它时,服务器超载了 20k IOPS 和满饱和的 SAN 网络。你能帮我如何降低黑白速度吗?例如 10MB/s

尝试过这个:

ionice -c 3 dd if=/dev/zero of=/www/zeroes bs=4096 && rm -f /www/zeroes

ionice -c 3 cat /dev/zero > zero.fill;同步;

运行后服务器负载超过 90

答案1

如果你的服务器正在使用cgroups我现在怀疑的东西,你可以这样做

    echo "x:y  10485760" > /sys/fs/cgroup/blkio/blkio.throttle.write_bps_device

...x您的设备的主编号和y次编号分别是什么。请查看dev适用于您设备的编号。

我的示例将把写入速度限制到大约 10 MB/s。

相关内容