下一页 上一页 目录

4. 硬件问题

此 HOWTO 已弃用;Linux RAID HOWTO 由 linux-raid 社区维护,网址为 http://raid.wiki.kernel.org/

本节将提及运行软件 RAID 时涉及的一些硬件问题。

如果您追求高性能,则应确保驱动器的总线速度足够快。如果每个驱动器可以提供 20 MB/s 的速度,而总线只能维持 160 MB/s 的速度,则不应在一个 UW 总线上连接 14 个 UW-SCSI 驱动器。此外,每个 IDE 总线只能有一个设备。以主/从模式运行磁盘对性能非常不利。IDE 在访问每个总线上的多个驱动器时表现非常糟糕。当然,所有较新的主板都有两个 IDE 总线,因此您可以设置两个磁盘的 RAID,而无需购买更多控制器。如今,额外的 IDE 控制器相当便宜,因此使用 IDE 设置 6-8 磁盘系统既容易又经济实惠。

4.1 IDE 配置

实际上,可以在 IDE 磁盘上运行 RAID。而且也可以实现出色的性能。事实上,今天 IDE 驱动器和控制器的价格使得在设置新的 RAID 系统时,IDE 值得考虑。

非常重要的一点是,每个 IDE 总线只能使用 一个 IDE 磁盘。两个磁盘不仅会破坏性能,而且一个磁盘的故障通常会保证总线的故障,从而导致该总线上所有磁盘的故障。在容错 RAID 设置(RAID 级别 1, 4, 5)中,可以处理一个磁盘的故障,但两个磁盘的故障(由于一个磁盘的故障而导致总线上两个磁盘都故障)将使阵列无法使用。此外,当总线上的主驱动器发生故障时,从盘或 IDE 控制器可能会变得非常混乱。一条总线,一个驱动器,这是规则。

市面上有很多廉价的 PCI IDE 控制器。您通常可以以大约 80 美元的价格获得两个或四个总线。考虑到 IDE 磁盘相对于 SCSI 磁盘的价格要低得多,如果可以接受连接到典型系统的相对较少数量的磁盘(可能约为 8 个),则 IDE 磁盘阵列通常是一个非常好的解决方案。

在大型阵列方面,IDE 存在严重的布线问题。即使您有足够的 PCI 插槽,也很难在系统中安装超过 8 个磁盘,并且仍然可以在不因 IDE 电缆过长而导致数据损坏的情况下运行。

此外,一些较新的 IDE 驱动器带有每天只能使用一定小时数的限制。这些驱动器设计用于桌面使用,如果在 24/7 服务器 RAID 环境中使用,可能会导致严重问题。

4.2 热插拔

虽然在某种程度上支持驱动器的热插拔,但这仍然不是一件容易做到的事情。

IDE 驱动器热插拔

不要! IDE 根本不支持热插拔。当然,如果您的 IDE 驱动程序编译为模块(仅在 2.2 系列内核中可能),并且您在更换驱动器后重新加载它,则它可能对您有效。但是您很可能最终会得到一个烧坏的 IDE 控制器,并且您将面临比在停机系统上更换驱动器所需时间长得多的停机时间。

主要问题,除了可能损坏硬件的电气问题外,是 IDE 总线必须在磁盘更换后重新扫描。虽然较新的 Linux 内核确实支持重新扫描 IDE 总线(借助 hdparm 实用程序),但仍然缺少重新检测分区的功能。如果新磁盘与旧磁盘 100% 相同(关于几何结构等),它可能会工作,但实际上,您正处于技术前沿。

SCSI 驱动器热插拔

正常的 SCSI 硬件也不是热插拔的。但是它可能会工作。如果您的 SCSI 驱动程序支持重新扫描总线以及移除和附加设备,您可能可以热插拔设备。但是,在正常的 SCSI 总线上,您可能不应该在系统仍然通电的情况下拔下设备。但是,话又说回来,它可能只是工作(并且您可能会最终得到烧坏的硬件)。

如果磁盘发生故障,SCSI 层应该可以幸存下来,但并非所有 SCSI 驱动程序都已处理这种情况。如果您的 SCSI 驱动程序在磁盘发生故障时崩溃,您的系统也会随之崩溃,那么热插拔就没什么意义了。

使用 SCA 进行热插拔

使用 SCA,可以热插拔设备。不幸的是,这并不像应该的那样简单,但它是既可能又安全的。

将 RAID 设备、磁盘设备和主机/通道/id/lun 编号替换为以下示例中的相应值

“scsi remove-single-device” 命令的参数是:主机、通道、Id 和 Lun。这些数字可以在 “/proc/scsi/scsi” 文件中找到。

以上步骤已在具有 IBM SCA 磁盘和 Adaptec SCSI 控制器的系统上尝试和测试过。如果您遇到问题或找到更简单的方法来执行此操作,请在 linux-raid 邮件列表中讨论。


下一页 上一页 目录