当前位置:Linux教程 - RedHat - 在 RedHat 6.0 里设置 RAID

在 RedHat 6.0 里设置 RAID



        

    一、RAID介绍
    我建议你读一读[email protected]写的软件RAID HOWTO。很明显,他是个丹麦人。丹麦是一个住着许多聪明人的世界上最好的国家。他的这篇HOWTO写得非常好,也许我根本就没有必要写这篇文章。我之所以写这篇文章是因为文档一般来说都写得不大容易懂,当然现在情况已有很大的改观。本文中介绍的安装是在RedHat 6.0上进行的,我认为在其他的Linux版本中应该也能用。我什么时候会转去用Debian呢?我希望能尽快。
    什么是RAID?简单的说,它可以让你在几个硬盘上做些有趣的事。它可以让你把几个硬盘合并起来,把数据分散地存放在这几个硬盘中。它可以提高往硬盘读写数据的速度,也可以在硬盘上备份数据。这样即使你有一个硬盘坏了,你还可以从其他的硬盘中恢复所有的数据。你可以读读软件RAID HOWTO中有关RAID级别的部份来更好的了解不同类型的软件RAID。
    为了试验本文中的例子,你需要设置一些小的分区。我建议你设置一个1G的扩展分区,然后在这个扩展分区上建一些100兆的逻辑分区。请千万要记住,你只能在一个无关紧要的硬盘上进行试验。如果你毁了这个硬盘上的数据,那是你自己的错。即使我的文章中写得不对,你也必需对自己的所作所为负责。
    二、RAID条带(strip RAID)
    我只准备介绍如何设置RAID条带来存放数据。也就是说,我不会把操作系统的主要部份放在RAID条带上。用RAID条带来存放整个系统会带来一些问题,所以我不准备这么做。
    简单的说,在Linux系统上设置RAID条带需要四个步骤。条带把数据存放在两个或更多的硬盘(实际上是分区)上,这些数据有一半是在一个硬盘上,另一半在另一个硬盘上。这样可以提高硬盘读写的速度,因为数据是从两个硬盘上同时读出来的。再说一次,你可以在HOWTO读到更详细的内容。
    首先,我们要配置/dev/md0,然后我们要格式化这些分区,接下来要配置/etc/rc.d/rc.local来激活RAID,最后要配置/etc/rc.d/rc.local来把这些设备安装到某个目录。
    具体步骤
    现在,我要使用一些小窍门。我认为大多数的低端用户并没有两个硬盘,所以我要使用同一个硬盘上的两个分区而不是两个硬盘。建立一个有两个逻辑分区的扩展分区。这两个分区,/dev/hda5和/dev/hda6,的大小必需一样。在同一个硬盘上的两个分区之间进行RAID条带是没有任何意义的,即使是在同一个IDE控制器的不同硬盘上这么做也是没有意义的。请记住,这只不过是个练习。
    在 /etc/raidtab中这么写:
    raiddev /dev/md0
    raid-level 0
    nr-raid-disks 2
    nr-spare-disks 0
    chunk-size 4
    persistent-superblock 1
    device /dev/hda5
    raid-disk 0
    device /dev/hda6
    raid-disk 1
    使用以下命令格式化分区
    mkraid /dev/md0
    如果你在用“mkraid”命令时出了些问题,它应该会给出如何解决问题的提示。然后执行如下命令:
    mkfs -t ext2 /dev/md0
    接着,你可以在“/proc/mdstat”文件中查raid的状态。
    cat /proc/mdstat
    执行以下命令会在/etc/rc.d/rc.local中增加一行
    echo \"raidstart /dev/md0\" >> /etc/rc.d/rc.local
    把这个命令执行一次。这可以为RAID设备建好目录并在/etc/rc.d/rc.local中增加一条命令。
    mkdir /RAID
    echo \"mount /dev/md0 /RAID\" >> /etc/rc.d/rc.local
    如果你不想重启动计算机,你现在就可以激活RAID,
    raidstart /dev/md0
    mount /dev/md0 /RAID
    你可以用此命令来检查已经安装的目录。
    df
    三、RAID镜象
    和以上的例子一样,我要使用同一个硬盘上的两个分区,并且我也只对数据分区进行镜象。
      首先,设置/dev/md0,然后格式化分区,接着配置/etc/rc.d/rc.local来激活raid,最后配置/etc/rc.d/rc.local来把镜象设备安装到一个目录下。
    如下设置 /etc/raidtab
    raiddev /dev/md0
    raid-level 1
    nr-raid-disks 2
    nr-spare-disks 0
    chunk-size 4
    persistent-superblock 1
    device /dev/hda5
    raid-disk 0
    device /dev/hda6
    raid-disk 1
    用以下命令格式化分区
    mkraid /dev/md0
    如果你在用“mkraid”命令时出了些问题,它应该会给出如何解决问题的提示。然后执行如下命令:
    mkfs -t ext2 /dev/md0
    接着,你可以在“/proc/mdstat”文件中查raid的状态。
    cat /proc/mdstat
    执行以下命令会在/etc/rc.d/rc.local中增加一行
    echo \"raidstart /dev/md0\" >> /etc/rc.d/rc.local
    把这个命令执行一次。这可以为RAID设备建好目录并在/etc/rc.d/rc.local中增加一条命令。
    mkdir /RAID
    echo \"mount /dev/md0 /RAID\" >> /etc/rc.d/rc.local
    如果你不想重启动计算机,你现在就可以激活RAID,
    raidstart /dev/md0
    mount /dev/md0 /RAID
    你可以用此命令来检查已经安装的目录。
    df
    四、使用空闲的分区设置RAID 5
    使用一个空闲的设备来试验RAID 5是一件很酷的事。我们还是只用一个硬盘。一般来说,我都会建立一个100M的逻辑分区来进行试验。如果你有一个1G的扩展的分区,那你就可以有10个逻辑分区来进行各种试验。
    具体的步骤和以上介绍的镜象以及条带一样,把配置文件按以下修改。
    raiddev /dev/md0
    raid-level 5
    nr-raid-disks 7
    nr-spare-disks 1
    persistent-superblock 1
    parity-algorithm left-symmetric
    chunk-size 32
    device /dev/hda5
    raid-disk 0
    device /dev/hda6
    raid-disk 1
    device /dev/hda7
    raid-disk 2
    device /dev/hda8
    raid-disk 3
    device /dev/hda9
    raid-disk 4
    device /dev/hda10
    raid-disk 5
    device /dev/hda11
    raid-disk 6
    ### Also, let us have a spare device
    device /dev/hda12
    spare-disk 0
    五、注解
    请使用/etc/rc.d/rc.local来安装raid设备,而不要用/etc/fstab。如果你想用/etc/fstab,你尽可以试一试。这多半没有用,但有些人就是喜欢自己试试看(就象我一样)。
    这些文档以前写得挺难懂得,但这些HOWTO已经更新过了,这些工具也变得更好用了。现在,在这些例子的帮助下,任何一个会用Linux的人都可以设置一个raid设备。希望这可以帮助降低RAID服务器的价钱。
    如果你想更好的使用软件RAID,请用U2W SCSI控制器,象Adaptec控制器或其他的好品牌,如DPT,Mylex等。对于只需要镜象而不考虑速度的比较便宜的raid,也可以使用IDE控制器。如果你想更进一步使用硬件RAID,有几个公司支持Linux的硬件RAID。


    发布人:netbull 来自:LinuxAid