关于 RAID 配置的常见问题,特别是嵌套 RAID 50

关于 RAID 配置的常见问题,特别是嵌套 RAID 50

我了解不同类型的 RAID 配置:

  1. RAID 1 -- 镜像 [冗余]
  2. RAID 0 -- 条带化 [高性能]
  3. RAID 5 -- 热备用 [冗余]

据我所知,RAID 1 为您提供冗余而不会影响性能,RAID 0 为您提供性能但代价是冗余,而 RAID 5 的好处在于您可以获得额外的存储空间并且仍然具有冗余,但性能却有所损失。

我还了解一些嵌套 RAID 配置,特别是 RAID 10 (1+0)。这兼具 RAID 1 和 RAID 0 的优点。让您两全其美。

我的问题是:(这里不考虑 SAN)RAID 50 或 RAID 10 是否更适合虚拟化环境,因为大多数虚拟机在磁盘 IO 和 CPU 使用率方面都利用不足。我试图最大限度地增加可以在主机上安装的虚拟机数量,而我的限制因素是驱动器空间。

因此,我尝试在虚拟主机上放置尽可能多的虚拟机,任何虚拟机上的大部分 IO 都与操作系统相关,有时用户请求会触发虚拟机执行一些 IO,但这种情况很少见,并且在虚拟机之间相对均匀分布。

我的想法是 RAID 50 可能会更好,因为 A)更好地利用(阵列中所有磁盘的总大小的 2/3 而不是 1/2)和 B)可能更好的随机读/写性能,因为有更多的驱动器用于存储,所以读/写寻道更有可能在不同的物理驱动器上进行。

更新

虚拟主机 - Windows Server 2008 R2

虚拟机 - Windows 2000 Server - Windows Server 2008 R2

更新 2

单个硬件 RAID 控制器。我猜想它会进行奇偶校验计算?

两个 RAID 5 阵列 < 总共 10 个驱动器

在大多数情况下,原始性能不是问题,主要限制因素是物理驱动器空间。大多数 IO 只是操作系统的闲置。由于我们的数据库软件的限制,我们需要一个 1-server::1-system,即使只有 5 个用户。因此我们的大多数数据库服务器都处于闲置状态。开销只是在驱动器阵列上运行那么多操作系统。

更新 3

我目前正在使用 RAID 10,它运行良好;但我发现更多的驱动器空间会很有用(因此询问 RAID 50 以更好地利用物理磁盘)。正如下面所建议的,我听说 RAID 6 可以提供与 RAID 50 类似的性能、冗余和存储容量——这是真的吗,还是我没有理解这些回复?

答案1

说实话,您问题的答案在一定程度上取决于您安装的其余部分。当您谈论本身具有单点故障(即它所连接的主机)的存储时,您是在询问本地 RAID 控制器上的冗余级别。

除非您使用某种共享阵列(可能比 SAN 简单得多,而且低端得多),否则您会发现物理计算主机发生故障会拖垮您的所有工作负载。除非您迁移到不使用本地 RAID 控制器的共享阵列,否则这种情况将始终存在。这一事实可能导致您采取一种策略,即经常备份虚拟机,比使用共享后端集群两台或多台主机时备份虚拟机的频率更高。

如果您经常进行这些备份以便能够承受主机故障,那么您可能会得出结论,您只想在条带化(RAID 0)模式下使用本地 RAID 控制器来获得纯粹的性能。

不过,老实说,在您的情况中,如果您的控制器支持,我可能会寻找单个 RAID6 阵列。不过,正如“freiheit”所说,这在很大程度上取决于您的虚拟机将要生成的存储流量类型。来自多个虚拟机的大量随机写入可能会同时压垮您的 RAID 阵列。如果是这样,您需要优化性能。如果不是,您可能希望优化可靠性,而较少依赖备份。

答案2

您说的是多少个驱动器?您需要多少存储空间?您说的是 RAID0 中的 2 个 RAID5,还是 RAID0 中的 20 个 RAID5?硬件是什么?从根本上讲,RAID50 和 RAID10 之间的性能差异取决于硬件。

RAID 1 不会改变您的性能,但可能会使读取性能翻倍(特别是同时有多个读取请求时;它们可以分布在两个驱动器上)

RAID 5 不是“热备用”,它更像是“条带奇偶校验”。RAID5 中的任何单个驱动器可能会丢失,但它仍会继续运行,但会以“降级”的方式运行。RAID 5 的写入性能可能受计算奇偶校验的速度限制;给定的 RAID 卡将具有计算奇偶校验的最大速度,因此也具有最大写入速度,无论您有多少个驱动器。

RAID 50(RAID 5 阵列中的 RAID 0)可以很好地工作。它的性能与单个大型 RAID 5 或 RAID 5 的 JBOD 相似。但是,RAID10 没有奇偶校验计算限制。除非您拥有一些强大的硬件,否则多个底层 RAID5 驱动器上的奇偶校验计算可能会成为写入的限制因素。这实际上取决于执行 RAID5 奇偶校验计算的内容。

无论您使用 RAID 50 还是 RAID 10,有了这么多驱动器,您都希望确保保留一个热备用驱动器(一个未使用的驱动器,可在驱动器发生故障时移入任何底层阵列)。有了这么多驱动器,其中一个驱动器发生故障是不可避免的,而热备用驱动器可以为您争取时间。您也可以考虑使用 RAID6(RAID5 双奇偶校验),因为它的容错能力更强。单个 RAID6 的性能、空间使用率和容错能力应该与由两个 RAID 5 阵列组成的 RAID 0 非常相似。

相关内容