首页 > 系统相关 >使用centos7搭建RAID磁盘阵列,RAID0,RAID1,RAID5,ARID10,讲述RAID0、1、5、10的原理。

使用centos7搭建RAID磁盘阵列,RAID0,RAID1,RAID5,ARID10,讲述RAID0、1、5、10的原理。

时间:2024-09-06 20:21:48浏览次数:8  
标签:RAID 阵列 sync dev RAID5 RAID0 mdadm 硬盘 磁盘阵列

1.RAID概念

磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。 磁盘阵列是由很多价格较便宜的磁盘,以硬件(RAID卡)或软件(MDADM)形式组合成一个容量巨大的磁盘组,利用多个磁盘组合在一起,提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。 磁盘阵列还能利用同位检查(Parity Check)的观念,在数组中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中

注:RAID可以预防数据丢失,但是它并不能完全保证你的数据不会丢失,所以大家使用RAID的同时还是注意备份重要的数据

RAID的创建有两种方式:软RAID(通过操作系统软件来实现)和硬RAID(使用硬件阵列卡);在企业中用的最多的是:raid1、raid5和raid10。不过随着云的高速发展,供应商一般可以把硬件问题解决掉。

1.1  RAID几种常见的类型

RAID类型

最低磁盘个数

空间利用率

各自的优缺点

级 别

说 明

RAID0

条带卷

2+

100%

读写速度快,不容错

RAID1

镜像卷

2

50%

读写速度一般,容错

RAID5

带奇偶校验的条带卷

3+

(n-1)/n

读写速度快,容错,允许坏一块盘

RAID10

RAID1的安全+RAID0的高速

4

50%

读写速度快,容错

1.2  RAID基本思想

把好几块硬盘物理硬盘和虚拟磁盘通过一定组合方式把它组合起来,成为一个新的硬盘阵列组,从而使它能够达到高性能硬盘的要求。

RAID有三个关键技术:

(1)镜像备份:提供了数据的安全性;

(2)chunk条带(块大小也可以说是条带的粒度),它的存在的就是为了提高I/O,提供了数据并发性

(3)数据的校验:提供了数据的安全

1.3   mdadm命令常见参数解释

-C或--create

建立一个新阵列

-r

移除设备

-A

激活磁盘阵列磁盘阵列需要写入到/etc/mdadm.conf

-l 或--level=

设定磁盘阵列的级别

-D或--detail

打印阵列设备的详细信息

-n或--raid-devices=

指定阵列成员(分区/磁盘)的数量

-s或--scan

扫描配置文件或/proc/mdstat得到阵列缺失信息

-x--spare-devicds=

指定阵列中备用盘的数量

-f

将设备状态定为故障

-c或--chunk=

设定阵列的块chunk块大小 ,单位为KB

-a或--add

添加设备到阵列

-G或--grow

改变阵列大小或形态

-v

--verbose 显示详细信息

-S

停止阵列

2.搭建RAID0  开始前虚拟机准备13块硬盘

 2.1  创建raid0,只需要两块盘(sdb,sdc)

#创建md0
mdadm  -C -v /dev/md0 -l 0 -n 2 /dev/sd{b,c} 

#查看阵列信息
mdadm -Ds

mdadm -D /dev/md0  #查询到以下信息
 Version : 1.2
     Creation Time : Fri Sep  6 15:58:00 2024
        Raid Level : raid0
        Array Size : 41908224 (39.97 GiB 42.91 GB)  #两块盘的内存
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Fri Sep  6 15:58:00 2024
             State : clean 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

        Chunk Size : 512K   #chunk是raid中最小的存储单位

Consistency Policy : none

              Name : localhost.localdomain:0  (local to host localhost.localdomain)
              UUID : 46740a79:596a22ca:1ad6bcda:ce4dc462
            Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc




2. 3.生成配置文件

mdadm -Ds > /etc/mdadm.conf 

2.4 对创建的RAID0进行文件系统创建并挂载

#格式化md0
mkfs.xfs /dev/md0

#创建挂载点
 mkdir /raid0

#挂载md0到/raid0
mount /dev/md0 /raid0/

#查看挂载的md0
df -Th /raid0/

2.5.开机自动挂载

blkid /dev/md0

echo "UUID=5bba0862-c4a2-44ad-a78f-367f387ad001 /raid0 xfs defaults 0 0" >> /etc/fstab

3.搭建RAID1 ,需要3块盘

3.1  创建raid1,保存配置文件,查看RAID1信息

#创建RAID1
mdadm -C -v /dev/md1 -l 1 -n 2 -x 1 /dev/sd[d,e,f]

#将RADI信息保存到配置文件
mdadm  -Dsv > /etc/mdadm.conf

#查看 RAID 阵列信息
mdadm  -D /dev/md1
 
Raid Level : raid1
        Array Size : 20955136 (19.98 GiB 21.46 GB)
   。。。
    Number   Major   Minor   RaidDevice State
       0       8       48        0      active sync   /dev/sdd
       1       8       64        1      active sync   /dev/sde
       2       8       80        -      spare   /dev/sdf

3.2 在RAID设备上创建文件系统,挂载

#格式化
mkfs.xfs /dev/md1

#创建挂载目录
mkdir /raid1

#挂载md1到raid1目录
mount /dev/md1  /raid1/

3.3  准备测试热备盘,准备测试文件,模拟损坏

#准备测试文件
cp /etc/passwd /raid1/

#模拟损坏
#下面模拟RAID1中数据盘/dev/sde出现故障,观察/dev/sdf备用盘能否自动顶替故障盘
mdadm  /dev/md1 -f  /dev/sde


#查看阵列信息
mdadm  -D /dev/md1

...
    Number   Major   Minor   RaidDevice State
       0       8       96        0      active sync   /dev/sde
       2       8      128        1      spare rebuilding   /dev/sdf #热备盘已经在同步数据,等到它变成active sync就同步成功。 
       1       8      112        -      faulty   /dev/sde   #看到已经把sde换下来了

3.4 更新配置文件,查看数据是否丢失

mdadm  -Dsv > /etc/mdadm.conf


查看数据丢失没有,看看有没有passwd
  ls /raid1/  

3.5  移除坏损坏的设备,查看信息,添加一块新热备盘

#移除损坏的设备
mdadm  -r /dev/md1 /dev/sde

#查看信息
mdadm  -D /dev/md1
 
Number   Major   Minor   RaidDevice State
       0       8       96        0      active sync   /dev/sdd
       2       8      128        1      active sync   /dev/sdf   #已经没有热备盘了

#添加一块新热备盘
mdadm  -a /dev/md1  /dev/sde 

#看看有没有/dev/sde
mdadm  -D /dev/md1

4.搭建RAID5  需要4个硬盘

4.1  创建RAID5, 添加1个热备盘,指定chunk大小为32K,查看信息

#创建md5
mdadm -C -v /dev/md5 -l 5 -n 3 -x 1 -c32 /dev/sd{g,h,i,j} 


#查看信息
mdadm -D /dev/md5

/dev/md5:
           Version : 1.2
     Creation Time : Thu May 17 18:54:20 2018
        Raid Level : raid5
        Array Size : 41910272 (39.97 GiB 42.92 GB)
     Used Dev Size : 20955136 (19.98 GiB 21.46 GB)
      Raid Devices : 3
     Total Devices : 4
       Persistence : Superblock is persistent

       Update Time : Thu May 17 18:54:31 2018
             State : clean, degraded, recovering 
    Active Devices : 2
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 2

            Layout : left-symmetric
        Chunk Size : 32K     #指定chunk大小为32K

Consistency Policy : resync

    Rebuild Status : 7% complete   #正在同步数据 请等待

              Name : xuegod63.cn:5  (local to host xuegod63.cn)
              UUID : fa685cea:38778d6a:0eb2c670:07ec5797
            Events : 2

    Number   Major   Minor   RaidDevice State
       0       8       96        0      active sync   /dev/sdg
       1       8      112        1      active sync   /dev/sdh
       4       8      128        2      spare rebuilding   /dev/sdi

       3       8      144        -      spare   /dev/sdj   #热备盘

4.2   停止MD5阵列,停止前必须保存配置文件

#保存文件
mdadm -Dsv > /etc/mdadm.conf 

##停止前,请确认数据已经同步完
mdadm  -D /dev/md5
.....
Consistency Policy : resync   #数据已经同步完 

#停止阵列
mdadm  -S /dev/md5

4.3 激活MD5阵列

mdadm  -As

4.4  扩展RAID5磁盘阵列,将热备盘增加到md5中,使用md5中可以使用的磁盘数量为4块 

#扩展RAID5磁盘阵列
mdadm -G /dev/md5 -n 4 -c 32

#保存配置文件
mdadm -Dsv > /etc/mdadm.conf


#查看状态
mdadm -D /dev/md5  

。。。
        Array Size : 41910272 (39.97 GiB 42.92 GB)   #发现新增加硬盘后空间没有变大,为什么?
     Used Dev Size : 20955136 (19.98 GiB 21.46 GB)
。。。
    Reshape Status : 3% complete   #重塑状态:3%完成 ,等到100%, 数据才同步完,同步完后会变成:Consistency Policy : resync   #一致性策略:再同步,表示已经同步完
。。。
  Number   Major   Minor   RaidDevice State
       0       8       96        0      active sync   /dev/sdg
       1       8      112        1      active sync   /dev/sdh
       4       8      128        2      active sync   /dev/sdi
       3       8      144        3      active sync   /dev/sdj
等一会,等所有数据同步完成后,查看md5空间大小:
        Array Size : 62865408 (59.95 GiB 64.37 GB)  #空间已经变大
     Used Dev Size : 20955136 (19.98 GiB 21.46 GB)

4.6  格式化,挂载,创建目录raid5

#格式化
mkfs.xfs /dev/md5

#创建挂载目录
mkdir /raid5

#挂载md1到raid5目录
mount /dev/md5  /raid5/

5. 创建RAID10,需要4块硬盘

5.1    创建raid10

#创建md10
mdadm -C -v /dev/md10 -l 10 -n 4 /dev/sd[k,l,m,n]



#查看信息
mdadm -D /dev/md10

5.2 创建raid10,挂载

#格式化
mkfs.xfs /dev/md10

#创建挂载目录
mkdir /raid10

#挂载md1到raid10目录
mount /dev/md10  /raid10/

5.3 使用命令查看挂载的一些情况 

lsblk

总结:以上就是使用centos搭建raid0,1,5,10的全部过程,也可以用分区的形式来搭建raid,假如RAID硬盘失效处理,一般两种处理方法:热备和热插拔

热备:HotSpare

定义:当冗余的RAID组中某个硬盘失效时,在不干扰当前RAID系统的正常使用的情况下,用RAID系统中另外一个正常的备用硬盘自动顶替失效硬盘,及时保证RAID系统的冗余性

热插拔:HotSwap

定义:在不影响系统正常运转的情况下,用正常的物理硬盘替换RAID系统中失效硬盘

标签:RAID,阵列,sync,dev,RAID5,RAID0,mdadm,硬盘,磁盘阵列
From: https://blog.csdn.net/dxgcbhj/article/details/141967395

相关文章

  • 给 RAID5 添加热备盘
    给RAID5添加热备盘创建RAID5时设置1块热备盘;[root@zhpj~]#mdadm-Cv/dev/md5-n3-l5-x1/dev/sd{b..e}mdadm:layoutdefaultstoleft-symmetricmdadm:layoutdefaultstoleft-symmetricmdadm:chunksizedefaultsto512Kmdadm:sizesetto10476544Km......
  • Linux磁盘阵列RAID
    目录一、RAID磁盘阵列1.RAID概述二、磁盘列正详解1.RAID0磁盘介绍 2.RAID1磁盘阵列介绍 3.RAID5磁盘阵列介绍 4.RAID6磁盘阵列介绍 5.RAID10  5.1RAID1+0(先做镜像、再做条带) 5.2RAID0+1(先做条带、再做镜像) 二、实验RAID设备创建与删除......
  • 7 - Linux磁盘阵列RAID
    一、RAID磁盘阵列介绍RAID(RedundantArryofIndependent),中文简称为独立冗余磁盘阵列。把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的储存性能和提供数据备份技术。组成磁盘阵列的不同方式称为RAID级别(RAIDLevels)。常用的RAID......
  • 磁盘阵列
    RAID0RAID0又称为条带化(Stripe)或分条(Striping),代表了所有RAID级别中最高的存储性能。RAID0提高存储性能的原理是把连续的数据分散到多个硬盘上存取。这样,当系统有数据请求时就可以在多个硬盘上并行执行,每个硬盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分......
  • 一文全懂:独立冗余磁盘阵列(RAID)
    独立冗余磁盘阵列,也就是大家常说的RAID,英文全称是:RedundantArrayofIndependentDisks,使用该技术,可以大幅提高硬盘设备的IO读写速度,还存在数种数据冗余备份机制提供用户选择,能够降低用户数据盘损坏带来的数据丢失的风险。RAID技术通过把多个硬盘设备组合成一个容量更大、安全......
  • 如何恢复raid0磁盘阵列中的数据
    恢复RAID0磁盘阵列中的数据是一个相对复杂且风险较高的过程,因为RAID0没有提供数据冗余或错误修复能力,一旦数据丢失,恢复起来较为困难。以下是一个详细的恢复流程,供您参考:一、停止使用故障RAID0阵列在发现数据丢失后,应立即停止使用故障RAID0阵列,以避免数据被进一步损坏或覆盖......
  • 如何恢复raid5磁盘阵列中的数据
    恢复RAID5磁盘阵列中的数据是一个复杂但重要的过程,需要谨慎操作以避免进一步的数据损失。以下是一个详细的恢复步骤和注意事项:一、数据恢复前的准备1.确认故障情况:1.检查RAID控制器的报警信息和硬盘指示灯状态(如黄灯或红灯)。2.确认掉线或故障的硬盘数量。2.备份所有硬盘:1.......
  • 如何预防raid0磁盘阵列中的数据
    为了预防RAID0磁盘阵列中数据的丢失,可以采取以下一系列措施。RAID0虽然通过分割数据并写入到多个磁盘上来提高读写速度,但它不提供任何形式的冗余或数据保护,因此数据丢失的风险相对较高。以下是一些预防措施:一、定期备份数据1.全量备份:定期(如每周或每月)进行全量备份,将整个RAID......
  • Raid0创建
    实验步骤步骤1:确认硬盘确认你的硬盘设备名。[root@servera~]#lsblkNAMEMAJ:MINRMSIZEROTYPEMOUNTPOINTsda8:0020G0disk├─sda18:10300M0part/boot├─sda28:202G0part[SWAP]└─sda38:3017.7G0pa......
  • EMC存储崩溃后如何恢复存储中raid5阵列数据
    一、初步评估与准备确认故障:首先确认EMC存储系统已经崩溃,并且是由于RAID5阵列的问题导致的。检查RAID控制器的状态,确认是否有磁盘故障或RAID配置错误。数据备份:在进行任何恢复操作之前,务必对现有的RAID磁盘进行镜像或备份,以防在恢复过程中进一步损坏数据。备份操作应以只读......