在一个盒子上,实际上需要两个 RAID控制器,它们连接到两个不同的PCI-E根联合体,以具有完整的I / O子系统冗余。这可以通过两种不同的配置来实现:
- 使用昂贵的双端口SAS磁盘,并且每个SAS链接都连接到不同的控制器。以这种方式,每个控制器都连接到每个磁盘。显然,两个控制器不能同时在磁盘上运行;必须采用某种形式的锁定/围栏来协调对磁盘的访问。SCSI有一些特殊规定可提供必要的防护机制,但是必须由适当的软件进行协调。换句话说,您不能简单地将一个磁盘连接到两个控制器并称其为“一天”。相反,您需要适当的软件配置才能使其正常工作。
- 使用普通且便宜的单链接SAS / SATA磁盘,将其中的一半连接到每个控制器。例如,对于6个磁盘,您需要将3个磁盘连接到一个控制器,将3个磁盘连接到另一个控制器。在每个控制器上,根据需要配置RAID阵列(例如:RAID 5或RAID1)。然后,在操作系统级别,您可以在两个磁盘阵列之间配置软件RAID,以实现完整的阵列冗余。尽管价格便宜,但该解决方案的另一个缺点是有效地减少了存储容量(由于软件RAID1级别)。
两种方法的关键问题是您没有完整的系统冗余:主板/ CPU问题可以使整个系统瘫痪,而与您拥有多少控制器/磁盘无关。
因此,最近很少使用这种一体式冗余(中/高端SAN部署除外);相反,群集/网络镜像正在获得广泛的关注。使用群集(或网络镜像),您可以拥有完整的系统冗余,因为单个故障系统无法否定数据访问。显然,集群有其自身的陷阱,因此它不是万灵药,但是在某些情况下,它的优势是不可否认的。此外,您还可以使用异步网络镜像在地理位置不同的位置上实现几乎实时的数据冗余,因此单个灾难性事件不会对您的数据造成破坏。