用于虚拟机的RAID1或RAID10?

我即将重新安装一个2950,将一些虚拟机整合到单个ESXi服务器上。 服务器如下

  • 戴尔2950
  • 2个Intel X5365 @ 3.0Ghz
  • 16GB RAM(8x 2GB ECC)
  • 2个73GB 10k SAS
  • 4 x 300GB 10K SAS

我的问题是我是否应该使用RAID1 / RAID10或RAID1 / RAID1 / RAID1?

虚拟机如下:

  1. MOSS前端为100个用户
  2. 100个用户的MOSS SQL后端
  3. IIS网站stream量非常低
  4. TOMCAT网站stream量很低
  5. CRM应用程序同步我们的Exchange和ERP服务器之间的联系人也不是一个粗暴的

有什么build议在哪里得到最好的性能出来MOSS将不胜感激。

请注意,这是我可用的唯一硬件,我们的预算非常紧张,无法购买另一台服务器来托pipeSQL,因此必须保持虚拟化。


编辑:数据库读取密集,很less写道。 我认为这有助于所有RAID1的位置

我肯定会用三个RAID 1卷; 可用空间是相同的(占总磁盘大小的50%),但是您可以select将VM放置在不同的arrays上,并且当两个VM分别位于自己的物理磁盘上时,它们的执行速度比“只能在一个大arrays中传播。

然后,我会把这样的虚拟机:

第一个数组:OS,IIS,tomcat第二个数组:MOSS前端,CRM第三个数组:MOSS后端

根据你的工作量,你可以把它们放在不同的地方。 但是对于磁盘密集度最高的虚拟机拥有完全专用的arrays肯定会带来好处。

我将使用RAID10中的四个驱动器而不是两个RAID1arrays,因为您将看到SQL VM的性能提升。

因为你有足够的内存,你可以给其他虚拟机足够的,他们永远不需要交换,我猜他们不会需要太多的其他磁盘IO,所以不会影响SQL虚拟机的方式。 如果它们施加了一个明显的IO负载,那么把它放在另一个较小的RAID1arrays上,让SQL虚拟机有自己的RAID10arrays。

如果你有两个或两个以上的虚拟机强加了很高的IO负载,那么你可能想用多个RAID1arrays来代替RAID10,因为你可以把他们的IO负载分开到不同的磁盘集上,但是你必须做一些用自己的应用程序进行基准testing,看看这是否会给你带来比RAID10更快的速度优势(我猜测任何区别都不大,但是这取决于加载模式,而更大的RAID10容量可能会从长远来看更方便两个较小的)。

没有更多的实际IO负载模式的测量一个艰难的。

我同意大卫Spilett(虽然试图把第一RAID1arrays上的大多数,如果不是所有的VM系统磁盘文件直接),虽然我在思索将SQL数据库和SQL日志分裂成两个单独的arrays,因此主轴系统会更好或不… ^^

答案很简单,因为你的服务器已经configuration好了,我会运行两个独立的RAIDarrays,一个用于你的虚拟机,另一个用作你的存储组,

也就是说,使用RAID 1中的两个73GB SAS驱动器,然后在RAID 10中使用4个300GB SAS驱动器,设置两个RAID 1arrays没有意义,因为它基本上只是一个没有IO性能的RAID10会从RAID10中获得。

基本上,两个RAID 1卷可以容忍两个驱动器故障,只要它们不是同一个RAID 1块的一部分即可。 同样的逻辑适用于RAID 10arrays,但使用RAID 10arrays时,您将获得RAID 0的优势,这会使IO性能提高一倍。 如果负载由于MOSS或SQL服务器而成为问题,则应使用VMWare进行平衡,而不是使用RAIDarrays的configuration。 VMware ESXi不仅能够在大量的虚拟机中调度磁盘使用情况,