RAID各级别的特性及使用介绍(8.3博客作业)

RAID各级别的特性及使用介绍


介绍:

独立硬盘冗余阵列(RAID:Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列,简称磁盘阵列。

组成:

多块磁盘,RAID控制器(硬件RAID、软件RAID)

    硬件RAID:自带CPU的RAID卡,不消耗服务器资源,可通过备份电池模块和NVRAM讲硬盘读写日志保存在内存中,防止数据丢失。待电力恢复后,再由NVRAM读取日志数据,恢复读写作业。保证了数据完整性。通常性能较好,价格也较贵。

    软件RAID:由电脑主板CPU处理数据存储作业,优点是价格较低,缺点是消耗CPU资源较多。分为:1,纯软件磁盘阵列,只需主板支持即可,不需阵列卡;2,硬件辅助磁盘阵列:需要RAID卡和驱动程序。

优势:

通过并行读写提高IO能力、通过多盘冗余提供耐用性

种类:

标准RAID:RAID 0、RAID 1、RAID 2、RAID 3、RAID 4、RAID 5、RAID 6

混合RAID:JBOD、RAID 7、RAID 10/01、RAID 50、RAID 53、RAID 60

RAID级别 最小硬盘数 最大容错 可用容量 读性能(倍) 写性能(倍) 安全性 目的
单块磁盘 参考 0 1 1 1 参考
JBOD 1 0 n 1 1 增加容量
0 2 0 n n n 增大容量、速度
1 2 n-1 1 n 1 最高,坏一个没事 最大安全性
5 3 1 n-1 n-1 n-1 容量、备份、安全兼顾
6 4 2 n-2 n-2 n-2 比5安全 同5、比5更安全
10/01 4 n/2 n/2 n n/2 综合0/1优点,速度快

CentOS6结合内核中的md(multi devices)的软件RAID的实现

   mdadm:模式化的工具

语法:mdadm[mode]<raiddevice>[options]<component-devices>

支持的RAID级别:LINEAR, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10;

模式:

     -A, –assemble:加入一个以前存在的阵列

     -B, –build:建立不带超级块的传统阵列

     -C, –create:创建一个新阵列

     -F, –follow, –monitor:选择监控模式

     -G, –grow:调整激活的阵列大小或形状

     -I, –incremental:从现有合适阵列中增减一个设备,并尽可能启动阵列

     –auto-detect:请求内核启动任何自动检测到的阵列 

    -V, –version:打印mdadm的版本信息 

    -v, –verbose:显示细节 

    -b, –brief:较少的细节。用于 –detail 和 –examine 选项 

    -Q, –query:查看一个device,判断它为一个 md device 或是 一个 md 阵列的一部分 

    -D, –detail:打印一个或多个 md device 的详细信息 

    -E, –examine:打印 device 上的 md superblock 的内容 

    -c, –config=: 指定配置文件,缺省为 /etc/mdadm.conf 

    -s, –scan:扫描配置文件或 /proc/mdstat以搜寻丢失的信息。配置文件/etc/mdadm.conf 

    -f,–force:标记指定磁盘为损坏;

    -a:–add:添加磁盘

    -r:–remove:移除磁盘


示例:

1,创建一个可用空间为10G的RAID0设备,要求其chunk大小为128k,文件系统为ext4,有一个空闲盘,开机可自动挂载至/backup目录;

先创建两个5G的分区/dev/sdb1与/dev/sdb2

创建题目要求的阵列:

mdadm -C /dev/md0 -l0 -n2 -c 128 /dev/sdb1 /dev/sdb2
3mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

格式化这个阵列

mkfs.ext4 /dev/md0
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=32 blocks, Stripe width=64 blocks
655360 inodes, 2619392 blocks
130969 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2151677952
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

编辑/etc/fstab文件,在最后添加一行

/dev/md0 /backup ext4 defaults 0 0

 

2,创建一个可用空间为10G的RAID10设备,要求其chunk大小为256k,文件系统为ext4,开机可自动挂载至/mydata目录  

创建4个5G的分区/dev/sdb1与/dev/sdb2与/dev/sdb3与/dev/sdb4

mdadm -C /dev/md0 -l10 -n4 -c256 /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb4
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

格式化阵列

mkfs.ext4 /dev/md0
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=64 blocks, Stripe width=128 blocks
655360 inodes, 2619392 blocks
130969 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2151677952
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

编辑/etc/fstab文件,在最后添加一行

/dev/md0 /mydata ext4 defaults 0 0

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

(0)
lichenhanlichenhan
上一篇 2016-07-16 22:26
下一篇 2016-07-16 22:26

相关推荐

  • kickstart 的使用!

    简介 1.什么是kickstart KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,当找到合适的参数时,…

    Linux干货 2016-11-03
  • 第二次作业

    一、只显示某目录下隐藏文件    答案1:#ls -d /tmp/*/    但是此答案是我在同学知道下完成,但是原理没明白 如果单独执行        #ls -d  &nbsp…

    Linux干货 2016-08-03
  • 8月22日shell脚本编程之循环和函数

    shell脚本编程 本章内容 编程基础 脚本基本格式 变量 运算 条件测试 流程控制 函数 数组 高级字符串操作 高级变量 配置用户环境 编程基础 程序:指令+数据 编程程序风格:   过程式:以指令为中心,数据服务于指令   对象式:以数据为中心,指令服务于数据 shell程序:提供了编程能力,解释执行 程序的执行方…

    Linux干货 2016-08-24
  • Linux程序包编译安装

    程序包编译安装:      Application-VERSION-release.src.rpm–> 安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装      源代码–>预处理–>编译–>汇编–>链接–>执行      源代码…

    2017-04-25
  • Linux文件查找之find命令

    前言:        Linux文件种类繁多,难免在维护Linux中会忘记文件的路径。所有在维护Linux中学好查找命令是非常必要的。     Linux查找命令有很多,比如 whereis,type,which,locate,find(重点)。  &nbsp…

    Linux干货 2015-06-15
  • DNS服务器之理论基础

    一、什么是DNS     DNS全称为Domain Name System,即域名系统,其作用就是将我们经常使用的“网址”解析为IP地址。     在互联网上通信需要借助于IP地址,但人类对于数字的记忆能力远不如文字,那么将IP地址转换成容易记忆的文字是个好办法,可是计算机只能识…

    Linux干货 2015-04-29