复习-RAID原理详解

一、RAID

RAID:冗余磁盘阵列,将多个磁盘不同的方式组成阵列,作为单一磁盘使用;通过RAID,大幅提高了I/O能力、容错性。

二、RAID级别

不同的磁盘阵列组成模式,称为磁盘级别,不同的RAID级别可提供不同的I/O能力提升、磁盘可用率和容错性

1、RAID 0 条带卷 strip

 用两块和两块以上磁盘组成,RAID控制器将数据平均切割成多块,并将数据库分散存放在各磁盘上。每个磁盘上存数据的一部分。
        磁盘利用率 最小磁盘*N
        I/O能力大幅提升
        无容错性
        磁盘数量 2块和2块以上

raid0.png

2、RAID 1镜像

至少用2块盘组成,存数据时,在每个磁盘上各存一份。
         读性能上升,写性能因为在存储多次,会下降
         磁盘利用率   最小的那块磁盘空间大小
         有冗余能力  
         磁盘数据 2块和2块以上

raid1.png

3、RAID 4,独立校验

使用一块硬盘单独存放校验码,数据按块存放在各数据盘,每次读取数据都要校验,校验盘容易成为瓶颈,可以坏一块盘
    有冗余能力
    磁盘数量 3块及3块以上

raid4.png

4、RAID 5 分布式校验

将校验码随机存放在各硬盘上,可以坏一块磁盘
读、写性能提升
可用空间:(N-1)*最小磁盘
有容错能力:1块磁盘
最少磁盘数:3, 3+

raid5.png

5、RAID 6 两次校验

将校验码存放两次,可以坏两块盘
读、写性能提升
可用空间:(N-2)*最小磁盘
有容错能力:可以两块磁盘
最少磁盘数:4个及4个以上

6、RAID 10

先按RAID 1做成阵列,再做RAID 0
读、写性能提升
可用空间 5-%
容错,每组RAID 1可坏一块磁盘
最少磁盘数:4个及4个以上

raid10.png

7、RAID 01

先按RAID 0做成阵列,再做RAID 1

JBOD:将多块磁盘合并为连续空间

三、RAID实现方式

外接式磁盘阵列:通过扩展卡提供适配能力
内接式RAID:主板集成RAID控制器
Software RAID:软件方式模拟,mdadm

四、mdadm命令

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

mdadm用法

mdadm [mode] <raiddevice> [options] <component-devices>
mode:
 #创建:-C
 #装配: -A
 #监控: -F
 #管理: -f,-r,-a
 #<raiddevice> RAID设备文件: /dev/md#
 #<component-devices> 组成RAID的磁盘

-C  创建

   -n #       使用#个设备创建RAID
   -l #   RAID级别
   -a yes|no  是否自动创建RAID设备文件
   -c         指定块大小:512字节
   -x#   指定容余和空闲盘个数

mdadm  /dev/md0 -C -n 3 -x 1 -l 5  -a yes  /dev/sda{1,2,3,4} 
#使用sda1-4创建RAID5,其中一块盘为热备,设备文件为dev/md0,

-D 查看RAID设备的详细信息

 mdadm /dev/md#

管理模式:

 -f: 标记指定磁盘为损坏;
 -a: 添加磁盘
 -r: 移除磁盘

观察md的状态:

cat /proc/mdstat

停止md设备:

mdadm -S /dev/md#

watch命令:

-n #: 刷新间隔,单位是秒;
watch -n# 'COMMAND'

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/21413

(0)
N21-沉舟N21-沉舟
上一篇 2016-07-04 11:34
下一篇 2016-07-04 11:34

相关推荐

  • 7.28_Linux_ext数据结构inode的原理浅析、软硬链接的区别

    inode表结构浅析 下图以ext文件系统为参考,以4k块大小分区,简单描述一下ext文件系统的数据结构原理,如果有任何错误,烦请各位指出 inode 索引节点 硬盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区。硬盘的读写以扇区为基本单位。 扇区的大小,是2的N次方倍。分区的大小可以有多样,1k、2k、4k…以4k块大小来说明。4k块大…

    Linux干货 2016-08-03
  • 10个必需的iOS开发工具和资源

       界面总不是一件很容易事,尤其是iPhone/iPad的界面,做过iOS开发的程序员,一定会感到开发iPhone/iPad的界面是一件多么不容易的事。下面的文章来自10 Essential iOS Developer Tools & Resources,这个文章介绍了十个iOS开发的基础性工具和资源,其一定会很有效地帮你做iO…

    Linux干货 2015-04-01
  • linux基础学习第十一天(shell循环、软件包管理)

    2016-08-16 授课内容: shell脚本基础:循环,for,while,until(未讲完) 软件包管理(未讲完): 软件运行环境 软件包基础 Rpm包管理 循环执行 将某代码段重复运行多次 重复运行多少次: 循环次数事先已知 循环次数事先未知 有进入条件和退出条件 循环控制语句: break:【提结束循环,循环将不再执行】指前面的循环退出,退…

    Linux干货 2016-08-18
  • HTTP详解(1)-工作原理

    1. HTTP简介          HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输…

    Linux干货 2015-04-04
  • 计算机网络基础

    1、OSI, TCP/IP, 五层协议的体系结构, 以及各层协议 OSI分层(7层): 物理层, 数据链路层, 网络层, 传输层, 会话层, 表示层, 应用层 TCP/IP分层(4层): 网络接口层, 网际层, 传输层, 应用层 五层协议(5层): 物理层, 数据链路层, 网络层, 运输层, 应用层 每一层的协议: 物理层: RJ45, CLOCK, IEE…

    Linux干货 2016-09-19