本文标识 : L00026
本文编辑 : 灭霸 编程工具 : redhat7 阅读时长 : 11分钟
实现raid5创建RAID:
1.创建raid设备md5,RAID级别5,可用设备3个,热备设备1个.分别为/dev/sdc1,/dev/sdc2,/dev/sdc3
mdadm –C /dev/md5 –l 5 –n 3 –x 1 /dev/sdc{1,2,3,4}
[root@localhost /]# mdadm -C /dev/md5 -l 5 -n 3 -x 1 /dev/sdc{1,2,3,4}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
2.创建RAID5
注:sdc1、sdc2、sdc3共同组成RAID5,sdc4为热备盘。并确认处于umount状态
格式化RAID 阵列
mkfs.xfs /dev/md5
[root@localhost dev]# mkfs.xfs /dev/md5
meta-data=/dev/md5 isize=256 agcount=8, agsize=130944 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0 finobt=0
data = bsize=4096 blocks=1047552, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
3、查看 RAID 的创建过程:
#mdadm –D /dev/md5
[root@localhost dev]# mdadm -D /dev/md5
/dev/md5:
Version : 1.2
Creation Time : Sun Nov 17 21:43:02 2019
Raid Level : raid5
Array Size : 4190208 (4.00 GiB 4.29 GB)
Used Dev Size : 2095104 (2046.34 MiB 2145.39 MB)
Raid Devices : 3
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Sun Nov 17 21:44:33 2019
State : clean
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Name : localhost.localdomain:5 (local to host localhost.localdomain)
UUID : 74fee35b:fc982c15:881cd1ff:1532dd5d
Events : 18
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 34 1 active sync /dev/sdc2
4 8 35 2 active sync /dev/sdc3
3 8 36 - spare /dev/sdc4
创建 /dev/md5 的挂载点,写入 /etc/fstab 文件
mount –a 测试 /etc/fstab 文件的正确性。
下面挂载磁盘
[root@localhost mnt]# mount /dev/md5 aa/
[root@localhost mnt]# ll
总用量 0
drwxr-xr-x. 2 root root 6 11月 17 21:44 aa
[root@localhost mnt]# cd aa/
[root@localhost aa]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda5 12G 2.9G 8.3G 27% /
devtmpfs 979M 0 979M 0% /dev
tmpfs 993M 144K 993M 1% /dev/shm
tmpfs 993M 9.0M 984M 1% /run
tmpfs 993M 0 993M 0% /sys/fs/cgroup
/dev/sda3 797M 36M 761M 5% /home
/dev/sda1 297M 130M 168M 44% /boot
tmpfs 199M 12K 199M 1% /run/user/0
/dev/sr0 3.8G 3.8G 0 100% /run/media/root/RHEL-7.2 Server.x86_64
/dev/md5 4.0G 33M 4.0G 1% /mnt/aa
当创建一个新阵列或者阵列重构时,设备需要进行同步操作,这一过程需要一定时间,可以通过查看/proc/mdstat文件,来显示阵列的当前状态以及同步进度、所需时间等。
查看数据同步过程:
cat /proc/mdstat
[root@localhost proc]# cat mdstat
Personalities : [raid6] [raid5] [raid4]
md5 : active raid5 sdc3[4] sdc4[3](S) sdc2[1] sdc1[0]
4190208 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
unused devices: <none>
可以很清楚地看出当前阵列的状态,各部分所代表的意思如下:
“[3/3]”中的第一位数表示阵列所包含的设备数,第二位数表示活动的设备数,如果有一个设备损坏,则第二位数将减1;
“[UUU]”标记当前阵列可以正常使用的设备情况,现假设/dev/sdb1出现故障,则该标记将变成[_UU],这时的阵列以降级模式运行,即该阵列仍然可用,但是不再具有任何冗余;
“sdc3[4]”指阵列所包含的设备数为n,若方括号内的数值小于n,则表示该设备为活动设备,若数值大于等于n,则该设备为备份设备,当一个设备
出现故障的时候,相应设备的方括号后将被标以(F)。
将 /dev/sdb1 标记为已损坏的设备
mdadm /dev/md5 -f /dev/sdb1
[root@localhost proc]# mdadm /dev/md5 -f /dev/sdc1
mdadm: set /dev/sdc1 faulty in /dev/md5
[root@localhost proc]# mdadm -D /dev/md5
/dev/md5:
Version : 1.2
Creation Time : Sun Nov 17 21:43:02 2019
Raid Level : raid5
Array Size : 4190208 (4.00 GiB 4.29 GB)
Used Dev Size : 2095104 (2046.34 MiB 2145.39 MB)
Raid Devices : 3
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Sun Nov 17 21:55:51 2019
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 1
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Name : localhost.localdomain:5 (local to host localhost.localdomain)
UUID : 74fee35b:fc982c15:881cd1ff:1532dd5d
Events : 37
Number Major Minor RaidDevice State
3 8 36 0 active sync /dev/sdc4
1 8 34 1 active sync /dev/sdc2
4 8 35 2 active sync /dev/sdc3
0 8 33 - faulty /dev/sdc1
移除损坏的设备
mdadm /dev/md5 -r /dev/sdb1
查看 sdb1 是否存在 RAID 列表中
#mdadm -D /dev/md5
[root@localhost proc]# mdadm /dev/md5 -r /dev/sdc1
mdadm: hot removed /dev/sdc1 from /dev/md5
[root@localhost proc]# mdadm -D /dev/md5
/dev/md5:
Version : 1.2
Creation Time : Sun Nov 17 21:43:02 2019
Raid Level : raid5
Array Size : 4190208 (4.00 GiB 4.29 GB)
Used Dev Size : 2095104 (2046.34 MiB 2145.39 MB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Sun Nov 17 21:56:40 2019
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Name : localhost.localdomain:5 (local to host localhost.localdomain)
UUID : 74fee35b:fc982c15:881cd1ff:1532dd5d
Events : 38
Number Major Minor RaidDevice State
3 8 36 0 active sync /dev/sdc4
1 8 34 1 active sync /dev/sdc2
4 8 35 2 active sync /dev/sdc3
4.将新设备添加到阵列
1)清空/dev/sdb1的superblcok标记(修复)
#mdadm --misc --zero-superblock -f/dev/sdb1
2)把新的/dev/sdb1添加至RAID列表中
# mdadm /dev/md5 -a /dev/sdb1
[root@localhost proc]# mdadm --misc --zero-superblock -f /dev/sdc1
[root@localhost proc]# mdadm /dev/md5 -a /dev/sdc1
mdadm: added /dev/sdc1
停止 ( 删除 ) 阵列
umount / 挂载点
mdadm -S /dev/md5显示指定阵列的详细信息
mdadm -D /dev/md5
修改/etc/fstab 等配置文件,把相关的地方去掉
最后,用 fdisk 对磁盘进行重新分区即可。