Linux RAID 10 配置
测试环境:
VMware Workstation Pro12
Red Hat Enterprise Linux 7 64-bit
资料来原《Linux就该这么学》
RAID 10技术是RAID 1+RAID 0技术的一个“组合体”。如图7-4所示,RAID 10技术需要至少4块硬盘来组建,其中先分别两两制作成RAID 1磁盘阵列,以保证数据的安全性;然后再对两个RAID 1磁盘阵列实施RAID 0技术,进一步提高硬盘设备的读写速度。这样从理论上来讲,只要坏的不是同一组中的所有硬盘,那么最多可以损坏50%的硬盘设备而不丢失数据。由于RAID 10技术继承了RAID 0的高读写速度和RAID 1的数据安全性,在不考虑成本的情况下RAID 10的性能都超过了RAID 5,因此当前成为广泛使用的一种存储技术。
虚拟机增加硬盘
[[email protected] ~]# fdisk –l
mdadm用于管理Linux系统中的软件RAID硬盘阵列,格式为“mdadm [模式] <RAID设备名称> [选项] [成员设备名称]
使用mdadm命令创建RAID 10,名称为“/dev/md1”
mdadm参数,-C参数代表创建一个RAID阵列卡;-v参数显示创建的过程,设备名称/dev/md1,/dev/md1就是创建的RAID磁盘阵列的名称;-a yes参数代表自动创建设备文件;-n 4参数代表使用4块硬盘来创建RAID磁盘阵列;而-l 10参数则代表RAID 10; 须要做阵列的4块硬盘的名称
[[email protected] ~]# mdadm -Cv /dev/md1 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
mdadm: layout defaults to n2
mdadm: layout defaults to n2
mdadm: chunk size defaults to 512K
mdadm: size set to 8384000K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
mkfs命令,把RAID磁盘阵列格式化为ext4格式
[[email protected] ~]# mkfs.ext4 /dev/md1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
1048576 inodes, 4192000 blocks
209600 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2151677952
128 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
创建挂载文件
[[email protected] ~]# mkdir /xysmb02
Mount 设备挂载/dev/md1
[[email protected] ~]# mount /dev/md1 /xysmb02
[[email protected] ~]# df –h \\挂载成功后查看可用空间
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/rhel-root 18G 3.4G 15G 19% /
devtmpfs 905M 0 905M 0% /dev
tmpfs 914M 92K 914M 1% /dev/shm
tmpfs 914M 9.0M 905M 1% /run
tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/sdb1 2.0G 6.1M 1.8G 1% /backup
/dev/sda1 497M 119M 379M 24% /boot
/dev/sr0 3.5G 3.5G 0 100% /run/media/xyadmin/RHEL-7.0 Server.x86_64
/dev/md1 16G 45M 15G 1% /xysmb02
查看硬盘阵列信息
[[email protected] ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Jul 12 11:43:40 2019
Raid Level : raid10
Array Size : 16768000 (15.99 GiB 17.17 GB)
Used Dev Size : 8384000 (8.00 GiB 8.59 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Fri Jul 12 11:45:36 2019
State : clean
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0
Layout : near=2
Chunk Size : 512K
Name : mail:1 (local to host mail)
UUID : 2a57a5e6:710def9b:1a32acf1:4addd72e
Events : 19
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 64 3 active sync /dev/sde
将挂载信息写入到配置文件中,使其永久生效
[[email protected] ~]#vi /etc/fstab
当日常维护中发现RAID硬盘阵列中有硬盘损坏,确定不能正常使用后,使用mdadm将损坏硬盘移除,再查看RAID硬盘阵列状态变化
[[email protected] ~]# mdadm /dev/md1 -f /dev/sde
mdadm: set /dev/sdf faulty in /dev/md1
[[email protected] ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Jul 12 11:43:40 2019
Raid Level : raid10
Array Size : 16768000 (15.99 GiB 17.17 GB)
Used Dev Size : 8384000 (8.00 GiB 8.59 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Fri Jul 12 12:08:27 2019
State : clean, degraded
Active Devices : 3
Working Devices : 3
Failed Devices : 1
Spare Devices : 0
Layout : near=2
Chunk Size : 512K
Name : mail:1 (local to host mail)
UUID : 2a57a5e6:710def9b:1a32acf1:4addd72e
Events : 21
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 0 0 3 removed
3 8 64 - faulty /dev/sde
重启系统,后把新的硬盘添加到RAID磁盘阵列中
[[email protected] ~]# umount /xysmb02
[[email protected] ~]# mdadm /dev/md1 -a /dev/sde
mdadm: added /dev/sde
[[email protected] ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Jul 12 11:43:40 2019
Raid Level : raid10
Array Size : 16768000 (15.99 GiB 17.17 GB)
Used Dev Size : 8384000 (8.00 GiB 8.59 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Fri Jul 12 12:21:39 2019
State : clean, degraded, recovering
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1
Layout : near=2
Chunk Size : 512K
Rebuild Status : 28% complete
Name : mail:1 (local to host mail)
UUID : 2a57a5e6:710def9b:1a32acf1:4addd72e
Events : 45
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
4 8 64 3 spare rebuilding /dev/sde
\\未被**,正在构建中的成员,正在传输数据,数据同步后如下
[[email protected] ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Jul 12 11:43:40 2019
Raid Level : raid10
Array Size : 16768000 (15.99 GiB 17.17 GB)
Used Dev Size : 8384000 (8.00 GiB 8.59 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Fri Jul 12 12:22:10 2019
State : clean
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0
Layout : near=2
Chunk Size : 512K
Name : mail:1 (local to host mail)
UUID : 2a57a5e6:710def9b:1a32acf1:4addd72e
Events : 60
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
4 8 64 3 active sync /dev/sde
RAID 10磁盘阵列中最多允许50%的硬盘设备发生故障,但是存在这样一种极端情况,即同一RAID 1磁盘阵列中的硬盘设备若全部损坏,也会导致数据丢失。