软RAID工具的使用.docx

上传人:b****8 文档编号:9779908 上传时间:2023-02-06 格式:DOCX 页数:14 大小:19.72KB
下载 相关 举报
软RAID工具的使用.docx_第1页
第1页 / 共14页
软RAID工具的使用.docx_第2页
第2页 / 共14页
软RAID工具的使用.docx_第3页
第3页 / 共14页
软RAID工具的使用.docx_第4页
第4页 / 共14页
软RAID工具的使用.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

软RAID工具的使用.docx

《软RAID工具的使用.docx》由会员分享,可在线阅读,更多相关《软RAID工具的使用.docx(14页珍藏版)》请在冰豆网上搜索。

软RAID工具的使用.docx

软RAID工具的使用

Ubuntu下软RAID工具的使用

——刘煦阳

1、RAID和RAID级别

RAID全称是“RedundantArraysofInexpensiveDisks”(磁盘阵列)。

RAID就是把几个物理磁盘组合在一起成为一个大的虚拟物理磁盘,主要目的和用途主要有:

把若干小容量物理磁盘组成一个大容量虚拟存储设备(以前的物理磁盘的容量都比较小);提高物理存储效率(读、写),或提供冗余以提高数据存储的安全性。

1、硬件RAID和软件RAID

RAID分为硬件RAID和软件RAID,硬件RAID通过RAID卡来实现,而软件RAID通过软件来实现;在企业级应用领域,大部份都是硬件RAID。

而软件RAID由于性价比高,大多被中小型企业所采用.

硬件RAID的成员是整个硬盘,软件RAID的成员是整个硬盘或分区。

2、RAID的级别

RAID有RAID0(分条),RAID1(镜像),RAID4,RAID5,RAID6,RAID10,LINEAR,MULTIPATH和FAULTY等几种级别。

其中常用的有RAID0、RAID1、RAID5、RAID10。

2、软RAID的创建和管理

在Linux中,通常使用mdadm来创建和管理软RAID。

mdadm是一个专用创建和管理RAID的软件,能创建任何级别的软RAID。

本节将介绍软RAID的创建、启动、停止、状态查看以及使用等。

RAID的使用就是在RAID设备上创建文件系统,然后提供具体数据存储。

1、RAID的创建方法

创建RAID有两个方法,

(1)使用--create(或-C)参数。

这种方法把RAID信息写到每个RAID成员的超级块中,在每个RAID成员的超级块中,都会记录RAID的级别、成员、RAID的UUID等。

这种方法对于重装系统或系统发生灾难来来说,有利于现有RAID的恢复,所以是最常用的。

(2)使用--build(或-B)参数。

这种方法不把RAID的信息写入RAID成员的超级块中,所以无法通过查看RAID成员信息来获得RAID的级别,以及RAID的成员等。

这种方不利于RAID数据丢失后的恢复。

语法:

mdadm--create--verboseRAID设备--level=Y--RAID-devices=Z成员设备

mdadm-CvRAID设备-lY-nZ成员设备

-C:

--create的缩写,创建

-v:

--verbose的缩写,显示详细信息

-l:

--level的缩写,创建的RAID级别

-n:

--RAID-devices的缩写,RAID成员数

2、RAID管理工具

RAID的管理包括创建、启动、状态查看等一系列工具,这里介绍常用的使用方法。

(1)RAID的启动方法;

RAID的启动有两种方法,一种是指定RAID设备和RAID成员的办法来启动RAID,另一种办法是通过加载RAID默认的配置文件来启动。

1)不通过读取mdadm.conf来启动RAID,适用情况是没有配置/etc/mdadm/mdadm.conf文件;

语法:

mdadm-ARAID设备成员设备

-A:

--assemble的缩写,激活一个已经存在的RAID

RAID设备即/dev/md0,/dev/md/1等,RAID成员就是你要启动的RAID的成员设备,中间以空格分开。

2)利用配置好的mdadm.conf来启动RAID,前提是要配置/etc/mdadm/mdadm.conf文件

mdadm-ARAID设备

mdadm-As

(2)RAID管理工具一些常用参数说明;

mdadm参数 [RAID设备] [RAID成员]

--assemble(-A)激活一个RAID

--stop(-S)停止正在运行的设备

--scan(-s)扫描RAID设备

--detail(-D)查看RAID的详细信息

--examine(-E)查看RAID成员的详细信息

3、RAID的配置文件

RAID配置文件不是必需的,但有配置文件会方便管理,比如RAID最精简的方法执行、状态查看,如果没有配置文件,还要指定RAID成员。

RAID的配置文件是/etc/mdadm/mdadm.conf,如果没有这个文件,可以自己创建一个。

配置此文件时,可以参照示例文件/usr/share/doc/madam/examples/mdadm.conf-example,将所有RAID的配置信息都写进去,编辑之前,先备份原文件

cp/etc/mdadm/mdadm.conf/etc/mdadm/mdadm.conf.bak

1)搜索RAID,前提条件是RAID已激活

mdadm-Ds

2)查询RAID的详细信息,主要是查看RAID的成员有哪些

mdadm-DRAID设备

3)编辑配置文件mdadm.conf

格式:

ARRAYRAID设备level=RAID级别num-devices=成员数量UUID=RAID设备UUID号devices=成员设备1,成员设备2,...

3、案例

本章将介绍创建一个RAID5阵列,然后模拟磁盘故障,并添加替换磁盘的完整过程,供参考。

注:

以下操作都是以root身份进行的。

1、RAID的创建

(1)配置RAID5至少需要三块硬盘(或三个分区),此处为/dev/sdb,/dev/sdc,/dev/sdd

root@kylin:

~#fdisk-l|grep"Disk/dev/sd"

Disk/dev/sda:

21.5GB,21474836480bytes

Disk/dev/sdb:

10.7GB,10737418240bytes

Disk/dev/sdc:

10.7GB,10737418240bytes

Disk/dev/sdd:

10.7GB,10737418240bytes

(2)创建RAID5

root@kylin:

~#mdadm-Cv/dev/md0-l5-n3/dev/sd[b-d]

mdadm:

layoutdefaultstoleft-symmetric

mdadm:

layoutdefaultstoleft-symmetric

mdadm:

chunksizedefaultsto512K

mdadm:

sizesetto10477056K

mdadm:

Defaultingtoversion1.2metadata

mdadm:

array/dev/md0started.

执行完创建命令后,可以查看RAID状态信息,包括成员同步的进度

root@kylin:

~#cat/proc/mdstat

Personalities:

[linear][multipath][raid0][raid1][raid6][raid5][raid4][raid10]

md0:

activeraid5sdd[3]sdc[1]sdb[0]

20954112blockssuper1.2level5,512kchunk,algorithm2[3/2][UU_]

[=======>.............]recovery=35.0%(3670708/10477056)finish=1.5min

speed=72541K/sec

unuseddevices:

也可以直接查看/dev/md0的详细信息:

root@kylin:

~#mdadm-D/dev/md0

/dev/md0:

Version:

1.2

CreationTime:

MonJan1914:

30:

322015

RaidLevel:

raid5

ArraySize:

20954112(19.98GiB21.46GB)

UsedDevSize:

10477056(9.99GiB10.73GB)

RaidDevices:

3

TotalDevices:

3

Persistence:

Superblockispersistent

UpdateTime:

MonJan1914:

31:

192015

State:

clean,degraded,recovering

ActiveDevices:

2

WorkingDevices:

3

FailedDevices:

0

SpareDevices:

1

Layout:

left-symmetric

ChunkSize:

512K

RebuildStatus:

35%complete

Name:

kylin:

0(localtohostkylin)

UUID:

f220b9f5:

b05f9e6c:

1a9a6855:

1d4b6a68

Events:

6

NumberMajorMinorRaidDeviceState

08160activesync/dev/sdb

18321activesync/dev/sdc

38482sparerebuilding/dev/sdd

mdadm-D可以查看超级块元数据版本、创建时间、RAID级别、容量(包括阵列大小和校验大小)、设备数量、超级块、更新时间、成员设备状态以及块大小等信息。

上面的信息提示RAID正处于重建中,进度为35%,/dev/sdb和/dev/sdc已经同步完成,/dev/sdd正在重建。

一段时间后,成员数据同步完成:

root@kylin:

~#cat/proc/mdstat

Personalities:

[linear][multipath][raid0][raid1][raid6][raid5][raid4][raid10]

md0:

activeraid5sdd[3]sdc[1]sdb[0]

20954112blockssuper1.2level5,512kchunk,algorithm2[3/3][UUU]

unuseddevices:

root@kylin:

~#mdadm-D/dev/md0

/dev/md0:

Version:

1.2

CreationTime:

MonJan1914:

30:

322015

RaidLevel:

raid5

ArraySize:

20954112(19.98GiB21.46GB)

UsedDevSize:

10477056(9.99GiB10.73GB)

RaidDevices:

3

TotalDevices:

3

Persistence:

Superblockispersistent

UpdateTime:

MonJan1914:

33:

022015

State:

clean

ActiveDevices:

3

WorkingDevices:

3

FailedDevices:

0

SpareDevices:

0

Layout:

left-symmetric

ChunkSize:

512K

Name:

kylin:

0(localtohostkylin)

UUID:

f220b9f5:

b05f9e6c:

1a9a6855:

1d4b6a68

Events:

18

NumberMajorMinorRaidDeviceState

08160activesync/dev/sdb

18321activesync/dev/sdc

38482activesync/dev/sdd

(3)更新配置文件和initramfs

一般来说,创建好RAID后,最好将RAID的信息写进/etc/mdadm/mdadm.conf配置文件,并更新initramfs,以便下次系统启动的时候RAID能自动正确地激活。

(对于3.0内核的系统,如果不做这一步,很可能开机时RAID名称会变成/dev/md127,/dev/md126等等)

root@kylin:

~#mdadm-Ds

ARRAY/dev/md/0metadata=1.2name=kylin:

0UUID=f220b9f5:

b05f9e6c:

1a9a6855:

1d4b6a68

root@kylin:

~#mdadm-Ds>>/etc/mdadm/mdadm.conf

root@kylin:

~#update-initramfs-u

update-initramfs:

Generating/boot/initrd.img-3.13.0-44-generic

接下来就可以对RAID进行分区或者直接格式化了。

分区或格式化的方法与普通磁盘一样。

2、RAID的扩容

RAID的扩容针对已经做好的RAID,在存储过程中发现RAID容量不足的情况。

如果是一个新做的RAID,发现计划错了,只需要重新做一次就行了,没必要用扩容的办法。

应用范围是RAID1、RAID4、RAID5、RAID6。

RAID扩容流程:

向已存在的RAID中添加成员—>执行扩容指令

(1)准备用于扩容的硬盘,容量最好与已有成员一致,此处为/dev/sde

root@kylin:

~#fdisk-l|grep"Disk/dev/sd"

Disk/dev/sda:

21.5GB,21474836480bytes

Disk/dev/sdb:

10.7GB,10737418240bytes

Disk/dev/sdc:

10.7GB,10737418240bytes

Disk/dev/sdd:

10.7GB,10737418240bytes

Disk/dev/sde:

10.7GB,10737418240bytes

(2)将/dev/sde添加为RAID成员:

root@kylin:

~#mdadm/dev/md0-a/dev/sde

mdadm:

added/dev/sde

查看RAID状态

root@kylin:

~#cat/proc/mdstat

Personalities:

[linear][multipath][raid0][raid1][raid6][raid5][raid4][raid10]

md0:

activeraid5sde[4](S)sdc[1]sdb[0]sdd[3]

20954112blockssuper1.2level5,512kchunk,algorithm2[3/3][UUU]

unuseddevices:

root@kylin:

~#mdadm-D/dev/md0

/dev/md0:

Version:

1.2

CreationTime:

MonJan1914:

30:

322015

RaidLevel:

raid5

ArraySize:

20954112(19.98GiB21.46GB)

UsedDevSize:

10477056(9.99GiB10.73GB)

RaidDevices:

3

TotalDevices:

4

Persistence:

Superblockispersistent

UpdateTime:

TueJan2011:

27:

202015

State:

clean

ActiveDevices:

3

WorkingDevices:

4

FailedDevices:

0

SpareDevices:

1

Layout:

left-symmetric

ChunkSize:

512K

Name:

kylin:

0(localtohostkylin)

UUID:

f220b9f5:

b05f9e6c:

1a9a6855:

1d4b6a68

Events:

19

NumberMajorMinorRaidDeviceState

08160activesync/dev/sdb

18321activesync/dev/sdc

38482activesync/dev/sdd

4864-spare/dev/sde

由上可知,/dev/sde被加入到了RAID中,并且身份是备用成员

(3)使用备用成员扩充RAID容量

这里将用到RAID的扩充模式(Grow)。

扩充模式非常简单,有--size参数,-n参数,--size是指定RAID大小,具体由RAID级别而定,可以省略。

-n为RAID真正成员的个数。

root@kylin:

~#mdadm-G/dev/md0-n4

mdadm:

Needtobackup3072Kofcriticalsection..

查看RAID状态,显示RAID正在重建,数据容量仍为20GiB

root@kylin:

~#cat/proc/mdstat

Personalities:

[linear][multipath][raid0][raid1][raid6][raid5][raid4][raid10]

md0:

activeraid5sde[4]sdc[1]sdb[0]sdd[3]

20954112blockssuper1.2level5,512kchunk,algorithm2[4/4][UUUU]

[====>................]reshape=20.0%(2100736/10477056)finish=14.2minspeed=9807K/sec

unuseddevices:

root@kylin:

~#mdadm-D/dev/md0

/dev/md0:

Version:

1.2

CreationTime:

MonJan1914:

30:

322015

RaidLevel:

raid5

ArraySize:

20954112(19.98GiB21.46GB)

UsedDevSize:

10477056(9.99GiB10.73GB)

RaidDevices:

4

TotalDevices:

4

Persistence:

Superblockispersistent

UpdateTime:

TueJan2011:

50:

362015

State:

clean,reshaping

ActiveDevices:

4

WorkingDevices:

4

FailedDevices:

0

SpareDevices:

0

Layout:

left-symmetric

ChunkSize:

512K

ReshapeStatus:

20%complete

DeltaDevices:

1,(3->4)

Name:

kylin:

0(localtohostkylin)

UUID:

f220b9f5:

b05f9e6c:

1a9a6855:

1d4b6a68

Events:

58

NumberMajorMinorRaidDeviceState

08160activesync/dev/sdb

18321activesync/dev/sdc

38482activesync/dev/sdd

48643activesync/dev/sde

等待一段时间后,重塑完成,再次查看RAID状态,数据容量变为30GiB了

root@kylin:

~#cat/proc/mdstat

Personalities:

[linear][multipath][raid0][raid1][raid6][raid5][raid4][raid10]

md0:

activeraid5sde[4]sdc[1]sdb[0]sdd[3]

31431168blockssuper1.2level5,512kchunk,algorithm2[4/4][UUUU]

unuseddevices:

root@kylin:

~#mdadm-D/dev/md0

/dev/md0:

Version:

1.2

CreationTime:

MonJan1914:

30:

322015

RaidLevel:

raid5

ArraySize:

31431168(29.98GiB32.19GB)

UsedDevSize:

10477056(9.99GiB10.73GB)

RaidDevices:

4

TotalDevices:

4

Persistence:

Superblockispersistent

UpdateTime:

TueJan2013:

51:

352015

State:

clean

ActiveDevices:

4

WorkingDevices:

4

FailedDevices:

0

SpareDevices:

0

Layout:

left-symmetric

ChunkSize:

512K

Name:

kylin:

0(localtohostkylin)

UUID:

f220b9f5:

b05f9e6c:

1a9a6855:

1d4b6a68

Events:

124

NumberMajorMinorRaidDeviceState

08160activesync/dev/sdb

18321activesync/dev/sdc

38482activesync/dev/sdd

48643activesync/dev/sde

查看/var/log/syslog,可以看到RAID设备/dev/md0重建完成,数据容量由20GiB增加到了30GiB

root@kylin:

~#tail/var/log/syslog

Jan2013:

51:

35kylinkernel:

[9007.211151]md:

md0:

reshapedone.

Jan2013:

51:

35kylinkernel:

[9007.243193]RAIDconfprintout:

Jan2013:

51:

35kylinkernel:

[9007.243196]---level:

5

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 视频讲堂

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1