Linux软RAID实现

DEPHI 2011-04-21

安装程序实现软件RAID代替硬件RAID的方法,今天再进一步谈谈手动创建软RAID和日常维护的方法。
mdadm使用的也是md驱动,由于其拥有多种模式,而且单一工具,不依赖任何配置文件,是替代raidtools的好工具。目前几乎所有发行版本使用的都是该工具。

一、安装和编译
源码下载:http://www.cse.unsw.edu.au/~neilb/source/mdadm/
编译:

tar xzvf ./mdadm-1.6.0.tgz
cd mdadm-1.6.0
make install

rpm安装:

rpm -ivh mdadm-1.6.0-3.rpm

※源码最新版本是2.5,由于我使用的1.6.0的rpm包,所以还是以该版本为例。

二、模式
mdadm有6种模式,前两种模式:Create、Assemble用于配置和激活阵列;Manage模式用于操作在活动阵列中的设备;Follow或Monitor模式允许管理员对活动阵列配置事件提醒和动作;Build模式用于对旧阵列使用旧版本的md驱动;还有Grow模式可以扩展阵列;剩下的是Misc模式,它包括对多种内部的任务和没有指定特殊模式的一些操作。

系统平台: 红旗 DC Server for x86
硬件平台: Intel Xeon 3.0G DP、1个系统硬盘,3个组成阵列磁盘

三、部署
1、准备磁盘
只能使用Sofware RAID格式的磁盘才能组成阵列,所以,首先我们要把做好磁盘格式。正如上面提到的,除了系统盘sda外,我们需要对sdb、sdc、sdd进行操作
a)对sdb进行分区
fdisk /dev/sdb

Linux软RAID实现

分区前状态:

Linux软RAID实现
n,划分区:

Linux软RAID实现
t,修改分区格式为fd:

Linux软RAID实现
w,保存:

Linux软RAID实现
b)同样的方法,对sdc、sdd进行分区和保存
最后状态如下:
Linux软RAID实现

2、创建阵列
mdadm可以支持LINEAR、RAID0 (striping)、 RAID1(mirroring)、 RAID4、RAID5、RAID6和MULTIPATH的阵列模式。
创建命令格式如下:

mdadm [mode] [options]
例如:创建一个RAID 0设备:
mdadm –create –verbose /dev/md0 –level=0 –raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
–level表示创建的阵列模式,–raid-devices表示参与阵列的磁盘数量。
Linux软RAID实现
也可以这样表达,意思是一样的:
mdadm -Cv /dev/md0 -l0 -n3 /dev/sd[bcd]1
还可以增加-c128参数,指定chunk size为128K(默认64K)

3、配置文件
mdadm不采用/etc/mdadm.conf作为主要配置文件,它可以完全不依赖该文件而不会影响阵列的正常工作。
该配置文件的主要作用是方便跟踪软RAID的配置。对该配置文件进行配置是有好处的,但不是必须的。推荐对该文件进行配置。

通常可以这样来建立:
echo DEVICE /dev/sd[bcd]1 > /etc/mdadm.conf
mdadm -Ds >> /etc/mdadm.conf
mdadm –detail –scan >> /etc/mdadm.conf

4、格式化阵列
后续,只要你把/dev/md0作为一个单独的设备来进行操作即可:
mkfs.ext3 /dev/md0
mkdir /mnt/test
mount /dev/md0 /mnt/test
5、若要开机自动挂载,请加入/etc/fstab中:
/dev/md0 /mnt/tes auto defaults 0 0
四、监控和管理
mdadm可以非常方便的对阵列进行监控和管理的操作,也包括了停止和启动阵列等常用维护。
1、查看
cat /proc/mdstat

可以查看所有使用md驱动的阵列的状态:
Linux软RAID实现
mdadm –detail /dev/md0
查看指定阵列的详细信息(-D):
Linux软RAID实现

相关推荐