linux中的磁盘阵列(RAID)

RAID: Redundant Arrays of Inexpensive Disks

 Independent

提高IO能力: 通过磁盘并行读写实现

提高耐用性能: 磁盘冗余来实现

级别: 多块磁盘组织在一起的工作方式有所不同:

RAID是的方式:

外接式磁盘阵列: 通过扩展卡提供适配能力

内接式RAID: 主板集成RAID控制器

Software RAID: 

级别: level

RAID-0: 0, 条带卷, strip;

RAID-1: 1, 镜像卷, mirror;

RAID-2

RAID-5:

RAID-6:

RAID10

RAID01

RAID-0: 

读、写性能提升

可用空间: N*min(s1,s2,…)

无容错能力

最少磁盘数: 2, 2+

RAID-1:

读性能提升、写性能略有下降

可用空间1*min(s1,s2,…)

有冗余能力

最少磁盘书: 2, 2+

RAID-4:

RAID-5: 

读写性能提升

可用空间: (N-1)*min(s1,s2,…)

有容错能力: 最多坏一块磁盘

最少磁盘数: 3, 3+

RAID-6

读写性能提升

可用空间: (N-2)*(s1,s2,…)

有容错能力: 可以同时坏2块磁盘

最少磁盘数: 4, 4+

混合类型

RAID-10:

读写性能提升

可用空间: N*min(s1,s2,…)

有容错能力: 每组镜像最多同时坏一块

最少磁盘数: 4, 4+

RAID-01

RAID-50、RAID7

JBOD: Just a Bunch of Disks

功能: 将多块磁盘的空间合并成一个大的连续空间使用

可用空间: sum(s1,s2,…)

常用级别:

RAID-0, RAID-1, RAID-5, RAID-10, RAID-50,JBOD

实现方式:

硬件实现方式

软件实现方式

CentOS 6上的软件RAID的实现

结合kernel中的md(multi devices)模块

mdadm: 模式化的工具

管理模式,跟踪模式

命令的语法格式: mdadm [mode] <raiddevice> [options] <compoment-devices>

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

模式:

创建模式: -C

装配模式: -A

监控模式: -F

管理模式: -f, -r, -a

查看模式: -D

<raiddevice>: /dev/md#

<component-devices>: 可以是任意设备

-C: 创建模式

-n #: 使用#个块设备创建此RAID

-l #: 指明要创建的RAID的级别

-a {yes|no}: 是否自动创建目标RAID设备的设备文件

-c CHUNK_SIZE: 指明块的大小

-x #: 指个明冗余或空闲盘的数

示例: 要创建一个10G空间的RAID5

(1)首先分区系统, fdisk /dev/sdc

选用n选项,增加新分区

然后更改分区的类型为 linux raid auto

保存退出

partx -a /dev/sdc

(2)创建RAID

mdadm -C /dev/md0 -a yes -n 3 -x 2 -l 5 /dev/sdc{5..9}

查看一下md的设备文件,是否创建成功

cat /proc/mdstat

格式化创建文件系统

mke2fs -t ext4 /dec/md0

(3)创建挂载

修改配置信息: vim /etc/fstab

创建挂载点: mkdir /mydata

挂载raid: mount -a

(4)查看RAID状态

mdadm -D /dev/md0

(5)保存raid配置信息

mdadm -Ds /dev/md0 > /etc/mdadm.conf

(6)测试raid

mdadm /dev/md0 -f /dev/sdb1  模拟失败

mdadm /dev/md0 -r /dev/sdb1  删除磁盘

mdadm /dev/md0 -a /dev/sdb1  添加磁盘

(7)暂停服务

mdadm -S /dev/md0

或者

umount /mnt/raid

(8)激活

mdadm -A -s /dev/md0

(9)强制启动

mdadm -R /dev/md0

(10)删除raid信息

mdadm -zero-superblock /dev/sdb1

(11)删除raid信息

卸载: umount /dev/md0

暂停服务: mdadm -S /dev/md0

删除分区: fdisk /dev/sd*

清除阵列磁盘信息: mdadm –zero-superblock /dev/sdsdb

修改配置信息: vim /etc/fstab

删除raid配置文件: rm /etc/mdadm.conf

-D: 显示raid的详细信息

mdadm -D /dev/md#

管理模式:

-f: 标记指定的磁盘为损坏

-a: 添加磁盘

-r: 移除磁盘

观察md的工作状态

cat /proc/mdstat

动态查看:

watch -n1 'cat /proc/mdstat'

停止md设备

mdadm -S /dev/md#

watch命令

-n #: 刷新间隔, 单位是秒

显示设备上的mdadm设备:

查看文件: cat /proc/mdstat

或者 ls /dev | grep "md"

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

(0)
black_fishblack_fish
上一篇 2016-08-29 08:49
下一篇 2016-08-29 08:49

相关推荐

  • 实验:系统启动和内核管理

    实验:bootloader 破坏stage1: 备份:dd if=/dev/sda of=/app/mbr bs=1 count=512 破坏:dd if=/dev/zero of=/dev/sda bs=1 count=446;此时/boot/grub/下的文件没有任何改动; 表现:stage1破坏后系统会直接进行光盘引导 修复1:救援模式–&…

    Linux干货 2017-05-14
  • fstab配置文件、swap分区,文件关联

    fstab配置文件、swap分区,文件关联,lvm 挂载点和/etc/fstab  配置文件系统体系  被mount、 fsck和其它程序使用  系统重启时保留文件系统体系  可以在设备栏使用文件系统卷标  使用mount -a 命令挂载/etc/fstab中的所有文件…

    Linux干货 2016-09-01
  • TCP协议详解

    TCP协议详解。     I,TCP数据段报文解释 1,tcp数据段头部20(固定)+40(可变)字节构成,此数据由报头偏移位构成,计算单位为四个字节 表示TCP报文段的首部长度,共4位,由于TCP首部包含一 个长度可变的选项部分,需要指定这个TCP报文段到底有多长。它指 出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。…

    Linux干货 2017-06-26
  • 文件查找与解压缩

    文件查找: which 查找可以执行文件,只搜索$PATH里的目录 $ which ls /bin/ls which只搜索$PATH里的目录,如果搜索当前目录的文件是没有任何结果的 $ ls -l 总用量 0 -rw-rw-r– 1 huanghao huanghao 0 3月 1 12:24 a.txt $ which a.txt wherei…

    Linux干货 2017-08-04
  • Linux无人值守安装

    前言     通常情况下,我们安装Linux操作系统的时候需要从光盘启动,通过系统光盘bootloader启动安装程序,进入交互式安装模式,由用户配置安装选项,如磁盘分区、选择安装包等操作;安装完毕后重启结束安装。在生产环境中,成百上千台服务器需要安装操作系统的时候如果也采用交互式安装模式,无疑是极其低效的。本文主要介…

    Linux干货 2015-05-18
  • 从Linux小白到大牛——与狼共舞的日子8

    马哥教育网络班21期+第8周课程练习 1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥是第2层的设备,它设计用来创建两个或多个LAN分段。其中,每一个分段都是一个独立的冲突域。网桥设计用来产生更大可用宽带。它的目的是过滤LAN的通信流,使得本地的通信流保留在本地,而让那些定向到LAN其他部分(分段)的通信流转发到那里去。每…

    Linux干货 2016-11-14

评论列表(2条)

  • 马哥教育
    马哥教育 2016-08-29 16:04

    常见RAID的各种工作方式是我们面试中经常会被问到的知识,作者也总结的很详细,建议通过作图来加深自己对RAID的各个工作方式的理解。

    • black_fish
      black_fish 2016-08-29 16:22

      @马哥教育好的老师, 一会补充上