Linux基础之RAID

一.RAID介绍

RAID刚开始出现的时候叫做廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),但在当时磁盘并非像现在这么便宜,反而这种组合方式使得代价非常昂贵,所以后来改名为独立磁盘冗余阵列(Redundant Array of Independent Disks),基本的思想就是组合组合多个便宜的,性能相对较低的磁盘,使之成为一个性能优越,容量大的存储设备,在逻辑上只表现为一个存储设备。RAID也分为不同的级别,各个级别有各自的特点。

二.RAID级别及其特点

1.RAID-0:也叫条带化存储,将一块数据切分为块,其中一半存储在一块磁盘中,另一半存储在另外一块磁盘中

raid 0.png

特点:

(1)至少需要两块磁盘
(2)可用空间:磁盘块数 * 所有磁盘中容量最小的磁盘容量大小
(3)从图中可以看出来,RAID 0没有容错能力
(4)磁盘的读写性能均有提升

2.RAID-1:也叫镜像化存储,将数据拆分为数据块进行存储,而且一边存储一边备份

raid 1.png

特点:

(1)至少需要两块磁盘
(2)可用空间:磁盘块数 * 所有磁盘中容量最小的磁盘容量大小
(3)具有容错功能,允许一块磁盘损坏
(4)磁盘的写性能有所下降

3.RAID-5:分布式奇偶校验,数据分块之后存储在不同的磁盘上,校验码也分布在各个磁盘上,如下图,p为校验码

raid 5.png

特点:

(1)至少需要3块磁盘
(2)可用空间:(磁盘总数-1)*所有磁盘中容量最小的磁盘的容量
(3)具有容错能力
(4)磁盘的读写性能均有提升

4.RAID-6:双分布式奇偶校验,将数据分块之后存储在不同的磁盘之上,使用两个独立的校验系统,具有很高的可靠性,即使两个磁盘同时损坏,也依然能将数据恢复,如下图,p和p'分别采用不同的校验系统

raid 6.png

特点:

(1)至少需要4块磁盘
(2)可用空间:(磁盘总数-2)*所有磁盘中容量最小的磁盘的容量
(3)因为要做两次校验,因此磁盘的写性能下降
(4)具有较强的容错能力

5.RAID-01:顾名思义,先做RAID-0,整体再做RAID-1,如下图所示:

RAID 01.png

特点:

(1)至少需要4块磁盘
(2)磁盘的读写性能均有提升
(3)可用空间:(磁盘总数 * 所有磁盘中容量最小磁盘的容量)/2
(4)具有容错能力

6.RAID-10:同样,先做RAID-1,再做RAID-0,如下图所示

RAID 10.png

特点:

(1)至少需要4块磁盘
(2)可用空间为:(磁盘总数 * 磁盘中容量最小的磁盘的容量)/2
(3)磁盘的读性写能都有提升
(4)具有容错能力

三.以软件的方式实现RAID

软RAID的实现要依赖内核中的multi devices模块,使用mdadm来实现,目前支持的级别有 RAID-0,RAID-1,RAID-5,RAID-01,RAID-10,注意,要想实现软RAID磁盘的分区类型必须为fd

1.mdadm的使用方式:

 mdadm [mode] <raiddevice> [options] <component-devices>

其中:

mode有:创建模式,装配模式,监控模式,管理模式

(1)创建模式:-C

-n <number>:创建RAID使用的设备数
-l <raid_level>:指定所创建的raid级别
-a {yes|no}:是否自动创建RAID设备文件
-x <number>:指明空闲盘的个数

(2)装配模式:-A

(3)监控模式:-F 

(4)管理模式:当对raid设备进行标记,添加,移除等操作时,就是在管理模式


<raid_device> :RAID设备

<component_device>:要使用那几块磁盘创建

[options]:

-D <raid_device>:查看指定RAID设备的信息
–stop <raid_device> : 停止指定的raid设备
-h,–help:获取帮助

2.使用示例:

创建一个大小为10G的RAID1,要求有一个空闲盘,而且CHUNK大小为128k

思路:RAID-1至少需要2块硬盘,还要求有一个空闲盘,于是至少需要三块盘,但是由于是软raid,所以以分区模拟磁盘

步骤:

(1)创建三个分区,使用fdisk创建:

分区.png

(2)创建RAID-1:

创建.png

查看结果为:

结果.png


创建一个大小为4G的RAID5设备,chunk大小为256k,格式化ext4文件系统,要求可开机自动挂载至/backup目录,而且不更新访问时间戳,且支持acl功能;

思路:RAID-5至少需要三块磁盘,同样以三个分区来模拟,要想实现开机自动挂载,要通过编辑/etc/fstab来实现

步骤

(1)创建分区,与上一示例相同

(2)创建

raid-5.png

查看结果为:

结果2.png

(3)格式化为ext4文件系统

格式化.png

(4)修改/etc/fstab文件

首先创建/backup目录

创建目录.png

修改配置文件:vim /etc/fstab

FS.png


原创文章,作者:zhangbao,如若转载,请注明出处:http://www.178linux.com/57834

(0)
上一篇 2016-11-07 22:29
下一篇 2016-11-08 06:16

相关推荐

  • CentOS6.7上编译安装php

    环境:CentOS6.7,minimal安装。 前提条件:安装了编译环境,安装了Apache/Nginx,安装了MySQL/MariaDB。具体安装见:http://www.178linux.com/16583    http://www.178linux.com/17497  1、解决依赖关系: 请配置好yum源(系统安装源及…

    Linux干货 2016-06-03
  • 第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 答:针对文件常用的命令有如下几大类: a)文件创建命令 touch       touch /path/filename  —-新建一个空的文件 b)文件复制命令 cp       cp /path1/…

    Linux干货 2016-11-19
  • 高性能Mysql主从架构的复制原理及配置详解

    1 复制概述       Mysql内建的复制功能是构建大型,高性能应用程序的基础。将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重新执行一遍来实现的。复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器…

    Linux干货 2015-04-13
  • 初识MySQL(一)

        数据库(DATABASES)      数据库是一个单位或是一个应用领域的通用数据处理系统,存储有企业和事业部门、团体和个人的有关数据的集合,该集合中数据是从全局观点出发建立的,按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不…

    Linux干货 2015-08-24
  • 迁移home到独立分区

    1,fdisk  /dev/sda  创建10G的分区 Lsblk 查看下新创建分区是否同步 partx  -a  /dev/sda 同步 2,mkfs.ext4  /dev/sda6  -L  /home 创建文件系统跟卷标 3,mkdir  /mnt/home  创建一个挂载点 mount  /dev/sda6  /mnt/home 挂载 4,cp  -…

    2017-12-14
  • linux【管道命令 PIPE】选取命令、排序命令、双向从定向、比较工具

    linux【管道命令 PIPE】选取命令、排序命令、双向从定向、比较工具 选取命令【cut,grep】 cut:可将一段信息的某一段‘切’出来。处理信息时使用以‘行’为单位。 cut -d ‘分割字符’ -f fields 用于分割字符 cut -c 字符范围 用于排列整齐的信息 参数: -d:后面接分隔字符,与-f一起使用 -f:以及-d的分割字符将一段信…

    Linux干货 2017-04-04

评论列表(1条)

  • Sunshine
    Sunshine 2017-04-24 02:59

    You always look fabulous, Vix! I'm so jealous!I may have to come to your neck of the woods for a car boot sale, if thy#9e3&;re held that regularly! They're very rare round here :(Great post xo