linux – 让内核知道设备托管

前端之家收集整理的这篇文章主要介绍了linux – 让内核知道设备托管前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个服务器,配有一个大硬件RAID6阵列,配置有两个卷,由 Linux作为sda和sdb提供(是的,我知道,但这是一个以这种方式配置的租用colo,遗憾的是我不得不忍受它) .

我有一个使用sdb的I / O密集型进程.我使用了ionice -c3,因为我希望它的优先级低于其他任何东西.不幸的是,ionice并不知道这两个设备实际上共享相同阵列的带宽.当该进程繁忙时,内核会看到sdb是安静的,并为其提供所需的全部带宽.然而,这可能使sda非常慢,因为(据我所知),ionice可以在每个设备的基础上工作.

有没有办法让内核在所有设备上平衡磁盘I / O?

解决方法

你使用什么IO调度程序?

cat / sys / block /< disk> / queue / scheduler

它会告诉你你正在运行哪一个.我会尝试noop(这是先到先得,先发球),截止日期和CFQ,看看哪个适合你.

CFQ是RHEL / SUSE的默认设置,Ubuntu的最后期限和没有人的noop(但是应该让后端设备处理你的调度而不是Linux试图平衡它.

猜你在找的Linux相关文章