Linux 软RAID 的做法:
RAID 0 --stiping 条带---没有冗余,性能上读写都有提升,最少需要两块硬盘; 硬盘利用率100%
RAID 1--Mirror --镜像---而写性能会下降,读会有一定的提升--硬盘至少需要两块,且为双数存在.硬盘利用率50%
RAID 5---------有冗余,性能上读写都有提升,至少 需要3块硬盘.硬盘利用率(n-1)/n
RAID10---先RAID1而后RAID0,有冗余,性能上读写都有提升,至少需要4块硬盘,硬盘利用率50%,企业推荐使用10,如单一硬盘故障后,换新硬盘后只需要sync 对应的镜像盘,不影响全局计算.
RAID01---先RAID0而后RAID1,有冗余,性能上读写都有提升,至少需要4块硬盘,硬盘利用率50%.
mdadm 命令格式为:
mdadm [mode] [options]
mdadm 约有多种modes .
Assembly -A 装配模式,重新装配以前配置的RAID
Create -C 创建模式 ,新建立一个RAID
follow or Monitor : -F 监控模式
Grow: -G增长模式
管理模式--add --remove
for create ,build ,or grow :
-n ,|--raid-devices= 设置array 磁盘的数量.
-x |--spare-devcies= 指定spare 的数量.
-l | --level= 指定array的级别 如0,1,5 ..
-N |--name= 设定一个名字为array
-a | --auto{=yes,md,mdp,part,p}
-o,--readonly
for mangage mode:
-a|--add 热添加列表设备;
--add-spare 添加一块设备为spare
-r |--remove 从array 中移除一块设备,其不能为活动状态,应该是failed or spare device.
-f ,--fail |--set-faulty 标记某一设备为faulty
for Misc
-D|--detail 列出1个或多个md 设备的详细信息.
Assembly Mode:
Usage: mdadm -A md-device options-adn component-devices.
mdadm -A --scan md-device and options.
mdadm -A --scan Optins ..
Create mode:
Usage: mdadm -C md-device -l -n -N -x -a devices
mdadm -D --scan >/etc/mdadm.conf 将当前所有RAID 信息保存到配置文件中.
example:
mdadm --query /dev/name-of-device 列出给出RAID 的基本信息
mdadm --assembly --scan 扫描配置文件并将其重新装配启动.
配置文件为/etc/mdadm.conf
mdadm --stop --scan 关闭所有的没有使用RAID
mdadm --create /dev/md0 --level=1 --raid-device=2 /dev/hd[ac]1
创建RAID1 md0 ,两个设备为/dev/hda1 and /dev/hdc1
在linxu 中软RAID的方法:
分区支持RAID ,我们作如下测试:
1.新建立四个分区大小都为3G,改变分区类型为fd(linux raid autodectect);
2.cat /proc/partitions 确认可以查看到新建立的三个分区,本例中为sdb1,sdb2,sdb3,sdb4
3. mdadm -C /dev/md0 -n 3 -l 5 -a yes /dev/sdb{1,2,3} 创建由sdb1,2,3 组成的RAID5
4. 假设设定 /dev/sdb2 设备故障,再添加一块硬盘作为spare ;
mdadm /dev/md0 -f /dev/sdb2, 而后查看md0 基本状态信息 mdadm -D /dev/dm0
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
2 0 0 2 removed
3 8 19 2 active sync /dev/sdb3
1 8 18 - faulty /dev/sdb2
mdadm /dev/md0 --remove /dev/sdb2 移除md0 中已经坏的设备sd2 ,后再新增加一块硬盘
5. 再添加一块硬盘
mdadm /dev/md0 --add /dev/sd5 新增加一块硬盘到md0 ,查看/proc/mdstat 进行recovry ...
mdadm -D /dev/md0 查看信息显示 md0 正常,由sdb1,sdb3,sdb5
6. 再增加一块硬盘
mdadm /dev/md0 --add /dev/sd2 显示 spare /dev/sdb2 sdb2 作为spare 使用/如有其他硬盘故障,sdb2 自动会加入到raid 中.
7. 将当前RAID 的的配置信息保存到配置文件中
mdadm -D --scan > /etc/mdadm.conf
8. 停止当前的RAID
mdadm --stop /dev/md0
9. 重新装配以前配置的RAID
mdadm -A --scan /dev/md0
10. 当前为3块硬盘组成RAID 5, 一块为spare ,我们作如下测试,将spare 加入到RIAD 5 中,扩大当前RAID的容量.
mdadm --grow /dev/md0 -n 4 则4块硬盘都将加入到当前RAID 中.
以上仅供本人学习记录,欢迎批评指正.