我怎么能强制软RAID只能从一个磁盘读取?

我有相当大的IO等待显示在顶部。 我怀疑这是SDA驱动器(在RAIDarrays中的2个磁盘上)的故障,这在一个星期前被取代。 没有错误可见,聪明的什么也没有显示,但是SDB中的磁盘SDA总是比SDB忙得多。 SDA不重build,所以这不是问题。

这看起来不是写入问题,而是只读取。

我想强制RAID只读取一个磁盘,SDB,以检查它是否会工作得更好。 是否有可能迫使RAID从SDB只读,而仍然写入两者?

我在CentOS 6.0上使用软件Linux MD RAID。

虽然不能解决你的底层问题,但是mdadm命令有--write-mostly选项:

-W, --write-mostly
--build ,– --create--add命令中列出的后续设备将被标记为“主要写入”。 这仅适用于RAID1,这意味着'md'驱动程序将尽可能避免从这些设备读取数据。 如果通过慢速链接进行镜像,这可能很有用。

所以从你的数组中删除sda ,并添加该选项。

您可能想要实现RAIDarrays的部分原因是读取速度的提高。
使用只有一个磁盘读取,但写入两个,闻起来是错误的。

如果您的实际问题是由于在RAID设置中更换磁盘而导致阅读时间缩短,则可能需要对该磁盘进行故障排除而不是解决该问题。
这里有一些testing你的RAID设置的工具 。

只是为了给你一些额外的激励:
你只是注意到你的读取速度较慢,如果硬盘存在底层硬件问题呢?
您将部分绕过该磁盘,在这种情况下,您只有一个RAID用于冗余。
不过,我们刚刚说过,您的冗余驱动器是可能点亮的保险丝。
你的RAID设置仍然在服务的目的是什么?