RAID磁盘阵列与配置

一、RAID磁盘阵列详解

1、RAID磁盘阵列概述

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

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

组成磁盘阵列的不同方式称为RAID级别(RAID Levels)

常用的RAID级别有:RAID 0,RAID 1.RAID 5,RAID 6,RAID 1+0

RAID级别 硬盘数量 磁盘利用率 是否有校验 保护能力 读写性能 应用方面
RAID 0 N N 最好,(因并行而提高) 个人用户
RAID 1 N(偶数) N/2 允许一个设备故障 读和单个磁盘无区别,写则要写两边 适用于存放重要数据,如服务器和数据库存储等领域
RAID 5 N≥3 (N-1)/N 允许一个设备故障 读:RAID 5=RAID 0(相近似的数据读取速度),写:慢于对单个磁盘进行写入(多了一个奇偶校验信息的写入) 是一种存储性能、数据安全和存储成本兼顾的存储解决方案
RAID 6 N≥4 (N-2)/N 允许两个设备故障 读:同RAID 5,写:慢于RAID 5,需要写入两个奇偶校验信息 相较于RAID 5,有更强的安全性能
RAID 10 N≥4(偶数) N/2 允许两个机组中各坏一个 读:RAID 10=RAID 0,写:RAID 10=RAID 1 集合了RAID 0和RAID 1的优点,但是空间上由于使用镜像,而不是类似RAID5的“奇偶校验信息”,磁盘利用率益阳市50%

2、RAID 0(条带化存储)

RAID 0连续以位或字节为单位分割数据,并行读/写于多个从磁盘上,因此具有很高的数据传输率,但它没有数据冗余

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

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

3、RAID 1(镜像存储)

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

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

RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据

4、RAID 5

N(N≥3)块盘组成阵列,一份数据产生N-1个条带,同时还有1分校验数据,共N分数据在N块盘上循环均衡存储

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

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

可靠性高,允许坏一块盘,不影响所有数据

5、RAID 6

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

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

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

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

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

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

N/2磁盘利用率

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

性能高,可靠性高

7、RAID 0+1(先做条带,再做镜像)

读写性能与RAID 1+0相同

安全性能低于RAID 1+0

二、阵列卡

1、阵列卡介绍

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

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

不同的RAID卡支持的RAID功能不同,例如支持RAID 0、RAID 1、RAID 5、RAID 10等

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

2、阵列卡的缓存

缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据

缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素

不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等

三、软RAID磁盘阵列相关配置

1、创建软RAID磁盘阵列步骤

(1)检查是否已安装mdadm软件包

rpm -q mdadm

yum install -y mdadm

(2)使用fdisk工具将新磁盘设备/dev/sdb、/dev/sdc、/dev/sdd、/dev/sde划分出主分区sdb1、sdc1、sdd1、sde1,并且把分区类型的ID标记号改为"fd"

fdisk /dev/sdb

fdisk /dev/sdc

(3)创建RAID设备

创建RAID 5

mdadm -C -v /dev/md0 [-a yes] -15 -n3 /dev/sd[bcd]1 -x1 /dev/sde1

上述命令字段 说明
-C 表示新建
-v 显示创建过程中的详细信息
/dev/md0 创建RAID 5的名称
-a yes --auto,表示如果有什么设备文件没有存在的话就自动创建,可省略
-l 指定RAID的级别。l5表示创建RAID 5
-n 指定使用几块硬盘做RAID,n3表示使用3块硬盘创建RAID
/dev/sd[bcd]1
-x 指定使用几块硬盘做RAID的热备用盘,x1表示保留1块空闲的因公安作备用
/dev/sde1 指定用作于备用的磁盘

创建RAID 10(先做镜像,再做条带)

mdadm -Cv /dev/md0 -l1 n2 /dev/sd[bc]1

mdadm -Cv /dev/md1 -l1 n2 /dev/sd[de]1

madam -Cv /dev/md10 -l0 n2 /dev/md0 /dev/md1

2、查看RAID磁盘详细信息

cat /proc/mdstat #还能查看创建RAID的进度



mdadm -D /dev/md0

也可用搭配watch -n命令来刷新进度情况,例如:

watch -n 10 'cat /proc/mdstat'

3、检查磁盘是否已做RAID

mdadm -E /dev/sd[b-e]1

4、创建并挂载文件系统

mkfs -t xfs /dev/md0 #格式化,创建xfs文件系统

mkdir /myraid #创建挂载目录

mount /dev/md0 /myraid/ #完成挂载

df -Th #查看挂载情况

cp /etc/fstab /etc/fstab.bak #备份配置文件

vim /etc/fastab #编辑配置文件

/dev/md0 /myraid xfs defaults 0 0 #添加自动挂载信息后保存重启

5、实现故障恢复

mdadm /dev/md0 -f /dev/sdb1 #模拟/ev/sdb1故障

mdadm -D /dev/md0 #查看发现sde1已顶替sdb1(sde1已做热备份)

6、创建/etc/mdadm.conf配置文件

由于raid创建后没有配置文件,对于raid的管理来说极为不便,因此为方便管理软RAID,比如启动、停止等,我们可以通过创建/etc/mdadm.conf配置文件来加快工作效率

echo 'DEVICE /dev/sdc1 /dev/sdb1 /dev/sdd1 /dev/sde1' > /etc/mdadm.conf

mdadm --detail --scan >> /etc/mdadm.conf

7、RAID开机自启设置

为raid设置开机自启,可进入rc.sysinit启动脚本文件中加入命令mdadm -As /dev/md0后即可

8、mdadm命令其他常用选项

常用选项 说明
-r 移除设备
-a 添加设备
-S 停止RAID
-A 启动RAID
-f 模拟故障
-Q 查看摘要信息
-D 查看详细信息
-s 查找/etc/mdadm.conf文件中的配置信息
例如:
mdadm /dev/md0 -r /dev/sdb1
mdadm -S /dev/md0
mdadm -As /dev/md0

RAID磁盘阵列与配置的更多相关文章

  1. 1-15-1 RAID磁盘阵列的原理和搭建

    大纲: 1.1-1-企业级RAID磁盘阵列 RAID磁盘阵列的原理 RAID0,1,5,10的搭建 硬件RAID卡 1.2-1-使用廉价的磁盘搭建RAID磁盘阵列 实战-配置RAID0带区卷 ==== ...

  2. RAID磁盘阵列和RAID配置

    目录 一.RAID磁盘阵列介绍 二.RAID磁盘阵列分类 2.1.RAID 0(条带化存储) 2.2.RAID 1(镜像存储) 2.3.RAID 5 2.4.RAID 6 2.5.RAID 1+0和0 ...

  3. RAID磁盘阵列笔记

    磁盘阵列RAID是服务器维护的必备知识,以前不太关心服务器维护方面的知识.目前要负责维护机房里的几台服务器,所以要关注这方面的内容. 磁盘阵列是用多块独立磁盘组成,提供两个方面的作用:数据安全冗余 和 ...

  4. RAID磁盘阵列学习笔记

    RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列.简单地解释,就是将N台硬盘通过RAID Controller(分Hardware ...

  5. linux lvm管理扩展 RAID磁盘阵列管理

    LVM逻辑卷将多个物理分区/磁盘从逻辑上组合成一个更大的整体,从其中划分出不同的逻辑分区,逻辑分区的大小可以根据需要扩大,缩减!!!!/boot用来存放引导文件,不要基于LVM创建 PV(物理卷)物理 ...

  6. RAID磁盘阵列及CentOS7系统启动流程(week2_day3)--技术流ken

    RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 磁盘阵列是由很多价格较便宜的磁盘,以硬件( ...

  7. RAID磁盘阵列及CentOS7系统启动流程

    磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意,,数据读取无影响.将数据切割成许多区段,分别存放在各个硬盘 ...

  8. Linux 中磁盘阵列RAID10配置

    首先,了解一下RAID是什么?(百度所得) 独立磁盘冗余阵列(RAID,redundant array of independent disks)是把相同的数据存储在多个硬盘的不同的地方(因此,冗余地 ...

  9. Linux系统的RAID磁盘阵列

    RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 磁盘阵列是由很多价格较便宜的磁盘,以硬件( ...

随机推荐

  1. springboot单元测试为什么排除junit-vintage-engine

    https://blog.csdn.net/Ber_Bai/article/details/117001443 如果不排除,就需要使用@RunWith注解? 25-springboot整合单元测试指定 ...

  2. C# double类型精度丢失问题

    我们先看一段代码,可以在控制台程序中执行看看结果 { double d = 500; double d1 = 233.84; double d2 = d - d1; //d2=266.15999999 ...

  3. [学习笔记] Oracle集合运算、内连接、外连接、伪列

    集合运算 INTERSECT(交集),返回两个查询共有的记录. UNION ALL(并集重复),返回各个查询的所有记录,包括重复记录. UNION(并集不重复),返回各个查询的所有记录,不包括重复记录 ...

  4. hive 之 常用基本操作

    show databases; -- 查看所有数据库 use 数据库; -- 进入某个数据库 select current_database(); -- 查看当前使用的数据库 show tables; ...

  5. vue - public 引入 <script>报错 Uncaught SyntaxError: Unexpected token '<'

    1.现象 原本我是直接在母版引入 <script type="application/javascript" src="static/config.js" ...

  6. OSPF路由协议详解

    OSPF:开放式最短路径优先协议无类别链路状态路由协议,组播更新224.0.0.5/6:跨层封装到三层,协议号89:基于拓扑工作,故更新量大-----需要结构化部署–区域划分.地址规划触发更新.每30 ...

  7. Python爬取中国知网文献、参考文献、引证文献

    前两天老师派了个活,让下载知网上根据高级搜索得到的来源文献的参考文献及引证文献数据,网上找了一些相关博客,感觉都不太合适,因此特此记录,希望对需要的人有帮助. 切入正题,先说这次需求,高级搜索,根据中 ...

  8. SSM实现支付宝支付

    学习支付宝支付 一.支付宝测试环境代码测试 1.下载电脑网站的官方demo: 下载地址:https://docs.open.alipay.com/270/106291/ 2.下载解压导入eclipse ...

  9. uniapp 判断 IOS和Android的GPS是否开启并设置启动

    checkOpenGPSServiceByAndroidIOS() { let system = uni.getSystemInfoSync(); // 获取系统信息 console.log(syst ...

  10. java关于for循环的效率优化

    我们知道在实现一个功能的时候是可以使用不同的代码来实现的,那么相应的不同实现方法的性能肯定也是有差别的,所以我们在写一些对性能很敏感的模块的时候,对代码进行优化是很必要的,所以我们说一下for循环(w ...