RAID 10作为一个比较流行的存储技术在企业中,在Linux中,我们使用mdadm工具来管理RAID。mdadm是Multiple Devices Admin的简称(Linux软RAID的别名就是“Multiple Devices”,简称MD)。
>mdadm的主要工作模式
>mdadm主要有8大类功能,分别是:
>●assemble——加入一个已经存在的RAID阵列(组装);
>●build——创建老式RAID阵列(没有“超级块”);
>●create——创建新式RAID阵列(每个设备具有超级块);
>●follow or monitor——监控RAID 10的状态(针对RAID1/4/5/6/10);
>●grow——扩展、收缩RAID的容量或RAID中的设备数目(针对RAID1/4/5/6);
>●incremental assembly——向RAID中添加单个设备,如果加入后RAID能够运行,那么该RAID将进入工作状态;
>●manage——管理RAID阵列(添加、删除等);
>●misc——其他操作;允许对RAID中的单个设备进行操作(如停止阵列)。
>前面我们在安装Ubuntu的过程中,就在安装程序的虚拟控制台上使用过mdadm命令;我们使用的是create功能,创建新RAID阵列。此外,命令中我们还用了很多选项,下面我们来介绍一下mdadm的主要选项。
>mdadm的选项
>1.工作模式选项
>以下选项,是用来选择工作模式的:
>● -A, –assemble:把一个已经存在的RAID阵列,加入到当前RAID阵列中;
>● -B, –build:构建一个老式RAID阵列(无“超级块”);
>● -C, –create:创建一个新式RAID阵列;
>● -F, –follow, –monitor:选择监控模式;
>● -G, –grow:改变当前RAID阵列的容量或形态,如RAID 10;
>● -I, –incremental:将单个设备加入某个RAID阵列,(多数情况下)使该RAID进入工作状态;
>● –auto-detect:检测所有RAID,并启动它们。要使用该模式,MD必须编译进内核,而不是以模块方式运行。
>如果使用–add、–fail或者–remove指令,则不需要指定工作模式,默认使用manage模式。除此之外的所有操作,都会被认为是misc模式。
>2.与工作模式无关的选项
>以下选项,与工作模式无关,任何模式都可以使用:
>● -h, –help:显示帮助信息;或者跟在选项后面,来显示该选项的帮助信息;
>● –help-options:显示详细的帮助信息;
>● -V, –version:显示mdadm的版本信息;
>● -v, –verbose:显示细节;使用两次则显示更多细节;
>● -q, –quiet:安静模式,不显示任何信息(除非有极为重要的信息要显示);
>● -b, –brief:较少的细节;和–detail及–examine选项搭配使用;
>● -f, –force:忽略错误,强制执行;
>● -c, –config=:指定配置文件,默认为/etc/mdadm/mdadm.conf;
>● -s, –scan:扫描配置文件或/proc/mdstat以查找丢失的信息;
>● -e, –metadata=:声明要使用的超级块(RAID 10 metadata)的类型。
>3.create/build/grow选项
>以下选项,可以用于mdadm的create/build/grow模式:
>● -n, –raid-devices=:指定RAID中的可用设备数目,这个数目只能由 –grow 修改;
>● -x, –spare-devices=:指定RAID的备用设备数目(备用设备也可以以后添加、移除);
>● -z, –size=:组建RAID1/4/5/6后从每个设备获取的空间总数;
>● -c, –chunk=:数据块大小,默认为64KB(比如要向RAID0中写一个128KB的文件,会分为两块,写在两个硬盘中);
>● -l, –level=:设置RAID级别(仅用于create/build,不支持grow);
>● -p, –parity=:设置RAID 10/5的数据布局;
>● –layout=:与–parity相同;
>● -R, –run:立即将该RAID投入运行;
>● -f, –force:强制执行该命令;
>● -a, –auto{=no,yes,md,mdp,part,p}{NN}:是否自动创建设备文件。
>4.manage选项
>以下选项,用于管理RAID:
>● -a, –add:向RAID中添加设备;
>● –re-add:将最近移除的设备,重新加入RAID 10阵列;
>● -r, –remove:移除设备。只能移除失败的或者备用设备;
>● -f, –fail:将设备标记为失败;
>● –set-faulty:同—fail。
>5.其他选项
>mdadm命令还有很多其他选项,我们在这里不做详细介绍,你可以参阅mdadm的手册页:
>$ man mdadm
>稍后我们会在示例中用到这些选项中的一部分,你可以留意其用法。
>创建RAID阵列
>我们在前面的步骤中,已经创建过几个RAID阵列,比如下面的命令,创建阵列md1:
>$ sudo mdadm –create /dev/md1 –auto=yes –force -R –level=raid 10 –raid- devices =4 /dev/sd[a-d]2
>我们也可以在创建阵列的同时,指定“备用”设备。
>备用设备是一个已经格式化的硬盘分区;使用备用设备的好处是,一旦某个在用设备发生异常,mdadm会自动用备