一、制作RAID1阵列
1、添加磁盘
1)使用 lsblk
查看当前主机磁盘分区情况
2)添加两块大小一致的硬盘
3)查看主机总线号
ls /sys/class/scsi_host/
4)重新扫描SCSI总线来添加设备
echo "- - -" > /sys/class/scsi_host/host0/scan
echo "- - -" > /sys/class/scsi_host/host1/scan
echo "- - -" > /sys/class/scsi_host/host2/scan
再通过 lsblk
查询当前主机磁盘,此刻即可看到新添加的两块 sdb sdc
2、对新硬盘进行分区
使用 fdisk
进行分区,下图为/dev/sdb设备示例,/dev/sdc同理即可
3、制作RAID1
1)使用 mdadm
创建raid1
mdadm -C /dev/md127 -ayes -l1 -n2 /dev/sd[b,c]1
参数说明:
- -C:创建阵列
- /dev/md1:阵列的设备名称
- -a:同意创建设备
- -l:阵列模式,1为raid1
- -n:阵列磁盘的数目
2)查看是否制作成功
查看/proc路径下mdstat文件可以看到三块硬盘正在做同步,等一会儿时间就会同步成功,最后再用cat /proc/mdstat
mdadm
工具查看RAID1的详细信息mdadm -D /dev/md127
3)挂载使用
格式化硬盘:mkfs.ext4 /dev/md127
创建workspace目录,进行挂载
将挂载的阵列添加至fstab文件中
echo "/dev/md127 /workspace ext4 defaults 0 0" >> /etc/fstab
二、模拟硬盘故障并修复RAID1阵列
1、模拟一块硬盘坏掉
先在阵列挂载的目录随意写入数据:
然后移除一块虚拟机硬盘后重启:
查看当前系统硬盘情况,可以看到当前RAID阵列中已经被移除出一块磁盘
但是数据依旧存在,这就表现了RAID1的数据冗余功能
2、添加新设备,恢复RAID1阵列
3、重新扫描SCSI总线来添加设备
echo "- - -" > /sys/class/scsi_host/host0/scan
echo "- - -" > /sys/class/scsi_host/host1/scan
echo "- - -" > /sys/class/scsi_host/host2/scan
4、同步两硬盘分区情况
sfdisk -d /dev/sdb | sfdisk -f /dev/sdc
参数解释:
sdb代表第一块盘(正常的硬盘) sdc代表第二块盘 (重新更换的硬盘以实际识别出来的盘符为准)
- -d:显示硬盘分区的设置
- -f:禁用所有一致性检查
5、将第二块加入RAID中
mdadm /dev/md127 -a /dev/sdc1
6、查看阵列状态
mdadm -D /dev/md127
cat /proc/mdstat
三、删除软RAID
1、卸载设备
umount /dev/md127
2、停止raid设备
mdadm -S /dev/md127
3、删除raid中的所有磁盘
mdadm --misc --zero-superblock /dev/sdb
mdadm --misc --zero-superblock /dev/sdc
4、删除配置文件
rm -f /etc/mdadm.conf
5、修改fstab文件
vim /etc/fstab
,将raid相关的内容删除即可。
至此,已经全部完成了