10、Raid

2018-04-10  本文已影响0人  崔千易

RAID

独立冗余磁盘阵列

条带化技术,分散存储在多个盘上

(做切割数据的,存在盘上的对应位置,在外观看来就是条带状的)

raid的一种

raid级别,仅仅代表raid的组成方式是不一样的,没有上下级之分

raid级别:速度、可用性

利用校验码的形式来保证数据的可靠性(比较麻烦)浪费比例1/n

一:raid类型

1.raid0 条带

性能提升:读写

冗余能力:不具备

空间利用率:n

至少两块盘

2.raid1 镜像

性能提升:写性能下降,读性能提高

冗余能力:具备

空间利用率:1/2

正好两个

3.raid0+1(同组都可以坏,不能是不同组的相同标号坏)利用率都是1/2

  raid1+0 (同组不能都坏掉) 用的多

性能表现:读写提升

冗余能力:具备

空间利用率:1/2

至少4块

4.raid4 校验码机制 校验码盘的压力大 性能瓶颈

5.raid5 轮换成为校验盘的机制

性能表现:读写提升

冗余能力:具备

空间利用率:(n-1)/n

至少3块

6.raid6 多了一块校验盘,校验方式有所改变

7.raid5+0

性能表现:读写提升

冗余能力:具备

空间利用率:(n-2)/n

至少6块

8.JBOD  (Just a Bunch Of Disks,磁盘簇)是在一个底板上安装的带有多个磁盘驱动器的存储设备。通常又称为Span。

    简单将多个盘罗列,对应用程序来说就是一块盘,可以储存单个较大文件

二.

硬件raid:

四块盘,raid0 raid1  必须使操作系统识别硬件,安装驱动程序*

主板上具有控制芯片(上面具有cpu,提供内存)

软件raid:

MD:multi disks 多磁盘,内核中的模块,可以读取配置文件,来实现

软件raid,md要模拟一个假的raid设备(逻辑raid)/dev/md#(metadevice)

mdadm

创建模式  -C

专业选项:

-l:指定基本

-n:设备个数

-a:{yes|no} 自动为其创建设备文件

-c:chunk大小,默认为64k,(数据块)

-x:指定空闲盘的个数

创建raid0: mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb{1,2}

创建raid1: mdadm -C /dev/md1 -a yes -n 2 -l 1 /dev/sdb{5,6}

创建raid5: mdadm -C /dev/md2 -a yes -l 5 -n 3 /dev/sdb{5,6,7}

增加热备磁盘: mdadm /dev/md2 -a /dev/sdb8

查看指定信息: mdadm -D /dev/md#  查看指定RAID设备的详细信息

查看raid状态: cat /proc/mdstat

管理模式 : 选项:-a(--add),-d(--del),-r(--remove),-f(--fail)

模拟损坏:mdadm /dev/md1 -f /dev/sdb5

移除损坏的磁盘:mdadm /dev/md1 -r /dev/sdb5

添加新的硬盘到已有阵列:mdadm /dev/md1 -a /dev/sdb7

  注意:

1、新增加的硬盘需要与原硬盘大小一致

2、如果原有阵列缺少工作磁盘(如raid1只有一块在工作,raid5只有2块在工作),

这时新增加的磁盘直接变为工作磁盘,如果原有阵列工作正常,则新增加的磁盘为热备磁盘。

停止阵列:mdadm -S /dev/md1

监控模式  -F  不常用

增长模式  -G  用于增加磁盘,为阵列扩容

    将raid5的热备磁盘增加到阵列工作磁盘中: mdadm -G /dev/md2  -n 4

装配模式  -A  软RAID是基于系统的,当原系统损坏了,需要重新装配RAID

          将停止的阵列重新装配;mdadm -A /dev/md1 /dev/sdb5 /dev/sdb6

  自动装配:mdadm运行时会自动检查/etc/mdadm.conf  文件并尝试自动装配,

            因此第一次配置raid后可以将信息导入到/etc/mdadm.conf  中,

命令如下:

                    echo ’DEVICE /dev/hd[a-z] /dev/sd*[a-z]’ > /etc/mdadm.conf

                        mdadm --examine --scan --config=mdadm.conf >> /etc/mdadm.conf

实验:fdisk /dev/sd#  进行分区  修改类型为fd

raid0实验:2G  2:1G 

mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sda{5,6} 创建

cat /proc/mdstat  查看内核中启动的raid信息

mkfs -t ext4 /dev/md0 格式化

mount 挂载使用

raid1 2G  2:2G

mdadm -C /dev/md1 -a yes -n 2 -l 0 /dev/sda# /dev/sda#

cat /proc/mdstat

mkfs -t ext4 /dev/md1

mount

raid5实验:1.mdadm -C /dev/md0 -a yes -n4 -l5 /dev/{sda1,2,3,4}

-C (create)v  -a yes 创建过程中如果有设备没有,会帮着创建

-n4(用了几块硬盘)  -l (级别)

2.cat /proc/mdstat 查看raid详细信息(启动中的raid)

3.mkfs -t ext4 /dev/md0

4.mount /dev/md0 /tmp

5.模拟损坏和修复

1)mdadm -vDs (mdadm --detail --scan查看,数据,扫描) /dev/md0

2)配置文件的设置/etc/mdadm.conf  (mdadm -vDs +DEVICE /dev/sdb1 /dev/sdc1...)

停止:mdadm -S /dev/md0 启动:mdadm -A /dev/md0

3)模拟磁盘损坏:mdadm /dev/md0 -f /dev/sda1(指定第一块盘坏掉)

4)移除磁盘:cat /proc/mdstat >>  mdadm /dev/md0 -r /dev/sda1

5)添加磁盘:mdadm /dev/md0 -a /dev/sda2  cat /proc/mdstat

lsmod  列出内核模块

mdadm --detail /dev/md#

watch 'cat /proc/mdstat'  -n 指定刷新时间

DM:device mapper 逻辑设备

linear 线性的    mirror snapshot (快照)访问的一种路径

多路径(使用负载均衡或者是备用)multipath

实验步骤:

      1、添加硬盘

  2、fdisk 分区  分区类型id要改成fd(linux raid)

  3、mdadm 命令创建raid阵列

  4、手动生成/etc/mdadm.conf文件

  5、格式化raid设备文件

  6、挂载raid设备文件

  7、编写/etc/fstab文件,实现开机自动挂载设备

上一篇下一篇

猜你喜欢

热点阅读