RAID 技术有两种:硬件 RAID 和软件 RAID。
基于硬件的系统从主机之外独立地管理 RAID 子系统,并且它在主机处把每一组 RAID 阵列只显示为一个磁盘。
连接到 SCSI 控制器的,把 RAID 阵列表示为单个 SCSI 驱动器的设备就是一个硬件 RAID 的例子。一个外部的 RAID 系统把所有 RAID“处理智能”都转移到位于内部磁盘子系统中的控制器中。整个子系统都通过一个普通的 SCSI 控制器连接到主机上,对主机而言,它就象一个单一的磁盘。
RAID 控制器还以卡的形式出现。该卡充当操作系统的 SCSI 控制器,但却控制所有驱动器本身的实际通讯。在这些情况下,你把驱动器插入到 RAID 控制器中,就如同插入 SCSI 控制器中一样,但这之后,你把它们添加到 RAID 控制器的配置里,操作系统却决不会知道其中的区别。
软件 RAID 在内核磁盘(块设备)编码中实现各类 RAID 级别。因为它不需要昂贵的磁盘控制器卡或热交换底盘[1],软件 RAID 提供了最廉价的解决方法。它还可以用在较便宜的 IDE 磁盘以及 SCSI 磁盘。使用今日的快速 CPU,软件 RAID 的性能能够超出硬件 RAID。
Linux 内核的 MD 驱动程序是完全独立于硬件的 RAID 解决方案的范例。基于软件的阵列性能独立于服务器 CPU 的性能和载量之外。
关于在安装中配置软件 RAID 的信息,请参阅第12章 。
以下为那些对软件 RAID 功能感兴趣的用户列举了一些最重要的特性:
使用线程的进程重建
基于内核的配置
不必重建而可在 Linux 机器间迁移阵列
使用空闲的系统资源在后台重建阵列
对可热交换的驱动器的支持
对 CPU 的自动检测以便利用某些 CPU 优化功能
[1] | 热交换底盘允许你不必给系统断电而移除硬盘驱动器。 |