LiangGaRy-学习笔记-Day20

news/2024/12/1 0:25:36/

1、raid磁盘阵列

1.1、阵列介绍

简称:独立冗余磁盘阵列

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

  • RAID可以预防数据丢失;也可以支持备份操作

常见的阵列类型:

  • raid0:条带化存储
  • raid1:镜像存储
  • raid5:
  • raid10:先做镜像,在做存储
  • raid01:做存储,再做镜像

1.2、raid0

  • 磁盘使用率为100%
  • 把多块磁盘按照一定的组合方式组合起来,行程一个新的磁盘阵列
  • RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余。高性能、使用率高;
  • RAID 0只是单纯的提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据
  • RAID 0不能应用于数据安全性要求高的场合

1.3、raid1

  • 提供镜像功能
  • 使用率只有50%
  • 有冗余功能
  • 通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据
  • 当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能
  • RAID 1是磁盘阵列中单位成本最高的。但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。

1.4、raid5

  • 至少三块硬盘组成
  • 热备实现故障修复;允许损坏一块盘
  • 空间使用率 (n-1)/n
  • N(N≥3)块盘组成阵列,一份数据产生N-1个条带,同时还有一份校验数据,共N份数据在N块盘上循环均衡存储
  • N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高

1.5、raid10

  • N (偶数,N>=4)。块盘两两镜像后,再组合成一个RAID 0
  • N/2磁盘利用率
  • N/2块盘同时写入,N块盘同时读取
  • 性能高、可靠性高

1.6、raid01

raid10和raid01,基本相似,顺序不同而已;

  • N (偶数,N>=4)。块盘两两镜像后,再组合成一个RAID 0
  • N/2磁盘利用率
  • N/2块盘同时写入,N块盘同时读取
  • 性能高、可靠性高

2.、raid的相关操作

实验:没法有真正的整列卡可以操作,因此都是软raid的实现

2.1、mdadm命令

作用:用于管理raid磁盘阵列信息;

语法:mdadm+选项+设备名

选项:

  • -C:创建新的阵列
  • -r:移除设备
  • -A激活磁盘阵列
  • -I:指定级别
  • -s:扫描配置文件
  • -x:指定磁盘的数量
  • -f:指定出现故障的硬盘
  • -c:指定阵列的块大小
  • -a:添加到磁盘阵列
  • -G:改变磁盘阵列大小
  • -V:详细
  • -S:停止磁盘
  • -D:表示查看信息

2.2、搭建raid0实验

本次实验使用一块硬盘,进行两个分区;

  • 然后使用分区充当硬盘来实现raid0

首先对硬盘进行分区

  • sdb1/2/3/4
#对sdb进行分区
[root@Node1 ~]# fdisk  /dev/sdb 
............#重复下面操作
Command (m for help): n
Partition type:p   primary (0 primary, 0 extended, 4 free)e   extended
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-41943039, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +2G
Partition 1 of type Linux and of size 2 GiB is set
.............
Command (m for help): pDevice Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux
/dev/sdb2         4196352     8390655     2097152   83  Linux
/dev/sdb3         8390656    10487807     1048576    5  Extended

制作raid0磁盘阵列

#安装mdadm命令
[root@Node1 ~]# yum -y install mdadm#使用mdadm命令执行阵列创建#-C:表示创建#-V:表示显示过程#-l:表示指定raid级别-n:指定硬盘个数
[root@Node1 ~]# mdadm -C -v /dev/md0 -l 0 -n 2 /dev/sdb1 /dev/sdb2 
mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.#查看是否创建成功
[root@Node1 ~]# mdadm -Ds
ARRAY /dev/md0 metadata=1.2 name=Node1:0 UUID=cacdff6d:ac04df7d:c5b66f5b:a30c2b49
[root@Node1 ~]# lsblk | grep sdb
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    1K  0 part#查看raid0的详细信息
[root@Node1 ~]# mdadm  -D /dev/md0 
/dev/md0:Version : 1.2Creation Time : Thu Jul  6 11:05:57 2023Raid Level : raid0Array Size : 4188160 (3.99 GiB 4.29 GB)Raid Devices : 2Total Devices : 2Persistence : Superblock is persistent
..........#到这里就可以创建文件系统并且挂载使用
[root@Node1 ~]# mkfs.ext4  /dev/md0 
...........
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done #创建目录-->然后挂在使用
[root@Node1 ~]# mkdir  /raid0
[root@Node1 ~]# mount /dev/md0 /raid0/
#创建文件就可以使用
[root@Node1 ~]# cd /raid0/
[root@Node1 raid0]# touch aa.txt
[root@Node1 raid0]# ls
aa.txt  lost+found

2.3、搭建raid1实验

搭建这个实验同样是使用一块硬盘,然后做几个分区

创建几个分区

#创建几个分区
[root@Node1 ~]# fdisk /dev/sdc
.......
Command (m for help): n
Partition type:p   primary (0 primary, 0 extended, 4 free)e   extended
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-41943039, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +2G
Partition 1 of type Linux and of size 2 GiB is set
............
Command (m for help): pDevice Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048     4196351     2097152   83  Linux
/dev/sdc2         4196352    10487807     3145728   83  Linux
/dev/sdc3        10487808    18876415     4194304   83  Linux
/dev/sdc4        18876416    41943039    11533312    5  Extended
/dev/sdc5        18878464    23072767     2097152   83  Linux
/dev/sdc6        23074816    25171967     1048576   83  Linux
/dev/sdc7        25174016    29368319     2097152   83  Linux

创建阵列

  • 创建raid1–>使用两块硬盘(/dev/sdc1 /dev/sdc2)
  • 添加一个热备盘(/dev/sdc3)
  • 模拟磁盘故障,自动顶替故障磁盘
  • 从raid1中故障盘移走
  • 添加新的磁盘 2+1
#创建raid1-->#选项说明-C:指定新建raid-v:显示过程-l:指定raid级别-n:指定硬盘数量-x:指定热备盘
[root@Node1 ~]# mdadm -C -v /dev/md1 -l 1 -n 2 -x 1 /dev/sdc1 /dev/sdc2 /dev/sdc3 
mdadm: Note: this array has metadata at the start andmay not be suitable as a boot device.  If you plan tostore '/boot' on this device please ensure thatyour boot-loader understands md/v1.x metadata, or use--metadata=0.90
mdadm: size set to 2094080K
mdadm: largest drive (/dev/sdc3) exceeds size (2094080K) by more than 1%
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.#查看是否创建成功
[root@Node1 ~]# lsblk  | grep md1
│ └─md1           9:1    0    2G  0 raid1 
│ └─md1           9:1    0    2G  0 raid1 
│ └─md1           9:1    0    2G  0 raid1 
............
[root@Node1 ~]# mdadm  -D /dev/md1
/dev/md1:Version : 1.2Creation Time : Thu Jul  6 13:55:09 2023Raid Level : raid1Array Size : 2094080 (2045.00 MiB 2144.34 MB)Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)Raid Devices : 2Total Devices : 3Persistence : Superblock is persistent#创建文件系统
[root@Node1 ~]# mkfs.xfs  /dev/md1#然后创建目录-->挂载使用
[root@Node1 ~]# mkdir  /raid1
[root@Node1 ~]# mount /dev/md1  /raid1

准备好测试数据

  • 模拟损坏
#准备好测试数据
[root@Node1 ~]# cd /raid1
[root@Node1 ~]# cd /raid1
[root@Node1 raid1]# mkdir -p aa/bb/cc
[root@Node1 raid1]# touch aa.txt bb.txt
[root@Node1 raid1]# echo 1111111111 >> cc.txt
[root@Node1 raid1]# tree /raid1
/raid1
├── aa
│   └── bb
│       └── cc
├── aa.txt
├── bb.txt
└── cc.txt#直接模拟损坏
[root@Node1 raid1]# mdadm  /dev/md1  -f /dev/sdc2
mdadm: set /dev/sdc2 faulty in /dev/md1#然后在观察磁盘
[root@Node1 raid1]# mdadm -D /dev/md1
/dev/md1:Version : 1.2Creation Time : Thu Jul  6 13:55:09 2023Raid Level : raid1Array Size : 2094080 (2045.00 MiB 2144.34 MB)Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)Raid Devices : 2Total Devices : 3Persistence : Superblock is persistent
...........#这里明显已经掉了一块,备用盘已经顶替上去了Number   Major   Minor   RaidDevice State0       8       33        0      active sync   /dev/sdc12       8       35        1      active sync   /dev/sdc31       8       34        -      faulty   /dev/sdc2#把故障的硬盘移除掉
[root@Node1 raid1]# mdadm  -r /dev/md1 /dev/sdc2
mdadm: hot removed /dev/sdc2 from /dev/md1#再次查看
[root@Node1 raid1]# mdadm  -D /dev/md1
/dev/md1:Version : 1.2Creation Time : Thu Jul  6 13:55:09 2023Raid Level : raid1Array Size : 2094080 (2045.00 MiB 2144.34 MB)Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)Raid Devices : 2Total Devices : 2Persistence : Superblock is persistent
.................#然后在添加一块硬盘给它
[root@Node1 raid1]# mdadm  -a /dev/md1 /dev/sdc5
mdadm: added /dev/sdc5#再次查看
[root@Node1 raid1]# mdadm -D /dev/md1
/dev/md1:Version : 1.2Creation Time : Thu Jul  6 13:55:09 2023Raid Level : raid1Array Size : 2094080 (2045.00 MiB 2144.34 MB)Used Dev Size : 2094080 (2045.00 MiB 2144.34 MB)Raid Devices : 2Total Devices : 3Persistence : Superblock is persistent
...............

到这里为止,实验就成功了

  • 创建raid1
    • 使用到-C -v -l -n -x等等参数
    • 如果使用mdadm -Dsv >> /etc/mdadm.conf:可以添加到配置文件
    • -D:这个是查看磁盘整列信息
  • 创建好了就要挂在使用
    • 优先创建文件系统
      • mkfs.xfs命令实现
  • 然后就模拟数据
    • 移除硬盘–>查看数据
      • mdadm /dev/md1 -f 指定的是哪一块硬盘损坏了
    • 移除故障硬盘,然后查看热备盘是否顶替上去
      • mdadm -r:移除故障硬盘
  • 最后就是添加新的硬盘
    • mdadm -a:添加新硬盘

2.4、搭建raid5实验

实验同样是使用一块硬盘,然后创建多个分区

对硬盘进行分区

#对硬盘进行分区
[root@Node1 ~]# fdisk  /dev/sdd 
.....
Command (m for help): N
Partition type:p   primary (2 primary, 0 extended, 2 free)e   extended
Select (default p): 
Using default response p
Partition number (3,4, default 3): 
First sector (6293504-41943039, default 6293504): 
Using default value 6293504
Last sector, +sectors or +size{K,M,G} (6293504-41943039, default 41943039): +1G
Partition 3 of type Linux and of size 1 GiB is set
.................
Command (m for help): pDisk /dev/sdd: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x8991c938Device Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048     2099199     1048576   83  Linux
/dev/sdd2         2099200     6293503     2097152   83  Linux
/dev/sdd3         6293504     8390655     1048576   83  Linux
/dev/sdd4         8390656    41943039    16776192    5  Extended
/dev/sdd5         8392704    12587007     2097152   83  Linux
/dev/sdd6        12589056    16783359     2097152   83  Linux
/dev/sdd7        16785408    20979711     2097152   83  Linux
/dev/sdd8        20981760    25176063     2097152   83  Linux

创建raid5阵列

#创建raid5#选项说明-C:新建-v:显示过程-l:指定raid级别-n:指定硬盘数-x:表示热备盘-c:指定块大小
[root@Node1 ~]# mdadm -C -v /dev/md5 -l 5 -n 3 -x 1 -c 32 /dev/sdd{1..3} /dev/sdd6
................
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.#然后查看raid5的信息
[root@Node1 ~]# mdadm  -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Thu Jul  6 14:17:30 2023Raid Level : raid5Array Size : 2093056 (2044.00 MiB 2143.29 MB)Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistent
...............#可以停止raid5,然后重新激活raid5#停止raid5
[root@Node1 ~]# mdadm  -S /dev/md5
mdadm: stopped /dev/md5#查看状态
[root@Node1 ~]# mdadm  -D /dev/md5
mdadm: cannot open /dev/md5: No such file or directory#重新激活raid5
[root@Node1 ~]# mdadm  -As
mdadm: /dev/md/5 has been started with 3 drives and 1 spare.
mdadm: Found some drive for an array that is already active: /dev/md1
mdadm: giving up.
mdadm: Found some drive for an array that is already active: /dev/md1
mdadm: giving up.#然后在查看
[root@Node1 ~]# mdadm  -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Thu Jul  6 14:17:30 2023Raid Level : raid5Array Size : 2093056 (2044.00 MiB 2143.29 MB)Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistent

如果想要拓展raid5阵列

  • 使用到的参数就是-G
[root@Node1 ~]# mdadm  -G /dev/md5 -n 4 -c32
[root@Node1 ~]# mdadm  -Ds > /etc/mdadm.conf#然后在查看一下状态
[root@Node1 ~]# mdadm  -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Thu Jul  6 14:17:30 2023Raid Level : raid5Array Size : 3139584 (2.99 GiB 3.21 GB)Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)Raid Devices : 4Total Devices : 4Persistence : Superblock is persistent
.............

到这里实验结束

  • 停止阵列:-S选项
  • 激活阵列:-A
  • 拓展阵列:-G

http://www.ppmy.cn/news/241157.html

相关文章

【Web网站服务】Nginx优化

Nginx网页优化 一、配置Nginx网页缓存时间1.1设置方法 二、隐藏Nginx版本号2.1方法一:修改配置文件2.2方法二:修改源码文件,重新编译 三、修改用户与组四、日志切割五、连接超时六、更改进程数七、网页压缩八、配置防盗链九、Linux内核参数优…

【Spring Boot学习】今天是我的生日,舍友催我去吃饭,我还是坚持写完了Spring Boot配置文件,祝自己生日快乐哈

前言: 大家好,我是良辰丫,上一篇文章中我们已经学习了Spring Boot项目的的创建,今天我们会学习Spring Boot的配置文件,在今天的学习中我们会遇到许多我们不认识的注解,这些注解是Spring MVC中的,我们后续会介绍,大家先不用管这些注解是什么意思.那么,为什么不先学习MVC呢?我想…

挑选笔记本

中央处理器(英文Central Processing Unit,CPU)是一台计算机的运算核心和控制核心。CPU、内部存储器和输入/输出设备是电子计算机三大核心部件。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU由运算器、控制器和寄存器及实现它们…

OpenCL

转自:https://baike.baidu.com/item/OpenCL/8477301?fraladdin OpenCL(全称Open Computing Language,开放运算语言)是第一个面向异构系统通用目的并行编程的开放式、免费标准,也是一个统一的编程环境,便于…

OpenCL 简单概念

OpenCL(全称Open Computing Language,开放运算语言)是第一个面向异构系统通用目的并行编程的开放式、免费标准,也是一个统一的编程环境,便于软件开发人员为高性能计算服务器、桌面计算系统、手持设备编写高效轻便的代码…

显示硬件发展与视频开发系列(5)----智能时代05--运算平台

无论对于机器视觉,还是人工智能,相对从前,数据量发生了地覆天翻的变化。传统的运算框架不能满足现实的发展。人工智能影响不是一点一线,而是整个计算体系。 从AI/AR/VR芯片,到GPU数据处理,再到平台架构&…

正当防卫4

相信有很多玩家们都玩过正当防卫吧,对这款游戏感兴趣的玩家们一定不要错过这款:正当防卫4破解版,英文名为Just Cause 4,这是一款有着第三人称的动作冒险类单机游戏,它是由Avalanche Studios所制作的,由Squa…

体积小的台式计算机好吗,现在的台式电脑,已经变得这么小了吗

在年初的消费电子展(CES 2020)期间,雷蛇展示了一款名为 Tomahawk (战斧)的游戏主机。 一眨眼就到了 12 月,这台小主机终于要准备上市了。 △ 来源:雷蛇 别看它小小一个并不显眼,但可是实力满满的。 雷蛇 Tomahawk 的另外两个特性才…