Linux MD Raid 创建 维护 详细步骤

一.连接网络设备

1.1发现iSCSI服务

iscsiadm -m discovery -t st -p 192.168.1.125

1.2 查看iSCSI发现记录

Isssiadm -m node

iscsiadm -m session

1.3登陆iSCSI存储设备

iscsiadm -m node --login

Logging in to [iface: default, target: lcw,portal: 192.168.1.125,3260]

Login to [iface: default, target: lcw,portal: 192.168.1.125,3260] successful.

1.4 登出iSCSI存储设备

iscsiadm -m node --logout

Logging out of session [sid: 1, target:lcw, portal: 192.168.1.125,3260]

Logout of [sid: 1, target: lcw, portal:192.168.1.125,3260] successful.

1.5 删除iSCSI 发现记录

iscsiadm -m node -o delete –T lcw -p 192.168.1.125

1.6 iscsiadm:No portals found

解决方法:1、首先确定vi /etc/iscsi/initiatorname.iscsi  查看名字是否相符 

2、重启iscsid服务

彻底删除已连接的iSCSI存储设备:

service iscsi stop

rm -rf /var/lib/iscsi/nodes/*

rm -rf /var/lib/iscsi/send_targets/*

service iscsi start

echo "- - -" > /sys/class/scsi_host/host4/scan ------扫描查看

iscsiadm -m node –l-login 登陆查看

iscsiadm -m node –logout  登出

cat /proc/scsi/scsi

1.7重新加载光纤驱动

modprobe -r qla2xxx

modprobe qla2xxx

 

FC环境不重启操作系统识别新设备方法:echo"- - -" > /sys/class/fc_host/hostx/issue_lip

                                    echo"---" > /sys/class/scsi_host/host8/scan

1.8创建分区

环境准备:五块SCSI磁盘分别对应/dev/sdb/dev/sdc/dev/sdd/dev/sde

二.创建Raid 5

2.1创建

#mdadm -Cv /dev/md0 -l5 -n3 /dev/sdb/dev/sdc /dev/sdd -x1 /dev/sde

2.2 参数意义

命令中各参数意义如下:

-C 创建一个新的阵列名称为:/dev/md0  -v verbose 显示细节

-l5 表示设置阵列的模式可以选择01456 分别对应于RAID0RAID1RAID4RAID5RAID6

-n3 指设置阵列中活动设备的数目,该数目加上备用设备的数目应等于阵列中的总设备数

/dev/sdb /dev/sdc /dev/sdd 分别列出来

-x1 设置阵列中备份设备的设备的数目,当前阵列中含有一个备份设备 /dev/sde

-c128 设置块的尺寸为128KB 缺省为64KB

三.查看阵列的状态

当创建一个新的阵列或者阵列重组时,设备需要进行同步操作,这一过程需要一定时间,可以通过查看/proc/mdstat 文件,来显示阵列的当前的状态以及同步进度,所需时间等

more /proc/mdstat

Personalities : [raid6] [raid5] [raid4]

md1 : active raid5 sdh[2] sdj[3](S) sdg[1]sdf[0]

     2097024 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

3.1参数意义

可以清楚的看到当前阵列的状态,各部分所代表的意思如下:

[3/3]:中的第一位表示的是阵列所包含的设备数,第二位表示的活动的设备数,如果有一个设备损坏则第二位数将减1

[UUU] 标记当前的阵列可以正常使用的设备的情况,假设设备/dev/sdb1 出现问题,则标记为[_UU],这时阵列以降级模式运行,该阵列仍然可用,但是不再具有任何冗余

sdh[2] 这阵列所包含的设备数为n 若方括号内数值小于n 则表示该设备为活动设备,若数值大于等于n,则该设备为备份设备,当一个设备出现故障的时候,相应的设备的方括号将被标记为(F)。

四.生成配置文件

Mdadm 的缺省配置文件为/etc/mdadm.conf它主要是为了方便阵列的日常管理而设置的,对于阵列而言不是必须的,但是为了减少日后管理的不必要的麻烦,还是应该将这部做完。

Mdadm.conf 文件中主要包括两种类型的行,一种是以DEVICE开头的行,她指明在阵列中设备的列表,另一种是以ARRAY开头的行,它详细说明了阵列的名称,模式,阵列中活动的设备数目以及设备的UUID

格式如下:

DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1/dev/sde1

[root@localhost ~]# mdadm -Ds

ARRAY /dev/md0 level=raid5 num-devices=3metadata=0.90

ARRAY /dev/md1 level=raid5 num-devices=3metadata=0.90 spares=1 UUID=dd1182d2:d7958517:d1937ad3:338d045f

 

#echo 'DEVICE /dev/sd[bcde]' > /etc/mdadm.conf

#mdadm -Db >> /etc/mdadm.conf

五.创建文件系统并挂接(mount

Raid 已经启动并处于运行的状态,现在要做的是在其上创建一个文件系统,这里用mkfs命令,文件系统类型为ext3

mkfs-t ext3 /dev/md1

新建一个挂载点

mkdir /u01

mount /dev/md1 /u01

修改/etc/fstab 添加内容

/dev/md1 /u01  ext3  defaults 0 0

六.模拟故障

/dev/sdb1 标记为以损坏的设备 mdadm /dev/md0 –f /dev/sdb1

mdadm: ARRAY line /dev/md0 has no identityinformation.

mdadm: set /dev/sdg faulty in /dev/md1

查看当前磁盘的状态

Personalities : [raid6] [raid5] [raid4]

md1 : active raid5 sdh[2] sdj[1] sdg[3](F)sdf[0]

     2097024 blocks level 5, 64k chunk, algorithm 2 [3/2] [UU_]

因为有备份设备,所以当阵列中出现设备损坏时,阵列能够在短时间内实现重构和数据恢复。从当前的状态可以看出,阵列正在重构,且运行在降级模式

过几分钟在再看:

more /proc/mdstat

Personalities : [raid6] [raid5] [raid4]

md1 : active raid5 sdh[2] sdj[1] sdg[3](F)sdf[0]

     2097024 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

此时阵列的重构已经完成,数据恢复完毕,原有的备份设备sde1 成为了活动的设备。

6.1移除损坏的设备

mdadm /dev/md1 -r /dev/sdg

mdadm: ARRAY line /dev/md0 has no identityinformation.

再次查看阵列的状态:

more /proc/mdstat

Personalities : [raid6] [raid5] [raid4]

md1 : active raid5 sdh[2] sdj[1] sdf[0]

     2097024 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

将新的设备添加到阵列中

6.2 在实际的操作中注意

1、  添加之前进行正确的分区;

2、  添加时要用所添加设备名代替/dev/sdb1(损坏的设备)

mdadm /dev/md1 -a /dev/sdg

mdadm: ARRAY line /dev/md0 has no identityinformation.

mdadm: added /dev/sdg

查看状态:

more /proc/mdstat

Personalities : [raid6] [raid5] [raid4]

md1 : active raid5 sdg[3](S) sdh[2] sdj[1]sdf[0]

     2097024 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

七常用的维护的命令

7.1启动阵列

 mdadm–As /dev/md1

该命令指启动/dev/md0阵列

-A 指装载一个已存在的阵列  -s 指的查找mdadm.conf 文件中的配置信息,并以此依据启动阵列。

mdadm –As 启动所有mdadm.conf 文件中的所有的阵列

如果没有创建mdadm.conf 可采用

mdadm -A /dev/md0 /dev/sd[b,c,d,e]

7.2停止阵列

umount /u01

mdadm -S /dev/md1

mdadm: ARRAY line /dev/md0 has no identityinformation.

mdadm: stopped /dev/md1

显示指定阵列的详细信息

mdadm -D /dev/md0

八.Raid简介

Raid 是冗余的磁盘阵列它是把多个磁盘组成一个阵列,当做一磁盘使用,它将数据以分段的方式分散在不同的磁盘中,通过多个磁盘的同时读写,来减少数据的存取时间,并且可以利用不同的技术实现数据的冗余,即使有一个磁盘损坏,也可以从其他磁盘中恢复多有的数据。安全性高,速度快,数据容量大

8.1 Raid 0

它是将多个磁盘并列起来,成为一个大磁盘,在存取数据时,将数据按照磁盘的个数进行分段,然后同时将这些数据写进这些磁盘中,在所有的级别中,Raid0 的速度是最快的,但是没有冗余,阵列中任何一个磁盘坏掉,意味所有数据丢失。

磁盘利用数:n(假设n个磁盘)

配置条件:最低两块磁盘,且分区尽量相同。

应用领域:对高磁盘容量及高速的存取有特殊的要求,而又不计较高故障的工作

8.2 Raid1

使用磁盘的镜像(diskmirroring)技术,在一个磁盘上存放数据的同时在另一磁盘上写一样的数据。因为有了备份的磁盘,所以Raid 1 的数据安全性在所有的Raid级别上来说是最好的,尽管其写入数据的速度比较慢,但因其数据是以分段的方式存储的,因而在读取时,,它几乎有同样的Raid0 性能。

磁盘利用数:n/2

配置条件:最低两块磁盘,且分区尽量相同

应用领域,数据库,金融系统

 

8.3 Raid 5

以数据的校验位来保证数据的安全,但他不是以单独的磁盘来存放数据的校验位而是将数据段的校验位交互存放各个磁盘上,这样,任何一个磁盘损坏,都可以根据其他磁盘的上的校验位来重建损坏的额数据。并行读写数据,性能也提高。

磁盘利用数:n-1

配置条件:最低三块磁盘,且分区大小尽量相同

 

你可能感兴趣的:(Linux MD Raid 创建 维护 详细步骤)