RAID的全称是Redundant Array of Inexpensive Disks 可以释义为 廉价磁盘冗余阵列,后来的RAID里的字母I被认为是Independent,即独立的磁盘冗余阵列。
RAID的主要作用就是通过多个条带实现并行读写提高IO能力,以及提高磁盘的耐用性
RAID的实现方式
硬件实现
通过硬件RAID控制器或适配器将所需的磁盘组织成RAID,然后安装OS;
依靠 BIOS程序 设置RAID阵列,
软件模拟实现
操作系统通过系统调用的方式,模拟RAID实现;
RAID操作级别有以下几种:
RAID0:条带卷--strip
至少两块磁盘,没有冗余容错的能力
没有存储空间的浪费,要求每个磁盘必须提供大小相同的存储空间;
RAID1:镜像卷--mirror
一般两个磁盘,先将数据存入主盘,然后再将数据存入从盘。因此写入效率低,略微提升读效率 磁盘空间的整体利用率为50%,有冗余容错能力
RAID4:
多块磁盘进行异或运算,得到校验值,并且存到专门的一块磁盘中
即使一块磁盘损坏,也不会丢失数据
但是校验盘的IO压力巨大,很容易形成性能瓶颈
RAID5:
RAID4相似的方式,但是用的是多块磁盘进行循环冗余校验,校验值随机分配到不同磁盘的条带中
读写IO性能均明显提升,又不会出现性能瓶颈
磁盘利用率=(n-1)/n*100% 因此磁盘利用率不是100%
RAID6:
多块磁盘进行两轮循环冗余校验,校验值随机分配到不同磁盘的条带中
读写IO性能均明显提升,又不会出现性能瓶颈
最多两块磁盘出现故障损坏,依然保证数据可用
代价就是增加了计算校验值的时间;
此外还有RAID混合级别
RAID01:
先做RAID0,再做RAID1
RAID10:
先做RAID1,再做RAID0
RAID50
RAID7:可以理解为一个存储计算机,自带操作系统以及相应的管理工具,可以独立运行
在CentOS上实现软RAID(一般很少用到,都是在实现硬RAID)
内核提供一个md的模块(multi disks,multi devices)
用户空间需要mdadm的工具;来设置和修改md内核模块的参数
mdadm:
mdadm [mode] <raiddevice> [option...] <component device>
mode:
创建模式:-C :模式开关
-n #:明确的告诉md模块,使用#块磁盘来创建RAID设备
-l #:指示RAID 的级别
-a {yes|no}:允许系统或不允许系统自动创建md设备文件
-c CHUNK_SIZE:默认512K
-x #:指定在阵列中空闲磁盘的数量
装配模式:-A
管理模式:-a 添加 -r删除 -f标记设备 失效
杂项:
-D --scan 显示RAID设备的详细信息
mdadm -D --scan > /etc/mdadm.conf
该配置文件用于RAID设备的再次装配
-S 停止RAID的设备
例如将新加的磁盘建RAID0
~]# mdadm -C /dev/md0 -n 4 -l 0 -a yes /dev/sd{b,c,d,e}
然后创建文件系统并挂 载使用,df -hT 查看到 md0
dd命令: dd if=/dev/zero of=./test bs=1024 count=1000000 测试设备写的速度(if=目标大文件 of=/dev/null是测试读速度)
可以RAID0 提升了硬盘的读写速度
mdadm -S停止使用md0
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。