RAID与软RAID命令应用
独立冗余磁盘阵列(RAID)
磁盘阵列:原理是利用数组方式来作磁盘组,配合数据分散排列的设计,提升数据的安全性。磁盘阵列是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。磁盘阵列还能利用同位检查的观念,在数组中任一颗磁盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。
独立磁盘冗余阵列(RAID)是把相同的数据存储在多个硬盘的不同的地方(因此,冗余地)的方法。通过把数据放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能。因为多个硬盘增加了平均故障间隔时间(MTBF),储存冗余数据也增加了容错。
我们来说一下RAID的级别,RAID的级别没有明确的上下级关系,它只不过是磁盘的不同组成方式而已。RAID分为硬件RAID,软件RAID;硬件顾名思义就是硬件设备通过RAID的组成方式来实现数据存储的,而软件则是通过软件模拟出来的。
RAID的磁盘组成方式主要有RAID 0~RAID 50,它们的侧重点和组成方式各有不同。
RAID 0:又称条带,它是通过连续的位或字节来分割一个数据,再分别存放在多个硬盘上,实现数据的存储和访问,它提高了数据的读、写能力,但是它没有数据的冗余能力,如果一个磁盘坏了,将影响所有数据,如图:
将数据A分割为等同数据块A1、A2、A3、A4...,分别存放在两个不同的磁盘中,实现数据的性能的提升,当其中一个数据丢失,比如一个磁盘坏了,那么这个数据A就不完整了,不能被读出来,所以它没有冗余能力,两个磁盘都被有效的使用了,RAID 0空间利用率为100%。
RAID 1:又称为镜像,在成对的磁盘上通过互为备份的方法实现数据的冗余能力,当原数据繁忙时,可以从备份的磁盘中读取数据,提高了数据的读能力,因为同个数据要存放两次,所以它的写能力下降,空间利用率只有50%,如图:
A数据存储在disk 0上,但又通过镜像备份由备份了一份放在了disk 1上,所以当disk 0 坏了,disk 1上还有数据,不会影响其A数据。
RAID 4:又称为校验码技术,它是在RAID 0的基础上实现了改进,因为RAID 0没有数据冗余能力,所以在存储数据时,在每个数据块上存放一个特殊的标识来标记,然后在在用一个磁盘来存储这些标记,如图:
Disk 2就是用于磁盘标识符的盘,它被称为奇偶校验盘,当数据块A2丢失时,它可以通过计算得出A2 (1+2-1=2),实现了数据冗余能力,但是每次写操作都需要访问奇偶盘,这时奇偶校验盘会成为写操作的瓶颈,写能力就下降了,空间利用率为(n-1)/n,至少需要3块磁盘。
RAID 5:是再RAID 4的基础上改进的,它是让每个磁盘轮流做奇偶校验盘,如图:
在读写是可同时对磁盘进行操作,读写性能提高,有数据冗余能力,空间利用率为(n-1)/n,至少3块磁盘。
RAID 01:是RAID 0和RAID 1的组合产物,先是实现数据的条带,然后进行镜像备份,如图:
先对数据A在连续地以位或字节为单位分割数据并且并行读/写多个磁盘的同时,为每一块磁盘作磁盘镜像,它的优点是同时拥有RAID 0的超凡速度和RAID 1的数据高可靠性,但是CPU占用率同样也更高,而且磁盘的利用率比较低,读写性能都提高了,有数据冗余能力,空间利用率50%,至少4块磁盘组建。
RAID 10:它和RAID 01刚好一反,先镜像再分区数据,再将所有硬盘分为两组,如图
它是先将每组的数据块进行镜像备份,在进行数据的条带,当其中的一个磁盘坏了,也不会影响数据,读写性能提高,有数据冗余能力,空间利用率为50%,至少4块磁盘组建。
RAID 50:具备更高的容错能力,因为它允许某个组内有一个磁盘出现故障,而不会造成数据丢失。而且因为奇偶位分部于RAID5子磁盘组上,故重建速度有很大提高。优势:更高的容错能力,具备更快数据读取速率的潜力。需要注意的是:磁盘故障会影响吞吐量。故障后重建信息的时间比镜像配置情况下要长。
jbod:看中容量,实现将多个小盘组合成一个大盘来用,读写性能无提高,也无数据冗余能力,空间利用率100%,至少2块磁盘组合而成。
由于条件限制我们无法实现硬RAID,所以只能通过软件来实现仿真效果,那么我们来说一下,软RAID的具体用法及其注意事项;
我们在linux中,想实现RAID的操作,命令是比不可少的;
Mdadm命令就是我们要用到的命令,它能帮助我们实现磁盘阵列的创建,模拟磁盘故障等一些现实中常常出现的问题。
Mdadm是将任何块设备做成RAID,它具有一些模式化命令;
创建模式:
mdadm -C /dev/md# .....
专用选项:
-l:级别 -a {yes|no}:自动为其创建设备文件
-n:设备个数 -c:条带大小,默认为64K
在此之前我们现创建两个分区,分别为sda5,sda6,因为RAID 1的磁盘空间利用率为50%,一个用于存储数据,一个用于镜像备份数据。其格式为fd(linux raid auto),其创建分区不在演示说明;然后用命令mdadm 来创建RAID 1,命令mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sda{5,6},命令结束后可以用cat /proc/mdstat查看是否创建成功,如图:
管理模式:
--add|-a:添加磁盘 --remove|-r:移除磁盘 --fail|-f:模拟磁盘损坏
创建RAID 1成功后,要将其挂起才能用,挂起前还要对md1进行格式化mke2fs -j /dev/md1,然后挂起,成功后我们将一个文件拷贝到挂起点,挂起命令mount /dev/md1 /abc/sd5我选择的挂起点为/abc/sd5,用查看是否挂起的命令为mount,如图
我们用命令mdadm /dev/md1 -f /dev/sda6来模拟sd6盘损坏,看看是否影响拷贝的文件,让我们思考一下结果怎样?
那我们此时访问拷贝过来的文件,会访问成功吗?会成功,因为在拷贝过去的同时,也在另一个盘上镜像的有一份,所以一盘损坏不影响数据。
mdadm /dev/md1 -a /dev/sda7此命令是加载一个磁盘,当RAID 1中某个盘损坏了可以用sda7替换。
监控模式:-F 增长模式:-G 装备模式:-A
查看RAID阵列的详细信息,管理工具
mdadm --D /dev/md#
--detail
停止阵列:
mdadm -S /dev/md# (停止RAID阵列)
--stop
当要停止RAID时,可用此命令。
转载于:https://blog.51cto.com/runnerup/1153617
RAID与软RAID命令应用相关推荐
- RAID及软RAID的实现,包括各级别RAID的原理及各级别RAID的实现
计算机内部的核心部件 对于计算机来讲,核心部件有cpu 内存其中:cpu从内存中取得数据从而进行运算,由于内存是易失性设备,若是做成非易失性设备,代价是非常高昂的.但是由于cpu内部具有各级缓存,寄存 ...
- 什么是RAID? 硬RAID 和软RAID的区别是什么?
近年来 NAS越加火爆,但是在使用 NAS时无法避免的一个东西就是 RAID,那么什么是 RAID 呢?又有那些坑呢? 什么是 RAID RAID 是Redundant Array of Indepe ...
- linux 系统盘做软raid,Linux软RAID配置
RAID卡一般分为硬RAID卡和软RAID卡两种,通过用硬件来实现RAID功能的就是硬RAID,独立的RAID卡,主板集成的RAID芯片都是硬RAID.通过软件并使用CPU的RAID卡是指使用CPU来 ...
- linux raid autodetect,软raid的建立
1 增加磁盘并分区(修改id) fdisk /dev/sdb Command (m for help): p Disk /dev/sdb: 8589 MB, 8589934592 bytes 255 ...
- linux raid auto 软raid parted,linux下的raid5配置方法.doc
要求:需要在三块硬盘上创建RAID5 并挂载到 /raid5disk 目录下! 先用fdisk -l 看一下三块磁盘的设备号,在这里就是 /dev/sdb /dev/sdc /dev/sdd 1. 首 ...
- md0和md1linux软raid,linux下Raid及mdadm命令详解
linux下Raid及mdadm命令详解 1.RAID级别:仅代表磁盘组织方式不同,没有高低之分: Raid常用种类:raid0,raid1,raid5,raid10,raid01 jbod:叠加硬盘 ...
- Linux软raid创建和维护
2019独角兽企业重金招聘Python工程师标准>>> 说明:RAID分为软RAID和硬件RAID 软件RAID是基于系统的软件工作 不稳定,如果系统坏了,RAID整列也就损坏,容 ...
- 软RAID 0的技术概要及实现 v0.1b
原贴:http://www.linuxsir.org/main/?q=node/279 软RAID 0的技术概要及实现 v0.1b (正在修订之中) 作者:北南南北 来自:LinuxSir.Org 摘 ...
- 磁盘管理---RAID磁盘阵列(重点容错能力)软RAID的实现
文章目录 RAID基本概念 RAID级别 软RAID **mdadm:模式化的工具** 1.软RAID配置示例 2.测试RAID设备 3.软RAID测试和修复 4.增加新的成员 **软RAID管理** ...
最新文章
- 逆战服务器在哪个文件夹,逆战的背景音乐文件夹放在哪?别说在服务器上面!...
- powerDesigner 正向工程生成sql注释问题 (mysql注释问题)
- Service Bus EAI EDI 实验室发布了
- Unity Application Block-配置文件的使用-示例(附×××)
- 用html编写ASCII表,[html_css]ASCII编码表
- MoeCTF 2021Re部分------ez(递归转循环)
- nmap在kali的使用方法和常见命令(入门)
- MySQL学习笔记——第1章 数据库和MySQL
- VMware Workstation 不可恢复错误: (vcpu-0) vcpu-0:VERIFY vmcore/vmm/main/cpuid.c:376 bugNr=1036521
- 浅谈系统如何对接社交登录之微博登录功能
- c11标准的c语言编译器,官宣:MSVC新加入C11和C17标准
- 计算机四级等级考试网络工程师知识点-【操作系统原理+计算机网络两科完整】
- 怎么使用手机号申请邮箱,注册移动手机邮箱有哪些步骤?
- JAVA代码实现计算器功能
- Android常用炫酷风格控件包含项目地址汇总
- 数据库应用系统的生命周期
- 藏书馆App基于Rainbond实现云原生DevOps的实践
- c#怎么在github上快速找到相关的开源项目
- KISSY基础篇乄KISSY之Node(1)
- 新程序猿如何度过试用期