首先需要4块磁盘,3块作为raid组成,1块磁盘最为备用盘使用
4块磁盘的设备名分别为/dev/sdb、/dev/sdc、/dev/sdd、/dev/sde
1.虚拟机添加4块磁盘,磁盘大小为20G,并使用以下命令来识别的新增加的磁盘
echo '- - -' > /sys/class/scsi_host/host0/scan
echo '- - -' > /sys/class/scsi_host/host1/scan
echo '- - -' > /sys/class/scsi_host/host2/scan
2.对4块硬盘分别使用fdisk格式化,注意修改磁盘的ID号为fd
对单块磁盘分区完成以后,可以使用dd命令对其他磁盘快速分区
# dd if=/dev/sdb of=/dev/sdc skip=446 seek=446 bs=1 count=66 (64字节的分区表及最后2个字节的分区标志位55AA)
3.mdadm -C /dev/md0 -a yes -l5 -c32 -n3 -x1 /dev/sd{b,c,d,e}1 -c 指定chunk的大小为32k
查看创建的Raid信息,可使用mdadm -D /dev/md0
4.Raid5创建文件系统,mkfs.ext4 /dev/md0 -L raid5
5.mkdir /mnt/raid5 创建挂载点文件夹
6.vim /etc/fstab,注意使用:r!blkid /dev/md0后变价
UUID=ed5b5fb3-6ee1-4be5-9a86-c2279b81750d /mnt/raid5 ext4 defaults 0 0
7.mount -a 挂载raid5文件系统
8.为了使得创建的RAID,在重启RAID之后,RAID依然可用需要输出配置文件
# mdadm -Ds /dev/md0 > /etc/mdadm.conf
补充:重启RAID
mdadm -S /dev/md0 停用RAID
mdadm -A /dev/md0 启用RAID
测试raid5的读写速度
dd if=/dev/zero of=/mnt/raid5/testfile bs=1M count=1024 测试写入速度
dd if=/mnt/raid5/testfile of=/dev/zero 测试读取速度
经测定,raid的读写速度较普通磁盘的读写性能高出很多
备用磁盘会在RAID中的磁盘出现故障时顶替坏盘,可以使用命令模拟RAID出现坏盘
# mdadm /dev/md0 -f /dev/sdb1
[root@centos6 ~]# mdadm /dev/md0 -f /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md0 提示的信息好像出错信息,不过是正常的模拟提示信息
使用mdadm -D /dev/md0 可以查看到备用盘接替坏盘过程的百分比,为了观察,可以使用watch命令
# watch -n 1 mdadm -D /dev/md0
对于模拟的故障坏盘可以使用 mdadm /dev/md0 -r /dev/sdb1 将其卸载
如果修复后的磁盘又可以使用 mdadm /dev/md0 -a /dev/sdb1 将其重新添加至raid,做为RAID的备用盘
如果出现raid的4块磁盘坏掉了两颗,则RAID的状态则会显示降级使用
如果之前的raid空间不够是可以使用如下命令,新增加的磁盘记得要先格式化
# mdadm -G /dev/md0 -n4 -a /dev/sdf1 之前的raid的磁盘数n为3(不包含备用盘)
若使用df -h 查看md0的操作系统空间不够,可以使用resize命令来同步空间
# resize2fs /dev/md0 同步文件系统空间(该命令只适合ext系列文件系统)
# xfs_growfs /mnt/raid5 xfs文件系统同步空间命令,注意后面的参数是挂载点不是设备名
删除raid
1.卸载 umount /mnt/raid5
2.删除 /etc/fstab中的挂载信息
3.rm -rf /etc/mdadm.conf 删除raid的配置文件
4.清除raid超级块信息 mdadm --zero-superblock /dev/sdb1 (/dev/sdc1, /dev/sdd1等raid磁盘组成)
不删除的情况使用 blkid 会查看到raid的超级块信息
补充: Centos6 同步分区的时候使用partx -a /dev/sdc(增加分区的时候使用)
删除分区的时候使用 partx -d -nr 1-3 /dev/sdc 删除分区的时候使用