VMware Linux RAID5 配置
VM环境:VMware Workstation
OS环境:CentOS 5.5
一、在VM中,软RAID 设备是/dev/md*, md (Multiple Devices)
二、在RAID5中,至少要有3块硬盘,因为有差错检验.
三、在软RAID5
中,实际的硬盘大小应该为实际硬盘数减一,即(N-1),减去的那块空间奇偶校验.这个空间是分散到每个磁盘上的.
四、在软RAID5中,实际的每块硬盘的大小,由最小的那块硬盘来决定.因为数据会拆开平均分配给每块硬盘.
五、所有实际RAID硬盘大小应该是(硬盘数or硬盘的分区数-1)*最小的那个硬盘大小or分区大小
六、因为adadm是个工具,并没服务进程去读取/etc/mdadm.conf文件,所以,这个/etc/mdadm.conf文件是系统kernel默认读取的
RAID模块为kernel支持模块,/etc/mdadm.conf作为默认的配置文件,系统启动时加载RAID模块读默认配置文件/etc/mdadm.conf,与/etc/hosts,/etc/resolv.conf之类一 样。
实验
首先在VM上的Linux安装4块硬盘,/dev/sdb /dev/sdc /dev/sdd /dev/sde 每块硬盘20G
fdisk -l
1.首选把这4块硬盘合并成raid.
mdadm -Cv /dev/md0 -l5 –raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
# C 为创建RAID
# v 为显示创建信息
# /dev/md0 为软raid设备
# –raid-devices 为几块硬盘
2. 这时你可以用mdadm -D /dev/md0 参看RAID创建情况
这时,还在编译,都它编译好了.就可以用了3. 就创建了一个/dev/md0的raid了.但它的大小是(硬盘数or硬盘的分区数-1)*最小的那个硬盘大小or分区大小
4.如果要使用,还必须指定/dev/md0的文件格式
# mkfs.ext3 /dev/md0
5.这个时候,我们就要使用fdisk /dev/md0 重新对新的/dev/md0进行分区
######################这里分完区就可以用了#########################################.6.如果想控制页面的大小就需要加-c32 (32标识每个页面32K,默认是64K),页面大小直接影响到IO
mdadm -Cv /dev/md0 -c32 -l5 –raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
通过mdadm -D /dev/md0就可以看到
7.mdadm -Cv /dev/md0 -l5 –raid-devices=4 –spare-devices=1/dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf
# 这个是建立一个热备磁盘,如果某个磁盘坏了.可以自动顶上去.
注:
用/dev/md0 的软raid设备生成的磁盘整列.无法进行分区.
mdadm -Cv /dev/md0 -l5 -c32 –raid-devices=5 –spare-devices=1 /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg
# 这里,无法对/dev/md0分区后的设备进行mkfs.ext* 操作,无法创建分区的格式.所以挂载md0分区后的设备
# 例如 mkfs.ext3 /etc/md0p1 // error
所以需要
创建md设备时,用/dev/md_d0替代/dev/md0,才能对MD设备进行分区。
mdadm -Cv –auto=mdp /dev/md_d0 -l5 -c32 –raid-devices=5 –spare-devices=1 /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg基本操作
mdadm -S /dev/md0 #关闭raid
mdadm -A /dev/md0 #启动raid
mdadm -E /dev/sdb #如果你不知道哪个分区属于哪个磁盘整列,可以用这个命令.
#UUID就是这个磁盘整列的唯一标识符.
mdadm -Av /dev/md0 –uuid=8ba81579:e20fb0e8:e040da0e:f0b3fec8 # 获得UUID后,也可以这样激活阵列
mdadm /dev/md0 –fail /dev/sdb –remove /dev/sdb # 删除某个硬盘或分区.如果有一份热备用盘.如果删除.热备份盘会自动启动.
mdadm /dev/md0 –add /dev/sdb # 新加一块硬盘.
# 重启后,使RAID从内核启动.
mdadm –detail –scan >> /etc/mdadm.conf # 放入配置文件.再次重启raid还是存在