RAID磁盘阵列
RAID磁盘阵列介绍
- RAID是英文Redundant Array of Inexpensive Disks的缩写,中文简称为廉价磁盘冗余阵列。
- 把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。
- 组成磁盘阵列的不同方式称为RAID级别
常用的RAID级别
RAID 0
- RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余,因此并不能算是真正的RAID结构。
- RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据。
- RAID 0不能应用于数据安全性要求高的场合。
2快硬盘并行组成一个新的逻辑盘
将数据分割在多个硬盘上,因此提高了传输效率。
RAID最小存储单元:chunk=512K
但RAID0的问题是,它并不提供数据校验或冗余备份,因此一旦某块磁盘损坏了,数据就直接丢失,无法恢复了。
RAID 1
- 通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互 为备份的数据。
- 当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。
- RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
- N(偶数)块硬盘组合成一组镜像,N/2容量
RAID1其实与RAID0效果刚好相反。RAID1 这种写双份的做法,就给数据做了一个冗余备份。这样的话,任何一块磁盘损坏了,都可以再基于另外一块磁盘去恢复数据。
成本过高
RAID 5
- 至少需要3块硬盘组成阵列,一份数据产生N-1个条带,同时还有一份校验数据(奇偶校验码),共N份数据在N块硬盘上循环存储。
- N块硬盘同时读写,读的性能很高,但是由于有奇偶校验码机制的问题,所以写性能相对不高。
- 可靠性高,允许坏1块盘,不影响所有数据
- 利用率:(N-1)/2
优点:读的情况下是单盘数据的三倍;有一定的安全性,可以容忍损坏一块磁盘
缺点:由于每次写数据都需要计算校验块,导致写性能下降;仅能容忍坏一块磁盘损坏
RAID 6
- 至少4块硬盘组成阵列。利用率:(N-2)/2
- 与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块
- 两个独立的奇偶系统使用不同的算法,因此凉快磁盘同事损坏也不会影响数据的使用。
- 相对RAID 5来说RAID 6 的写性能更差。即 有更大的”写损失“
RAID 10
- N(偶数)块盘做镜像,再按照RAID0的方式组合
- N/2利用率
- N/2块盘同事写入,N块盘同时读取
- 性能高,可靠性高
各种组合之间的对比
硬RAID和软RAID
硬raid:需要服务器上有阵列卡,然后连接上硬盘,开启服务器配置,速度快,稳定
软raid:在系统上用mdadm工具去创建和管理
软RAID的配置
mdadm是一个用于创建、管理、监控RAID设备的工具,它使用linux中的md驱动。
建立分区
raid 0:
[root@promote ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x16d8fd77 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{
K,M,G} (2048-41943039,默认为 41943039):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
#建立两个分区 /dev/sdb1 /dev/sdb2
mdadm命令建立 RAID 0
mdadm [模式] [RAID设备文件名] [选项]
模式:
Assemble:加入一个已经存在的阵列;
Build:创建一个没有超级块的阵列;
Create:创建一个阵列,每个设备都具有超级块;
Manage:管理阵列,如添加设备和删除损坏设备;
Misc:允许单独对阵列中的设备进行操作,如停止阵列;
Follow or Monitor:监控RAID状态; Grow:改变RAID的容量或阵列中的数目;
选项:
- -s,-scan:扫描配置文件或/proc/mdstat文件,发现丟失的信息;
- -D,-detail:查看磁盘阵列详细信息;
- -C,-create:建立新的磁盘阵列,也就是调用 Create模式;
- -a,-auto=yes:采用标准格式建立磁阵列
- -n,-raicklevices=数字:使用几块硬盘或分区组成RAID
- -l,-level=级别:创建RAID的级别,可以是0,1,5
- -x,-spare-devices=数字:使用几块硬盘或分区组成备份设备
- -a,-add 设备文件名:在已经存在的RAID中加入设备
- -r,-remove 设备文件名名:在已经存在的RAID中移除设备
- -f,-fail设备文件名:把某个组成RAID的设备设置为错误状态
- -S,-stop:停止RAID设备
- -A,-assemble:按照配置文件加载RAID
- -v,–verbose:显示更详细的信息
用于 –detail –scan 或者 –examine –scan
[root@promote ~]# mdadm -C -v /dev/md0 -l0 -n2 /dev/sdb[1-2]
mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
mdadm -D /dev/md0 :查看详情
[root@promote ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu May 13 23:23:07 2021
Raid Level : raid0
Array Size : 10475520 (9.99 GiB 10.73 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu May 13 23:23:07 2021
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Chunk Size : 512K
Consistency Policy : none
Name : promote.cache-dns.local:0 (local to host promote.cache-dns.local)
UUID : 80d67c0c:0044b617:47ab98ed:bb9214f9
Events : 0
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 8 18 1 active sync /dev/sdb2
[root@promote etc]# mdadm -Ds /dev/md0
ARRAY /dev/md0 metadata=1.2 name=promote.cache-dns.local:0 UUID=80d67c0c:0044b617:47ab98ed:bb9214f9
cat /proc/mdstat :查看RAID实时情况
[root@promote etc]# cat /proc/mdstat
Personalities : [raid0]
md0 : active raid0 sdb2[1] sdb1[0]
10475520 blocks super 1.2 512k chunks
unused devices: <none>
格式化
mkfs
[root@promote etc]# mkfs.xfs /dev/md0
meta-data=/dev/md0 isize=512 agcount=16, agsize=163712 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2618880, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
mkdir /raid0 创建/raid0目录
挂载
mount /dev/md0 /raid0
转载:https://blog.csdn.net/weixin_55905026/article/details/116768737