RAID 磁盘阵列及RAID配置实战

目录

一.RAID磁盘阵列介绍

二.常用的RAID磁盘阵列的介绍

1.RAID 0 (条带化存储)

2.RAID 1(镜像存储)

3.RAID 5

4.RAID 6 

5.RAID 1+0(先做镜像,再做条带)

6.RAID 0+1 (先做条带,再做镜像)

7.RAID 磁盘阵列的区别

8.阵列卡介绍

三.构建软RAID磁盘阵列

1.添加硬盘,fdisk分区,分区类型ID设置为 fd

2.使用mdadm创建软raid

 3.格式化

4.挂载使用

5.查看RAID5配置信息

6.尝试损坏一块硬盘后是否还能还原数据

7.mdadm命令其它常用选项

8.删除坏的硬盘和加入新的硬盘

9.停止 和启动 RAID 的步骤


一.RAID磁盘阵列介绍

1.RAID是Redundant Array of Independent Disks的缩写,中文简称为独立冗余磁盘阵列。

(1)是把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。

(2)具有冗余能力,即使某个硬盘发生故障,也能通过同位检查(Parity Check)的观念读出数据,保证数据的可靠性和安全性。

2.组成磁盘阵列的不同方式称为RAID级别(RAID Levels);常用的RAID级别有:

RAID0,RAID1,RAID5,RAID6,RAID1+0 等

二.常用的RAID磁盘阵列的介绍

1.RAID 0 (条带化存储)

(1)RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输

率,但它没有数据冗余

(2)RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将

影响到所有数据;

(3)RAID 0不能应用于数据安全性要求高的场合

                                                 

RAID 0是两个磁盘组成的,两块磁盘都用于数据存储和传输,数据传输具有很高的传输率,但是没有冗余能力;磁盘受损后,数据容易丢失。

2.RAID 1(镜像存储)

(1)通过磁盘数据镜像实现数据几余,在成对的独立磁盘上产生互为备份的数据

(2)当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能

(3)RAID 1是磁盘阵列中单位成本最高的但提供了很高的数据安全性和可用性。当一个磁盘失效

时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据

                                                     

RAID1 也是由两个磁盘组成的,他的两个磁盘是互为备份的,记录的都是一样的内容,具有很强的安全性。

3.RAID 5

(1)N(N>=3)块盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据共N份数据在N块盘

上循环均衡存储

(2)N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高

(3)(N-1)/N磁盘利用率

(4)可靠性高,允许坏1块盘,不影响所有数据

                                  

RAID 5 是由至少三块磁盘组成,可以通过纠删码还原数据;内存利用率为(N-1)N;损坏一块磁盘后,可以根据其他几块磁盘还原数据。

4.RAID 6 

(1)N(N>=4)块盘组成阵列,(N-2)/N磁盘利用率

(2)与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块

(3)两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用

(4)相对于RAID 5有更大的“写损失”,因此写性能较差

                                    

RAID 6 由至少四块磁盘组成,磁盘利用率为(N-2)N;比RAID5多谢一份纠删码,且是独立的一份纠删码,RAID5的纠删码是分布在所有的磁盘上的。

5.RAID 1+0(先做镜像,再做条带)

(1)N(偶数,N>=4)块盘两两镜像后,再组合成一个RAID 0

(2)N/2磁盘利用率

(3)N/2块盘同时写入,N块盘同时读取

(4)性能高,可靠性高

                                    

6.RAID 0+1 (先做条带,再做镜像)

(1)读写性能与RAID 10 相同

(2)安全性能低于RAID 10

7.RAID 磁盘阵列的区别

RAID级别硬盘要求数量磁盘利用率是否有冗余能力读写性能
RAID0NN单个硬盘的N倍
RAID1N(偶数)N/2有,允许一个设备故障读性能提升,写没有提升
RAID5N>=3(N-1)/N有,允许一个设备故障需要多写一份纠删码,所以写性能相对RAID0低一些
RAID6N>=4(N-2)/N有,允许两个设备故障需要多写两份纠删码,所以写性能相对RAID5更低一些
RAID10N>=4(偶数)N/2有,允许不同组中各坏一个

读性能可提升N倍,写性能提升N/2倍

8.阵列卡介绍

(1)阵列卡是用来实现RAID功能的板卡

(2)通常是由I/0处理器、硬盘控制器、硬盘连接器和缓存等一系列组件构成的

(3)不同的RAID卡支持的RAID功能不同:例如支持RAID0、RAID1、RAID5、RAID10等

(4)RAID卡的接口类型:IDE接口、SCSI接口、SATA接口和SAS接口

三.构建软RAID磁盘阵列

1.添加硬盘,fdisk分区,分区类型ID设置为 fd

[root@192 ~]# fdisk /dev/sdb                 #设置分区(这里添加四块)
欢迎使用 fdisk (util-linux 2.23.2)。          #四块都是同样操作更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。Device does not contain a recognized partition table
使用磁盘标识符 0x895b7142 创建新的 DOS 磁盘标签。命令(输入 m 获取帮助):n
Partition type:p   primary (0 primary, 0 extended, 4 free)e   extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):fd
已将分区“Linux”的类型更改为“Linux raid autodetect”命令(输入 m 获取帮助):w
The partition table has been altered!Calling ioctl() to re-read partition table.
正在同步磁盘。

2.使用mdadm创建软raid

[root@192 ~]# mdadm -C -v /dev/md5 -l5 -n3 /dev/sd[bcd]1 -x1 /dev/sde1
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 20953088K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[root@192 ~]# watch -n 5 'cat /proc/mdstat'
[root@192 ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md5 : active raid5 sdd1[4] sde1[3](S) sdc1[1] sdb1[0]41906176 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]unused devices: <none>

watch -n 5 'cat /proc/mdstat'   进入下图界面

拓展:创建raid10:(先做镜像,再做条带)   mdadm -Cv /dev/md0 -l1 -n2 /dev/sdXX
                                                                     mdadm -Cv /dev/md1 -l1 -n2 /dev/sdXX
                                                               mdadm -Cv /dev/md10 -l0 -n2 /dev/md0 /dev/md1

 3.格式化

[root@192 ~]# mkfs -t 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
[root@192 ~]# mkdir /opt/test
[root@192 ~]# ls /opt/
rh  test

4.挂载使用

[root@192 ~]# mount /dev/md5 /opt/test
[root@192 ~]# df -hT
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  1.9G     0  1.9G    0% /dev
tmpfs                   tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                   tmpfs     1.9G   13M  1.9G    1% /run
tmpfs                   tmpfs     1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        36G  4.9G   31G   14% /
/dev/sda1               xfs       509M  181M  329M   36% /boot
tmpfs                   tmpfs     378M   12K  378M    1% /run/user/42
tmpfs                   tmpfs     378M     0  378M    0% /run/user/0
/dev/md5                xfs        40G   33M   40G    1% /opt/test

5.查看RAID5配置信息

[root@192 ~]# echo 'DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1' > /etc/mdadm.conf
[root@192 ~]# mdadm --detail --scan >> /etc/mdadm.conf
[root@192 ~]# cat /etc/mdadm.conf
DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1
ARRAY /dev/md5 metadata=1.2 spares=1 name=192.168.80.202:5 UUID=f4af24d8:dea93504:28db9825:9272b88e

6.尝试损坏一块硬盘后是否还能还原数据

[root@192 ~]# cd /opt/test/
[root@192 test]# touch file{1..50}
[root@192 test]# mkdir file{51..100}
[root@192 test]# ls
file1    file16  file23  file30  file38  file45  file52  file6   file67  file74  file81  file89  file96
file10   file17  file24  file31  file39  file46  file53  file60  file68  file75  file82  file9   file97
file100  file18  file25  file32  file4   file47  file54  file61  file69  file76  file83  file90  file98
file11   file19  file26  file33  file40  file48  file55  file62  file7   file77  file84  file91  file99
file12   file2   file27  file34  file41  file49  file56  file63  file70  file78  file85  file92
file13   file20  file28  file35  file42  file5   file57  file64  file71  file79  file86  file93
file14   file21  file29  file36  file43  file50  file58  file65  file72  file8   file87  file94
file15   file22  file3   file37  file44  file51  file59  file66  file73  file80  file88  file95
[root@192 test]# mdadm /dev/md5 -f /dev/sdc1   #-f 选项指定某个硬盘损坏
mdadm: set /dev/sdc1 faulty in /dev/md5
[root@192 test]# mdadm -D /dev/md5                  #查看RAID情况
/dev/md5:Version : 1.2Creation Time : Tue Apr 16 23:42:47 2024Raid Level : raid5Array Size : 41906176 (39.96 GiB 42.91 GB)Used Dev Size : 20953088 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistentUpdate Time : Tue Apr 16 23:53:48 2024State : clean, degraded, recoveringActive Devices : 2Working Devices : 3Failed Devices : 1Spare Devices : 1Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncRebuild Status : 14% completeName : 192.168.80.202:5  (local to host 192.168.80.202)UUID : f4af24d8:dea93504:28db9825:9272b88eEvents : 24Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb13       8       65        1      spare rebuilding   /dev/sde14       8       49        2      active sync   /dev/sdd11       8       33        -      faulty   /dev/sdc1
[root@192 test]# cat /proc/mdstat             #查看取代的过程,需要等待
Personalities : [raid6] [raid5] [raid4]
md5 : active raid5 sdd1[4] sde1[3] sdc1[1](F) sdb1[0]41906176 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [U_U][===========>.........]  recovery = 55.3% (11600384/20953088) finish=0.7min speed=206256K/secunused devices: <none>
[root@192 test]# watch -n 5 'cat /proc/mdstat'
[root@192 test]# mdadm -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Tue Apr 16 23:42:47 2024Raid Level : raid5Array Size : 41906176 (39.96 GiB 42.91 GB)Used Dev Size : 20953088 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistentUpdate Time : Tue Apr 16 23:55:20 2024State : cleanActive Devices : 3Working Devices : 3Failed Devices : 1Spare Devices : 0Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncName : 192.168.80.202:5  (local to host 192.168.80.202)UUID : f4af24d8:dea93504:28db9825:9272b88eEvents : 43Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb13       8       65        1      active sync   /dev/sde14       8       49        2      active sync   /dev/sdd11       8       33        -      faulty   /dev/sdc1
[root@192 test]# cd /opt/
[root@192 opt]# ls
rh  test
[root@192 opt]# ls test/
file1    file16  file23  file30  file38  file45  file52  file6   file67  file74  file81  file89  file96
file10   file17  file24  file31  file39  file46  file53  file60  file68  file75  file82  file9   file97
file100  file18  file25  file32  file4   file47  file54  file61  file69  file76  file83  file90  file98
file11   file19  file26  file33  file40  file48  file55  file62  file7   file77  file84  file91  file99
file12   file2   file27  file34  file41  file49  file56  file63  file70  file78  file85  file92
file13   file20  file28  file35  file42  file5   file57  file64  file71  file79  file86  file93
file14   file21  file29  file36  file43  file50  file58  file65  file72  file8   file87  file94
file15   file22  file3   file37  file44  file51  file59  file66  file73  file80  file88  file95

7.mdadm命令其它常用选项

-r:移除设备
-a:添加设备
-S:停止RAID
-A:启动RAID
查看软raid的状态信息      
cat /proc/mdstat        
mdadm -D /dev/mdX

8.删除坏的硬盘和加入新的硬盘

[root@192 opt]# mdadm /dev/md5 -r /dev/sdc1      #-r 选项删除硬盘
mdadm: hot removed /dev/sdc1 from /dev/md5
[root@192 opt]# mdadm -D /dev/md5                 #查看RAID情况
/dev/md5:Version : 1.2Creation Time : Tue Apr 16 23:42:47 2024Raid Level : raid5Array Size : 41906176 (39.96 GiB 42.91 GB)Used Dev Size : 20953088 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 3Persistence : Superblock is persistentUpdate Time : Tue Apr 16 23:57:56 2024State : cleanActive Devices : 3Working Devices : 3Failed Devices : 0Spare Devices : 0Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncName : 192.168.80.202:5  (local to host 192.168.80.202)UUID : f4af24d8:dea93504:28db9825:9272b88eEvents : 44Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb13       8       65        1      active sync   /dev/sde1    #sde1会取代sdc14       8       49        2      active sync   /dev/sdd1
[root@192 opt]# mdadm /dev/md5 -a /dev/sdc1        #重新添加sdc1
mdadm: added /dev/sdc1
[root@192 opt]# mdadm -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Tue Apr 16 23:42:47 2024Raid Level : raid5Array Size : 41906176 (39.96 GiB 42.91 GB)Used Dev Size : 20953088 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistentUpdate Time : Tue Apr 16 23:58:40 2024State : cleanActive Devices : 3Working Devices : 4Failed Devices : 0Spare Devices : 1Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncName : 192.168.80.202:5  (local to host 192.168.80.202)UUID : f4af24d8:dea93504:28db9825:9272b88eEvents : 45Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb13       8       65        1      active sync   /dev/sde14       8       49        2      active sync   /dev/sdd15       8       33        -      spare   /dev/sdc1

9.停止 和启动 RAID 的步骤

需要保证配置文件存在,且需要解挂载后才能停止

[root@192 opt]# ls /etc/mdadm.conf            #确保文件存在
/etc/mdadm.conf
[root@192 opt]# cat /etc/mdadm.conf
DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1
ARRAY /dev/md5 metadata=1.2 spares=1 name=192.168.80.202:5 UUID=f4af24d8:dea93504:28db9825:9272b88e
[root@192 opt]# umount /opt/test             #解挂载后才能停止RAID
[root@192 opt]# df
文件系统                   1K-块    已用     可用 已用% 挂载点
devtmpfs                 1913552       0  1913552    0% /dev
tmpfs                    1930628       0  1930628    0% /dev/shm
tmpfs                    1930628   12624  1918004    1% /run
tmpfs                    1930628       0  1930628    0% /sys/fs/cgroup
/dev/mapper/centos-root 37202180 5094412 32107768   14% /
/dev/sda1                 520868  184532   336336   36% /boot
tmpfs                     386128      12   386116    1% /run/user/42
tmpfs                     386128       0   386128    0% /run/user/0
[root@192 opt]# mdadm -S /dev/md5            #停止RAID
mdadm: stopped /dev/md5
[root@192 opt]# ls /dev/md5                  #查看RAID
ls: 无法访问/dev/md5: 没有那个文件或目录
[root@192 opt]# cat /proc/mdstat             #查看RAID
Personalities : [raid6] [raid5] [raid4]
unused devices: <none>
[root@192 opt]# mdadm -As /dev/md5            #启动RAID
mdadm: /dev/md5 has been started with 3 drives and 1 spare.
[root@192 opt]# ls /dev/md5                   #查看RAID
/dev/md5
[root@192 opt]# cat /proc/mdstat              #查看RAID
Personalities : [raid6] [raid5] [raid4]
md5 : active raid5 sdb1[0] sdc1[5](S) sdd1[4] sde1[3]41906176 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]unused devices: <none>


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/625467.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

聊聊最近两星期的学习吧!

今天是4月14号。 自从我3月份回到学校之后&#xff0c;我每天都有记录自己的学习时长。今天晚上&#xff0c;我在复盘我自己学习时长的时候&#xff0c;我发现&#xff0c;在整个四月份&#xff0c;我平均每天的有效学习时长只有6h&#xff0c;而且到今天为止&#xff0c;整个四…

vue3 源码解析(7)— diff 算法源码的实现

前言 vue3 采用的 diff 算法名为快速 diff 算法&#xff0c;整个 diff 的过程分为以下5个阶段完成。 处理前置节点处理后置节点处理仅有新增节点处理仅有删除节点处理其他情况&#xff08;新增 / 卸载 / 移动&#xff09; 这里我们先定义新旧两个节点列表&#xff0c;接下来…

光距感-接近传感芯片的工作原理以及应用领域

接近光传感芯片是一种可以检测物体距离和位置的传感器。它的工作原理基于光电效应。当某个物体与接近光传感器靠近时&#xff0c;传感器会发出一束红外线。随着物体越来越靠近&#xff0c;被反射回来的光线会变强&#xff0c;被接近光传感器捕获。传感器可以测量时间&#xff0…

PDF文档电子签名怎么做?

如何确保电子文档的签署具有公信力和法律效力&#xff0c;防止伪造和假冒签名等问题&#xff0c;是电子文档无纸化应用面临的重要挑战。本文将详细介绍PDF文档电子签名的概念、重要性、实施步骤以及相关的法律背景&#xff0c;帮助用户理解并有效应用PDF文档电子签名技术。 1.…

树和二叉树(一)

一、树 非线性数据结构&#xff0c;在实际场景中&#xff0c;存在一对多&#xff0c;多对多的情况。 树( tree&#xff09;是n (n>0&#xff09;个节点的有限集。当n0时&#xff0c;称为空树。 在任意一个非空树中&#xff0c;有如下特点。 1.有且仅有一个特定的称为根的节点…

西晋从建立到灭亡51年历史

西晋的建立&#xff0c;也标志着三国时期的结束&#xff0c;也开启了中国历史上的一个新时代。下面让我们来揭开西晋从建立到灭亡51年的历史。 1、高平陵事变 曹丕去世后&#xff0c;魏明帝曹睿继位&#xff0c;但曹睿却英年早逝&#xff0c;幼子曹芳继位。 司马懿受曹睿托孤…

全球首个AI女团Sorai.ai出道:定档4月19日北京电影节出道首秀

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…

关于 Windows10 计算机丢失 MSVCP120.dll 的解决方法

今天学长跟平时一样打开电脑开始发布文章需要用到Adobe Photoshop CC 2018的时候居然给我来个Photoshop.exe-系统错误、无法启动此程序&#xff0c;因为计算机中丢失MSVCP120.dll 尝试重新安装该程序以解决此问题&#xff0c;安装上面的说明重新安装了我的Photoshop CC 打开还是…

转换为elementUI提示方法为uni-app的showToast提示

// 转换为elementUI提示方法为uni-app的showToast提示---------------------------------------- // 一般提示 Vue.prototype.$message function(title) {title && uni.showToast({icon: none,title}); }; // 成功提示 Vue.prototype.$message.success (title) > …

泰迪智能科技携手洛阳理工学院共建“泰迪·洛阳理工数据智能工作室”

为深化校企合作&#xff0c;实现应用型人才培养目标&#xff0c;4月11日&#xff0c;洛阳理工学院携手广东泰迪智能科技股份有限公司举行“泰迪洛阳理工数据智能工作室”揭牌仪式暨工作室成员动员会在洛阳理工学院举行。洛阳理工学院计算机与信息工程学院院长石念峰、副院长李明…

【Pytorch】Conv1d

conv1d 先看看官方文档 再来个简单的例子 import torch import numpy as np import torch.nn as nndata np.arange(1, 13).reshape([1, 4, 3]) data torch.tensor(data, dtypetorch.float) print("[data]:\n", data) conv nn.Conv1d(in_channels4, out_channels1…

【每日刷题】Day16

【每日刷题】Day16 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 24. 两两交换链表中的节点 - 力扣&#xff08;LeetCode&#xff09; 2. 160. 相交链表 - 力扣&…