我有一些戴尔PowerEdge 2950的4x 15k,150GB Cheetah SAS硬盘。 他们将成为VM主机,运行带有Windows Server 2k8客户端的ESXi的CentOS。 一些客人将托pipeIIS服务器和其他MSSQL服务器。
我正在尝试设置RAID虚拟磁盘设置,因此无法确定哪个更适合这种情况。
Read Policy: Out of Read-Ahead, No-Read-Ahead and Adaptive Read-Ahead, the default is Read-Ahead.
我将首先进行大量顺序写入操作,为虚拟机硬盘写入空白映像(例如,比如从/ dev / zero开始的30GB),所以预读看起来似乎很好。 但是在虚拟机器中,读取文件系统中的任何地方都可以是随机的,因为它们是IIS和MSSQL服务器,所以也许没有预读是一个更好的主意?
现在我认为Adaptive Read-Ahead会比妥协更好,但是我不太了解这个选项,它在性能上与其他的比较如何?
Write Policy: write-back caching, write-through caching, the default is write-back caching.
回写caching的默认值比直写caching更安全,但是性能方面的费用较高。 我的想法是,在发生电力损失的情况下,似乎更有可能在我的脑海中(这就是为什么我需要一些解释!)启用回写caching的访客虚拟机会发生损坏,所以我应该支持直写?
我已经四处搜寻,显然没有明确的答案,所以我想找出什么是最适合我的情况。
首先,pipe理程序有时被称为“IO搅拌器”。 它们使任何algorithm都很难预测接下来要做的事情,因为它们不会让每个虚拟机拥有自己的真实SCSI磁盘。 正因为如此,你绝对不想直接向前看。 我不知道你的系统认为适应性预读是什么,但是如果这是一个能够检测到顺序读取完成并保守地读取一点的设置,那可能就没有问题了。
其次,如果可能的话,你总是需要回写caching。 只要它们被保存到高速caching,然后立即将它们降级到磁盘,就会立即进行写操作。 但是,如果您的caching失效,这并不安全。 电池备份caching是回写式caching的要求,如果您希望在停电时恢复一致的数据。