【Centos7系列】数据冗余raid-RAID5

Iceboundnana 发布于 2023-05-25 449 次阅读


信息介绍

  • 特点
  1. 分布奇偶位条带。是一种存储性能、数据安全和存储成本兼顾的存储方案,可理解为RAID 0和RAID 1的折衷方案
  2. 把数据和相对应的奇偶校验信息存储到组成RAID 5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID 5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。相对于RAID 0,只是多了一个奇偶校验信息
  3. 多个数据可对应一个奇偶校验信息
  • 磁盘及容量

硬盘数:三个及以上 容量:(总磁盘个数-1)*(单个磁盘容量)

  • 优缺点

优点:利用奇偶校验进行冗余,可容错,安全性及读性能高 缺点:随机和连续写性能低

  • 示意图如下:

配置Raid5

  1. 准备四个大小为20GB分区(sdd、sde、sdf、sdg)
[root@localhost ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   20G  0 disk
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0    2G  0 part [SWAP]
└─sda3   8:3    0   17G  0 part /
sdb      8:16   0   20G  0 disk
sdc      8:32   0   20G  0 disk
sdd      8:48   0   20G  0 disk
sde      8:64   0   20G  0 disk
sdf      8:80   0   20G  0 disk
sdg      8:96   0   20G  0 disk
  1. 创建Raid 5设备
[root@localhost ~]# mdadm -C -v /dev/md5 -l 5 -n 3 /dev/sdd /dev/sde /dev/sdf -x 1 /dev/sdg
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 20954112K
mdadm: Fail create md5 when using /sys/module/md_mod/parameters/new_array
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
  • 参数解析 x:热备盘数量
  1. RAID文件系统创建
[root@localhost ~]# mkfs.xfs /dev/md5
meta-data=/dev/md5               isize=512    agcount=16, agsize=654720 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=10475520, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=5120, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
  1. 挂载使用
[root@localhost ~]# mkdir /raid5
[root@localhost ~]# mount /dev/md5 /raid5
[root@localhost ~]# df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda3      xfs        17G 1003M   17G   6% /
devtmpfs       devtmpfs  981M     0  981M   0% /dev
tmpfs          tmpfs     992M     0  992M   0% /dev/shm
tmpfs          tmpfs     992M  9.5M  982M   1% /run
tmpfs          tmpfs     992M     0  992M   0% /sys/fs/cgroup
/dev/sda1      xfs      1014M  124M  891M  13% /boot
tmpfs          tmpfs     199M     0  199M   0% /run/user/0
/dev/md5       xfs        40G   33M   40G   1% /raid5
  • 模拟故障
  1. 查看RAID详细信息
[root@localhost ~]# mdadm -D /dev/md5 
/dev/md5: 
Version : 1.2 
Creation Time : Tue May 4 11:40:01 2021 
Raid Level : raid5 Array 
Size : 41908224 (39.97 GiB 42.91 GB) 
Used Dev Size : 20954112 (19.98 GiB 21.46 GB) 
Raid Devices : 3 
Total Devices : 4 
Persistence : Superblock is persistent 
Update Time : Tue May 4 11:44:47 2021 
State : clean 
Active Devices : 3 
Working Devices : 4 
Failed Devices : 0 
Spare Devices : 1 

Layout : left-symmetric 
Chunk Size : 512K

Consistency Policy : resync

          Name : localhost.localdomain:5  (local to host localhost.localdomain)
          UUID : 681c8838:ba330ec8:5b3c1a72:be5448f4
        Events : 18

Number   Major   Minor   RaidDevice State
   0       8       48        0      active sync   /dev/sdd
   1       8       64        1      active sync   /dev/sde
   4       8       80        2      active sync   /dev/sdf

   3       8       96        -      spare   /dev/sdg

2. 模拟硬盘故障

[root@localhost ~]# mdadm -f /dev/md5 /dev/sde
mdadm: set /dev/sde faulty in /dev/md5
  1. 查看RAID详细信息
[root@localhost ~]# mdadm -D /dev/md5
/dev/md5:
Version : 1.2
Creation Time : Tue May 4 11:40:01 2021
Raid Level : raid5
Array Size : 41908224 (39.97 GiB 42.91 GB)
Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
Raid Devices : 3
Total Devices : 4
Persistence : Superblock is persistent
Update Time : Tue May  4 11:50:14 2021
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 1
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Consistency Policy : resync
Name : localhost.localdomain:5  (local to host localhost.localdomain)
UUID : 681c8838:ba330ec8:5b3c1a72:be5448f4
Events : 39
Number   Major   Minor   RaidDevice State
   0       8       48        0      active sync   /dev/sdd
   3       8       96        1      active sync   /dev/sdg
   4       8       80        2      active sync   /dev/sdf

   1       8       64        -      faulty   /dev/sde
结果分析:
原来的热备盘/dev/sdg正在参与RAID 5的重建,而原来的/dev/sdb变成了坏盘faulty
此作者没有提供个人介绍。
最后更新于 2023-05-31