我是否需要第二个RAID控制器来进行容错?

我有一个服务器,安装了3个硬盘驱动器,总容量为6个。我们计划将其最大化,但我们的顾问还build议让第二个RAID控制器“冗余”来支持新驱动器。 对我来说,这没有什么意义。 即使有第二个RAID控制器运行一半的磁盘,如果其中一个控制器死了,我们仍然只能保留一半的磁盘/程序/数据(这比没有运行的好多了)。 我们正在把vmware放在服务器上,他隐约提到了一些高级的容错/故障转移function,但是如果由于控制器失败而导致磁盘无法访问,它应该如何工作?

只计算冗余的原因,而不是性能, 为什么我想要在我的服务器中有第二个RAID控制器?

    在“单箱高可用性”devise中,是的,你想要第二个控制器,理想情况下也是在第二个总线上。 但是这种方法已经让位于基于集群的便宜devise,其中一个盒子故障不会停止服务。 所以这取决于你打算使用集群环境还是依靠一个盒子。 即使你的答案是后者有双控制器可能被视为增加额外的复杂性,也许是矫枉过正。

    编辑 – 基于您对有关在其他问题上使用ESXi的评论,我不得不说它的集群非常棒 ,我们有许多32路集群,出色的工作。

    积极使用的第二个RAID控制器不是冗余的。 只有当它是一个冷备用控制器时,您可以将所有的磁盘切换到第一个磁盘。 然后你有冗余(控制器)。 但要小心这样做,正如张贴在这里 。

    所以RAID是为了在控制器上导致单点故障的磁盘冗余。 有一个第二(未使用的)控制器可以解决这个问题,因为你可以将所有的磁盘切换到新的。 如果这工作取决于其他因素…

    我不是母语,但对我来说,“容错”与“冗余”不同。 一些英语人士能帮我一下吗?

    您需要双端口SAS驱动器才能在多个控制器上提供实际的故障转移。 虽然这些确实存在,但它确实没有变化 – 不在仅有内部存储的单个服务器的价格范围内。

    这些是在SAN系统中经常使用的技术,其中控制器死亡是一个真正的问题。

    对于没有其他故障切换function的单台服务器而言,第二个控制器不会获得任何收益,只会花费更多的钱,并为顾问提供更多的利润。

    在一个盒子中,实际上需要两个 RAID控制器连接到两个不同的PCI-E根联合体,才能拥有完整的I / O子系统冗余。 这可以通过两种不同的configuration来实现:

    • 使用昂贵的双端口SAS磁盘,每个SAS链路连接到不同的控制器。 以这种方式,每个控制器连接到每个磁盘。 显然,这两个控制器不能同时在磁盘上运行, 一些forms的locking/围栏是必要的协调访问磁盘。 SCSI有一些特殊的规定来提供必要的防护机制,但这些必须由适当的软件来协调。 换句话说,你不能简单地把一个磁盘连接到两个控制器上, 相反,你需要适当的软件configuration,让它工作没有问题;
    • 使用普通和便宜的单链路SAS / SATA磁盘,将其中一半连接到每个控制器。 例如对于6个磁盘,您需要将3个磁盘连接到控制器,将3个磁盘连接到另一个控制器。 在每个控制器上,根据需要configurationRAIDarrays(例如:RAID 5或RAID1)。 然后,在操作系统级别,您可以在两个磁盘arrays之间configuration软件RAID,实现全arrays冗余。 虽然更便宜,但这种解决scheme还有一个缺点,即有效地减less了存储容量(由于软件RAID1级别)。

    这两种方法的一个关键问题是,您没有完整的系统冗余:主板/ CPU问题可能会导致整个系统,无论您有多less控制器/磁盘。

    出于这个原因,这种盒装冗余技术最近很less被使用(除了中/高端的SAN部署)。 相反,集群/networking镜像正在获得广泛的推动。 通过集群(或networking镜像),您可以拥有完整的系统冗余,因为单个故障系统不能否定数据访问。 显然,集群有它自己的陷阱,所以它不是一个银子/简单的子弹,但在某些情况下,它的优点不能被否定。 而且,您还可以使用asynchronousnetworking镜像在不同地理位置上实现近乎实时的数据冗余,从而避免单个灾难性事件对您的数据造成严重破坏。