一、RAID 介绍

        RAID ( Redundant Array of Independent Disk 独立冗余磁盘阵列 ) 技术是加州大学伯克利分校 1987 年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损失而开发出一定水平的数据保护技术。RAID 就是一种由多块廉价磁盘构成的冗余阵列,在操作系统下是作为一个独立的大型存储设备出现。RAID可以充分发挥出多块硬盘的优势,可以提升硬盘速度,增大容量,提供容错功能,能够确保数据安全性,易于管理的优点,在任何一块硬盘出现问题的情况下都可以继续工作,不会 受到损坏硬盘的影响。
 

二、常见的 RAID 级别

2.1、RAID0

RAID 的特点:
  •  至少需要两块磁盘
  •  数据条带化分布到磁盘,高的读写性能,100% 高存储空间利用率
  •  数据没有冗余策略,一块磁盘故障,数据将无法恢复
  •  应用场景:
     对性能要求高但对数据安全性和可靠性要求不高的场景,比如音频、视频等的存储

2.2、RAID1

RAID1 的特点:
  •  至少需要2块磁盘
  •  数据镜像备份写到磁盘上(工作盘和镜像盘),可靠性高,磁盘利用率为50%
  •  读性能可以,但写性能不佳
  •  一块磁盘故障,不会影响数据的读写
  •  应用场景:
    •   对数据安全可靠要求较高的场景,比如邮件系统、交易系统等。

2.3、RAID5 

RAID5 特点:
  • 至少需要 3 块磁盘
  • 数据条带化存储在磁盘,读写性能好,磁盘利用率为 (n-1)/n
  • 以奇偶校验 (分散) 做数据冗余
  • 一块磁盘故障,可根据其他数据块和对应的校验数据重构损坏数据(消耗性能)
  • 是目前综合性能最佳的数据保护解决方案
  • 兼顾了存储性能、数据安全和存储成本等各方面因素(性价比高)
  • 适用于大部分的应用场景

2.4、RAID 6

RAID6 特点:
  •  至少需要 4 块磁盘
  •  数据条带化存储在磁盘,读取性能好,容错能力强
  •  采用双重校验方式保证数据的安全性
  •  如果 2 块磁盘同时故障,可以通过两个校验数据来重建两个磁盘的数据
  •  成本要比其他等级高,并且更复杂
  •  一般用于对数据安全性要求非常高的场合

2.5、RAID10 

RAID10特点:
  •  RAID10是 raid1+raid0 的组合
  •  至少需要4块磁盘
  •  两块硬盘为一组先做 raid1,再将做好 raid1 的两组做raid0
  •  兼顾数据的冗余(raid1镜像)和读写性能(raid0数据条带化)
  •  磁盘利用率为50%,成本较高

三、RAID 比较

 
类型
读写性能
可靠性
磁盘利用率
成本
RAID0
最好
最低
100%
较低
RAID1
读快;写一般
50%
RAID5
读:近似RAID0 写:多了校验
RAID0<RAID5<RAID1
(n-1)/n
RAID0<RAID5<RAID1
RAID6
读:近似RAID0 写:多了双重校验
RAID6>RAID5
RAID6<RAID5
RAID6>RAID1
RAID10
读:RAID10=RAID0 写:RAID10=RAID1
50%
最高

四、RAID 分类

4.1 软 RAID

软 RAID 运行于操作系统底层,将 SCSI 或者 IDE 控制器提交上来的物理磁盘,虚拟成虚拟磁盘,再提交给管理程序来进行管理。软 RAID 有以下特点:
  •  节省成本,系统支持就可以使用相应功能
  •  占用内存空间
  •  占用 CPU 资源
  •  如果程序或者操作系统故障就无法运行

4.2 硬 RAID

通过用硬件来实现 RAID 功能的就是硬 RAID,独立的 RAID 卡,主板集成的 RAID 芯片都是硬 RAID。RAID卡就是用来实现 RAID 功能的板卡。硬RAID的特点:
  •  硬RAID有独立的运算单元,性能好
  •  可能需要单独购买额外的硬件
  •  不同RAID卡支持的功能不同,需要根据自己的需求选择

五、实例

环境准备,添加一个 20 G 的虚拟硬盘,分成 10 个 2G 的分区
[root@long90 ~]# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda           8:0    0   40G  0 disk
├─sda1        8:1    0    1G  0 part /boot
└─sda2        8:2    0   39G  0 part
  ├─cs-root 253:0    0 35.1G  0 lvm  /
  └─cs-swap 253:1    0    4G  0 lvm  [SWAP]
sdb           8:16   0   20G  0 disk
├─sdb1        8:17   0    2G  0 part
├─sdb2        8:18   0    2G  0 part
├─sdb3        8:19   0    2G  0 part
├─sdb4        8:20   0    2G  0 part
├─sdb5        8:21   0    2G  0 part
├─sdb6        8:22   0    2G  0 part
├─sdb7        8:23   0    2G  0 part
├─sdb8        8:24   0    2G  0 part
└─sdb9        8:25   0    2G  0 part
sr0          11:0    1 10.5G  0 rom  /media/cdrom

5.1、创建 raid0

系统中如果没有mdadm命令请安装相关工具:
[root@long90 ~]# which mdadm  # dnf install -y mdadm
/usr/sbin/mdadm

a、创建 raid0

创建 raid0 的方式:
mdadm --create /dev/md0 --raid-devices=2 /dev/sdb1 /dev/sdb2 --level=0
或 
mdadm -C /dev/md0 -l 0 -n 2 /dev/sdb1 /dev/sdb2

 

[root@long90 ~]# mdadm --create /dev/md0 --raid-devices=2 /dev/sdb1 /dev/sdb2 --level=0
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

查看所有 RAID 信息

[root@long90 ~]# cat /proc/mdstat
Personalities : [raid0]
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks
unused devices: <none>

查看指定 RAID 详细信息

[root@long90 ~]# mdadm -D /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Tue Dec 13 10:38:17 2022
        Raid Level : raid0
        Array Size : 4188160 (3.99 GiB 4.29 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent
       Update Time : Tue Dec 13 10:38:17 2022
             State : clean
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0
            Layout : -unknown-
        Chunk Size : 512

Consistency Policy : none
              Name : long90:0  (local to host long90)
              UUID : 07944db9:f88f9fff:d8b5fb39:a3b819c4
            Events : 0
    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       18        1      active sync   /dev/sdb2

b、格式化挂载使用

[root@long90 ~]# mkfs.ext4 /dev/md0
mke2fs 1.45.6 (20-Mar-2020)
创建含有 1047040 个块(每块 4k)和 262144 个inode的文件系统
文件系统UUID:46918701-7363-4e4a-b14e-8c8784da43d2
超级块的备份存储于下列块:
    32768, 98304, 163840, 229376, 294912, 819200, 884736

正在分配组表: 完成                            
正在写入inode表: 完成                            
创建日志(16384 个块)完成
写入超级块和文件系统账户统计信息: 已完成

[root@long90 ~]# mkdir /root/md0
[root@long90 ~]# mount /dev/md0 /root/md0/
[root@long90 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs             1.8G     0  1.8G    0% /dev
tmpfs                1.9G     0  1.9G    0% /dev/shm
tmpfs                1.9G  9.5M  1.8G    1% /run
tmpfs                1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/mapper/cs-root   36G  6.0G   30G   17% /
/dev/sr0              11G   11G     0  100% /media/cdrom
/dev/sda1           1014M  256M  759M   26% /boot
tmpfs                371M     0  371M    0% /run/user/0
tmpfs                371M   12K  371M    1% /run/user/42
/dev/md0             3.9G   16M  3.7G    1% /root/md0

[root@long90 ~]# iostat -m -d /dev/sdb1 /dev/sdb2 2
Linux 4.18.0-394.el8.x86_64 (long90)     2022年12月13日     _x86_64_    (2 CPU)
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sdb1              0.01         0.00         0.00          4         65
sdb2              0.01         0.00         0.00          3         65
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sdb1              0.00         0.00         0.00          0          0
sdb2              0.00         0.00         0.00          0          0

[root@long90 ~]# cd /root/md0/
[root@long90 md0]# dd if=/dev/zero of=/root/md0/file bs=1M count=1024
记录了1024+0 的读入
记录了1024+0 的写出
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 17.8459 s, 60.2 MB/s

5.2、创建 RAID1

[root@long90 md0]# mdadm -C /dev/md1 -l 1 -n 2 /dev/sdb3 /dev/sdb4
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
Continue creating array? (y/n) y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.

[root@long90 md0]# cat /proc/mdstat
Personalities : [raid0] [raid1]
md1 : active raid1 sdb4[1] sdb3[0]
      2094080 blocks super 1.2 [2/2] [UU]
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks

[root@long90 md0]# mkfs.ext4 /dev/md1
mke2fs 1.45.6 (20-Mar-2020)
创建含有 523520 个块(每块 4k)和 131072 个inode的文件系统
文件系统UUID:27f25fbd-6a06-4d74-aeb7-d1a62989969f
超级块的备份存储于下列块:
    32768, 98304, 163840, 229376, 294912
正在分配组表: 完成                            
正在写入inode表: 完成                            
创建日志(8192 个块)完成
写入超级块和文件系统账户统计信息: 已完成

[root@long90 md0]# mkdir /root/md1
[root@long90 md0]# mount /dev/md1 /root/md1
[root@long90 md0]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/mapper/cs-root   36G  6.0G   30G   17% /
/dev/sr0              11G   11G     0  100% /media/cdrom
/dev/sda1           1014M  256M  759M   26% /boot
/dev/md0             3.9G  1.1G  2.7G   28% /root/md0
/dev/md1             2.0G  6.0M  1.9G    1% /root/md1

测试验证热插拔:

1. 模拟一块盘故障(将磁盘标记为失效)
#-f or --fail  表示失效
[root@long90 md0]# mdadm /dev/md1 -f /dev/sdb3
mdadm: set /dev/sdb3 faulty in /dev/md1

2. 查看raid1状态

[root@long90 md0]# cat /proc/mdstat
Personalities : [raid0] [raid1]
md1 : active raid1 sdb4[1] sdb3[0](F)  # F 表示失效
      2094080 blocks super 1.2 [2/1] [_U]
      
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks

3. 移除故障或者失效硬盘(热拔)

[root@long90 md0]# mdadm /dev/md1 -r /dev/sdb3
mdadm: hot removed /dev/sdb3 from /dev/md1
[root@long90 md0]# mdadm -D /dev/md1
/dev/md1:
           Version : 1.2
     Creation Time : Tue Dec 13 20:40:22 2022
        Raid Level : raid1
        Array Size : 2094080 (2045.00 MiB 2144.34 MB)
     Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)
      Raid Devices : 2
     Total Devices : 1
       Persistence : Superblock is persistent

       Update Time : Tue Dec 13 20:52:47 2022
             State : clean, degraded
    Active Devices : 1
   Working Devices : 1
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : resync
              Name : long90:1  (local to host long90)
              UUID : 2b696d44:595da677:e34d95aa:1af0bd62
            Events : 20
    Number   Major   Minor   RaidDevice State
       -       0        0        0      removed
       1       8       20        1      active sync   /dev/sdb4

[root@long90 md0]# mdadm /dev/md1 -a /dev/sdb5
mdadm: added /dev/sdb5
[root@long90 md0]# cat /proc/mdstat
Personalities : [raid0] [raid1]
md1 : active raid1 sdb5[2] sdb4[1]
      2094080 blocks super 1.2 [2/2] [UU]
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks
unused devices: <none>
[root@long90 md0]# mdadm -D /dev/md1
/dev/md1:
           Version : 1.2
     Creation Time : Tue Dec 13 20:40:22 2022
        Raid Level : raid1
        Array Size : 2094080 (2045.00 MiB 2144.34 MB)
     Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent
       Update Time : Tue Dec 13 20:56:30 2022
             State : clean
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0
Consistency Policy : resync
              Name : long90:1  (local to host long90)
              UUID : 2b696d44:595da677:e34d95aa:1af0bd62
            Events : 39
    Number   Major   Minor   RaidDevice State
       2       8       21        0      active sync   /dev/sdb5
       1       8       20        1      active sync   /dev/sdb4

5.3、创建 RAID5 

#-x, --spare-devices=  表示指定热备盘
说明:热备盘表示当其中一块盘故障后,热备盘会立马顶上去,而不需要人为手动干预。
[root@long90 md0]# mdadm -C /dev/md5 -l 5 -n 3 -x 1 /dev/sdb{6,7,8,9}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[root@long90 md0]# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4]
md5 : active raid5 sdb8[4] sdb9[3](S) sdb7[1] sdb6[0]        #S备用盘
      4188160 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
md1 : active raid1 sdb5[2] sdb4[1]
      2094080 blocks super 1.2 [2/2] [UU]
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks

[root@long90 md0]# mdadm -D /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Tue Dec 13 21:08:02 2022
        Raid Level : raid5
        Array Size : 4188160 (3.99 GiB 4.29 GB)
     Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)
      Raid Devices : 3
     Total Devices : 4
       Persistence : Superblock is persistent
       Update Time : Tue Dec 13 21:08:15 2022
             State : clean
    Active Devices : 3
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 1
            Layout : left-symmetric
        Chunk Size : 512K
Consistency Policy : resync
              Name : long90:5  (local to host long90)
              UUID : 2599f3d7:58f46432:0b7ea595:f8befb4e
            Events : 18
    Number   Major   Minor   RaidDevice State
       0       8       22        0      active sync   /dev/sdb6
       1       8       23        1      active sync   /dev/sdb7
       4       8       24        2      active sync   /dev/sdb8
       3       8       25        -      spare   /dev/sdb9

格式化挂载使用:

[root@long90 md0]# mkfs.ext4 /dev/md5
mke2fs 1.45.6 (20-Mar-2020)
创建含有 1047040 个块(每块 4k)和 262144 个inode的文件系统
文件系统UUID:b095db16-44e1-47e7-99b1-4956e5df9fd5
超级块的备份存储于下列块:
    32768, 98304, 163840, 229376, 294912, 819200, 884736
正在分配组表: 完成                            
正在写入inode表: 完成                            
创建日志(16384 个块)完成
写入超级块和文件系统账户统计信息: 已完成

[root@long90 md0]# mkdir /root/md5
[root@long90 md0]# mount /dev/md5 /root/md5/
[root@long90 md0]# df -h
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs             1.8G     0  1.8G    0% /dev
tmpfs                1.9G     0  1.9G    0% /dev/shm
tmpfs                1.9G  9.5M  1.8G    1% /run
tmpfs                1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/mapper/cs-root   36G  6.0G   30G   17% /
/dev/sr0              11G   11G     0  100% /media/cdrom
/dev/sda1           1014M  256M  759M   26% /boot
tmpfs                371M     0  371M    0% /run/user/0
tmpfs                371M   12K  371M    1% /run/user/42
/dev/md0             3.9G  1.1G  2.7G   28% /root/md0
/dev/md1             2.0G  6.0M  1.9G    1% /root/md1
/dev/md5             3.9G   16M  3.7G    1% /root/md5

测试热备磁盘作用:

1. 标记一块活动盘失效
[root@long90 md0]# mdadm /dev/md5 -f /dev/sdb6
mdadm: set /dev/sdb6 faulty in /dev/md5
[root@long90 md0]# mdadm -D /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Tue Dec 13 21:08:02 2022
        Raid Level : raid5
        Array Size : 4188160 (3.99 GiB 4.29 GB)
     Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)
      Raid Devices : 3
     Total Devices : 4
       Persistence : Superblock is persistent
       Update Time : Tue Dec 13 21:15:37 2022
             State : clean
    Active Devices : 3
   Working Devices : 3
    Failed Devices : 1
     Spare Devices : 0
            Layout : left-symmetric
        Chunk Size : 512K
Consistency Policy : resync
              Name : long90:5  (local to host long90)
              UUID : 2599f3d7:58f46432:0b7ea595:f8befb4e
            Events : 37
    Number   Major   Minor   RaidDevice State
       3       8       25        0      active sync   /dev/sdb9
       1       8       23        1      active sync   /dev/sdb7
       4       8       24        2      active sync   /dev/sdb8

       0       8       22        -      faulty   /dev/sdb6
[root@long90 md0]# mdadm /dev/md5 -r /dev/sdb6
mdadm: hot removed /dev/sdb6 from /dev/md5
[root@long90 md0]# mdadm -D /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Tue Dec 13 21:08:02 2022
        Raid Level : raid5
        Array Size : 4188160 (3.99 GiB 4.29 GB)
     Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)
      Raid Devices : 3
     Total Devices : 3
       Persistence : Superblock is persistent
       Update Time : Tue Dec 13 21:19:42 2022
             State : clean
    Active Devices : 3
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 0
            Layout : left-symmetric
        Chunk Size : 512K
Consistency Policy : resync
              Name : long90:5  (local to host long90)
              UUID : 2599f3d7:58f46432:0b7ea595:f8befb4e
            Events : 38
    Number   Major   Minor   RaidDevice State
       3       8       25        0      active sync   /dev/sdb9
       1       8       23        1      active sync   /dev/sdb7
       4       8       24        2      active sync   /dev/sdb8
[root@long90 md0]# mdadm /dev/md5 -a /dev/sdb6
mdadm: added /dev/sdb6
[root@long90 md0]# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4]
md5 : active raid5 sdb6[5](S) sdb8[4] sdb9[3] sdb7[1]
      4188160 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
md1 : active raid1 sdb5[2] sdb4[1]
      2094080 blocks super 1.2 [2/2] [UU]
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks

5.4、创建 RAID10

[root@long90 ~]# mdadm -C /dev/md10 -n 4 -l 10 -x 2 /dev/sdc{1,2,3,4,5,6}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md10 started.
[root@long90 ~]# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md10 : active raid10 sdc6[5](S) sdc5[4](S) sdc4[3] sdc3[2] sdc2[1] sdc1[0]
      4188160 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
md5 : active raid5 sdb7[1] sdb9[3] sdb8[4] sdb6[5](S)
      4188160 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks
md1 : active raid1 sdb5[2] sdb4[1]
      2094080 blocks super 1.2 [2/2] [UU]

[root@long90 ~]# mdadm -D /dev/md10
/dev/md10:
           Version : 1.2
     Creation Time : Tue Dec 13 22:23:42 2022
        Raid Level : raid10
        Array Size : 4188160 (3.99 GiB 4.29 GB)
     Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)
      Raid Devices : 4
     Total Devices : 6
       Persistence : Superblock is persistent

       Update Time : Tue Dec 13 22:24:02 2022
             State : clean
    Active Devices : 4
   Working Devices : 6
    Failed Devices : 0
     Spare Devices : 2
            Layout : near=2
        Chunk Size : 512K

Consistency Policy : resync
              Name : long90:10  (local to host long90)
              UUID : 414b08a3:18650def:8c9424fa:82fb8999
            Events : 17
    Number   Major   Minor   RaidDevice State
       0       8       33        0      active sync set-A   /dev/sdc1
       1       8       34        1      active sync set-B   /dev/sdc2
       2       8       35        2      active sync set-A   /dev/sdc3
       3       8       36        3      active sync set-B   /dev/sdc4
       4       8       37        -      spare   /dev/sdc5
       5       8       38        -      spare   /dev/sdc6
[root@long90 ~]# mkdir /root/md10
[root@long90 ~]# mkfs.ext4 /dev/md10
mke2fs 1.45.6 (20-Mar-2020)
创建含有 1047040 个块(每块 4k)和 262144 个inode的文件系统
文件系统UUID:ced78e78-38da-4a3a-941b-dffff7daf1d0
超级块的备份存储于下列块:
    32768, 98304, 163840, 229376, 294912, 819200, 884736
正在分配组表: 完成                            
正在写入inode表: 完成                            
创建日志(16384 个块)完成
写入超级块和文件系统账户统计信息: 已完成
[root@long90 ~]# mount /dev/md10 /root/md10
[root@long90 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs             1.8G     0  1.8G    0% /dev
/dev/mapper/cs-root   36G  6.0G   30G   17% /
/dev/sr0              11G   11G     0  100% /media/cdrom
/dev/sda1           1014M  256M  759M   26% /boot
/dev/md10            3.9G   16M  3.7G    1% /root/md10

测试热备磁盘作用:
1. 标记一块活动盘失效

[root@long90 ~]# mdadm /dev/md10 -f /dev/sdc2
mdadm: set /dev/sdc2 faulty in /dev/md10

2. 移除失效的盘

[root@long90 ~]# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md10 : active raid10 sdc6[5] sdc5[4](S) sdc4[3] sdc3[2] sdc2[1](F) sdc1[0]
      4188160 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
md5 : active raid5 sdb7[1] sdb9[3] sdb8[4] sdb6[5](S)
      4188160 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
md0 : active raid0 sdb2[1] sdb1[0]
      4188160 blocks super 1.2 512k chunks
md1 : active raid1 sdb5[2] sdb4[1]
      2094080 blocks super 1.2 [2/2] [UU]
[root@long90 ~]# mdadm /dev/md10 -r /dev/sdc2
mdadm: hot removed /dev/sdc2 from /dev/md10

3. 为了日后考虑,再次添加一个热备盘到 raid10 中

[root@long90 ~]# mdadm -D /dev/md10
/dev/md10:
           Version : 1.2
     Creation Time : Tue Dec 13 22:23:42 2022
        Raid Level : raid10
        Array Size : 4188160 (3.99 GiB 4.29 GB)
     Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)
      Raid Devices : 4
     Total Devices : 5
       Persistence : Superblock is persistent
       Update Time : Tue Dec 13 22:41:33 2022
             State : clean
    Active Devices : 4
   Working Devices : 5
    Failed Devices : 0
     Spare Devices : 1
            Layout : near=2
        Chunk Size : 512K
Consistency Policy : resync
              Name : long90:10  (local to host long90)
              UUID : 414b08a3:18650def:8c9424fa:82fb8999
            Events : 37
    Number   Major   Minor   RaidDevice State
       0       8       33        0      active sync set-A   /dev/sdc1
       5       8       38        1      active sync set-B   /dev/sdc6
       2       8       35        2      active sync set-A   /dev/sdc3
       3       8       36        3      active sync set-B   /dev/sdc4
       4       8       37        -      spare   /dev/sdc5

六、保存 RAID 信息

问:为什么要保存 raid 信息?
答:如果不做信息的保存,在 CentOS6 中,重启系统后 raid 不能自动被识别到,7,8 系统中不会出现这种状况。
创建配置文件
[root@long90 ~]# mdadm -D --scan >> /etc/mdadm.conf
[root@long90 ~]# cat /etc/mdadm.conf
ARRAY /dev/md/1 metadata=1.2 name=long90:1 UUID=2b696d44:595da677:e34d95aa:1af0bd62
ARRAY /dev/md/0 metadata=1.2 name=long90:0 UUID=07944db9:f88f9fff:d8b5fb39:a3b819c4
ARRAY /dev/md/5 metadata=1.2 spares=1 name=long90:5 UUID=2599f3d7:58f46432:0b7ea595:f8befb4e
ARRAY /dev/md10 metadata=1.2 spares=1 name=long90:10 UUID=414b08a3:18650def:8c9424fa:82fb8999

6.1、RAID 停止与启动

停止 RAID
[root@long90 ~]# mount /dev/md0 /root/md0
[root@long90 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs             1.8G     0  1.8G    0% /dev
/dev/mapper/cs-root   36G  6.0G   30G   17% /
/dev/sr0              11G   11G     0  100% /media/cdrom
/dev/sda1           1014M  256M  759M   26% /boot
/dev/md10            3.9G   16M  3.7G    1% /root/md10
/dev/md0             3.9G  1.1G  2.7G   28% /root/md0
[root@long90 ~]# umount /root/md0
[root@long90 ~]# mdadm --stop /dev/md0
mdadm: stopped /dev/md0

启动 raid

1. 配置文件(/etc/mdadm.conf)存在如下启动
[root@long90 ~]# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid0 sdb1[0] sdb2[1]
      4188160 blocks super 1.2 512k chunks
md5 : active raid5 sdb7[1] sdb9[3] sdb8[4] sdb6[5](S)
      4188160 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
md1 : active raid1 sdb5[2] sdb4[1]
      2094080 blocks super 1.2 [2/2] [UU]
unused devices: <none>
[root@long90 ~]# mdadm -A /dev/md10
mdadm: /dev/md10 has been started with 4 drives and 1 spare.
[root@long90 ~]# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md10 : active raid10 sdc1[0] sdc5[4](S) sdc4[3] sdc3[2] sdc6[5]
      4188160 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
md0 : active raid0 sdb1[0] sdb2[1]
      4188160 blocks super 1.2 512k chunks
md5 : active raid5 sdb7[1] sdb9[3] sdb8[4] sdb6[5](S)
      4188160 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
md1 : active raid1 sdb5[2] sdb4[1]
      2094080 blocks super 1.2 [2/2] [UU]

6.2、RAID 删除

卸载
[root@long90 ~]# umount /root/md5

移除所有磁盘

[root@long90 ~]# mdadm /dev/md5 -f /dev/sdb[12]
[root@long90 ~]# mdadm /dev/md5 -r /dev/sdb[12]

停止

[root@long90 ~]# mdadm --stop /dev/md5

清除相关信息

[root@long90 ~]# mdadm --zero-superblock /dev/sdb[5678]
 
 

 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐