我刚刚为我的公司订购了一台新设备。我们为 Microsoft SharePoint 进行了大量软件开发,需要该设备运行多个虚拟机以用于开发和测试目的。我们将使用免费的 VMware ESXi 进行虚拟化。首先,我们计划构建并启动以下虚拟机 - 全部使用 Windows Server 2008 R2 x64:
- Active Directory 服务器
- MS SQL 服务器 2008 R2
- 自动构建服务器
- SharePoint 2010 Server 用于托管我们的公共网站和供少数人使用的内部 Intranet。此服务器上的负载将非常小。
- 2xSharePoint 2007 开发服务器
- 2xSharePoint 2010 开发服务器
除此之外,我们还需要构建多个 SharePoint 场以进行测试。这些虚拟机仅在需要时启动。新设备的规格如下:
- 戴尔R610机架服务器
- 2 个英特尔至强 E5620
- 48GB 内存
- 6x146GB SAS 10k 驱动器
- Dell H700 RAID 控制器
我们相信新服务器将使我们的虚拟机性能比现有设置(2xIntel XEON、16GB RAM、2x500 GB SATA,RAID 1)好得多。但我们不确定新设备的 RAID 级别。
我们应该选择 6x146GB SAS 硬盘,采用 RAID 10 配置还是 RAID 5 配置?RAID 10 似乎提供了更好的写入性能和更低的 RAID 故障风险。但代价是硬盘空间变小。我们需要 RAID 10 还是 RAID 5 对我们来说也是个不错的选择?
答案1
关于 R10 与 R5/R6,此网站上有很多类似的问题/争论,但归根结底都是“重建期间的暴露”。在处理较大、较慢的磁盘时,R10 优于 R5 的争论最为激烈,有些人购买这些磁盘是因为它们的 GB/$£€ 更好(例如 2/3TB 7.2k SATA),因为这些磁盘的阵列在更换或添加磁盘后可能需要数天才能重建 - 这意味着如果在此重建窗口期间第二个磁盘发生故障,整个阵列将丢失。
对于本网站的许多人来说,包括我自己在内,这种风险太高了。R6 对此做了一些改变,但通常也带来了写入性能的大幅下降。此外,在软件中执行任何这些操作都会进一步降低重建期间的性能,因为所有数据都通过同一条总线传输,包括“实时”流量。
你已经很好地选择了组件,你肯定会看到性能的巨大提升。如果我是你,我不会“在最后一关就失败”——我会使用 R10,因为我知道你做了正确的事。如果你担心空间问题,你可以使用精简配置磁盘和/或购买 600GB 10k 磁盘而不是 146GB 15k 磁盘,性能下降不会太严重,但你会有更多的空间——如果你需要额外的主轴,你总是可以今天购买 4 x 600,以后再添加 2 个?
答案2
如果这是一个关键任务系统,那么您需要确保如果某个驱动器出现故障,您在本地有一些备用驱动器(除非您有硬件支持合同,规定您可以在当天获得替换驱动器,但即便如此,本地备用驱动器也是值得拥有的)。
忽略这一点(或假设这六个驱动器不包括您可能可以轻松访问的备用驱动器),出于您提到的性能原因,我建议使用 RAID10(三个 RAID1 嵌套在 RAID0 中)而不是 RAID5。或者,如果空间根本不是问题,而冗余和驱动器故障时重建时间是一个大问题,那么您甚至可以考虑将两个三驱动器 RAID1 嵌套在 RAID0 中(但这对于大多数目的来说都是过度的,尽管它可以允许每个 R1 支路上的两个驱动器同时发生故障,同时保持阵列正常运行)。
但是还有另一种选择:三个独立的 RAID1 阵列(或者如果您的控制器支持 3 驱动器 RAID10(某些控制器称之为 RAID1E)则可能是两个 RAID10 阵列)。这样,您可以将虚拟机分布在不同的主轴上,这样它们在 IO 带宽方面的竞争就会大大减少。不同 RAID1 阵列上的两个虚拟机可以愉快地使用它们的虚拟磁盘,而不会对彼此或第三个阵列上的虚拟机的响应能力产生太大影响。当然,这最终可能会浪费空间:您可能在一个阵列上有很多可用空间,但不想使用它,因为该阵列上已经有 I/O 密集型虚拟机在不断使用(尽管在这种情况下,如果您有一个阵列,您将放在该空间中的虚拟机无论如何都会竞争 IO 访问),或者您可能在每个阵列上都有 25Gb 的可用空间,但需要 50Gb 的空间来放置新虚拟机。
这种技术可以使很多如果您在驱动器之间正确平衡 VM,则与基于旋转磁盘和臂的驱动器的差异。它对 SSD 仍然有影响,但差异较小,因为您没有磁头移动和等待正确扇区通过的问题,而这些问题会导致额外的性能降低延迟。但是正如我上面所说,管理起来可能需要更多工作。在您描述的用例中,您可以将负载较轻的 SharePoint 服务器和构建主服务器放在一个阵列上,将开发 VM 放在另一个阵列上(如果您有三个阵列而没有其他活动 VM,则可能每个阵列一个)。随着需求的变化,您随时可以在阵列周围移动 VM 以重新平衡负载,而停机时间很少(如果您选择的虚拟化解决方案支持本地数据存储之间的实时迁移,则完全没有停机时间)。
答案3
正如之前在这里回答过很多次的那样 - 不要使用 RAID 5!巴林航空研究基金会对这个问题有一些强烈的看法!
您将获得比 RAID 10 更差的性能,在驱动器故障后重建期间性能会下降,并且如果在此期间另一个驱动器发生故障,您将从备份中恢复!