- 论坛徽章:
- 0
|
Part II. mdadm创建RAID5
RAID级别:5
设备列表:
Host:/dev/sda
RAID Devices:/dev/sdb /dev/sdc /dev/sdd
Spare Devices:/dev/sde
设备准备:
直接使用硬盘硬件设备,不需要分区。
如果要具体使用哪个硬盘的分区做RAID,才需要fdisk特定的分区,并给它指定分区类型:fd。
1>创建raid:
mdadm的每个命令都有其简写形式,当然也可以使用shell的正规表达式:
#mdadm --create --verbose /dev/md0 --level=raid5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd --spare-devices=1 /dev/sde
#mdadm -Cv /dev/md0 -l5 -n3 /dev/sdb /dev/sdc /dev/sdd -x1 /dev/sde
#mdadm -Cv /dev/md0 0l5 -n3 /dev/sd[bcd] -x1 /dev/sde
2>格式化raid设备:
#mkfs -t ext3 /dev/md0
3>挂载raid设备:
#mkdir /mnt/raid
#mount -t ext3 /dev/md0 /mnt/raid
4>查看raid设备状态:
#mdadm -D /dev/md0
/dev/md0:
Version : 00.90.03
Creation Time : Tue Nov 13 10:35:35 2007
Raid Level : raid5
Array Size : 2097024 (2048.22 MiB 2147.35 MB)
Device Size : 1048512 (1024.11 MiB 1073.68 MB)
Raid Devices : 3
Total Devices : 4
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Tue Nov 13 10:42:34 2007
State : clean
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 64K
UUID : b5e3276f:ab97e843:e601b1a4:46720384
Events : 0.2
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 64 - spare /dev/sde
#cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd[2] sde[3](S) sdc[1] sdb[0]
2097024 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
unused devices:
说明:
sdd[2]:此设备在RAID中的次序。
[3/3]:RAID使用3个设备,当前有3个设备正常运行。当某一个设备出错时将会显示[3/2]。
[UUU]:RAID中所有磁盘运转正常。如果出错则显示[_UU],则说明RAID中第一磁盘fail。
# mdadm -E /dev/sdb
/dev/sdb:
Magic : a92b4efc
Version : 00.90.00
UUID : b5e3276f:ab97e843:e601b1a4:46720384
Creation Time : Tue Nov 13 10:35:35 2007
Raid Level : raid5
Device Size : 1048512 (1024.11 MiB 1073.68 MB)
Array Size : 2097024 (2048.22 MiB 2147.35 MB)
Raid Devices : 3
Total Devices : 4
Preferred Minor : 0
Update Time : Tue Nov 13 10:54:58 2007
State : clean
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1
Checksum : c59d3483 - correct
Events : 0.2
Layout : left-symmetric
Chunk Size : 64K
Number Major Minor RaidDevice State
this 0 8 16 0 active sync /dev/sdb
0 0 8 16 0 active sync /dev/sdb
1 1 8 32 1 active sync /dev/sdc
2 2 8 48 2 active sync /dev/sdd
3 3 8 64 3 spare /dev/sde
5>mdadm配置文件:
mdadm的缺省配置文件为/etc/mdadm.conf。对于阵列而言不是必须的,主要是为了方便阵列的日常管理。
使用配置文件后,我们每次启动RAID时,就不需要再次输入建立RAID时的一大堆的参数。
mdadm.conf文件中要包含两行:
第一行是以DEVICE开头的行,它指明在阵列中的设备列表。
第二行是以ARRAY开头的行,它详细地说明了阵列的名称、模式、阵列中活动设备的数目以及设备的UUID号。
一般会有如下格式:
#cat /etc/mdadm.conf
===========================================================
DEVICE /dev/sdb /dev/sdc /dev/sdd /dev/sde
ARRAY /dev/md0 level=raid5 num-devices=3 spares=1 UUID=b5e3276f:ab97e843:e601b1a4:46720384
============================================================
生成方法:
#echo 'DEVICE /dev/sd[bcde]' > /etc/mdadm.conf
#mdadm -Ds >> /etc/mdadm.conf
或
#echo 'DEVICE /dev/sdb /dev/sdc /dev/sdd /dev/sde' > /etc/mdadm.conf
#mdadm -Ds >> /etc/mdadm.conf
6>配置mdadm开机自启动:
使用配置文件后,RAID设备在重启后也可以正常的自动加载,因为系统在开机启动时会自动加载RAID。
#cat /etc/rc.d/rc.sysinit
=============================================================================
# RAID setup
update_boot_stage RCraid
[ -x /sbin/nash ] && echo "raidautorun /dev/md0" | nash --quiet
if [ -f /etc/mdadm.conf ]; then
/sbin/mdadm -A -s
fi
=============================================================================
设备配置文件只能使系统在开机时正常启用RAID设备,但自动挂载RAID设备还是要再修改/etc/fstab
#vi /etc/fstab
===============================================
/dev/md0 /mnt/raid ext3 defaults 0 0
===============================================
7>停止与开启RAID设备:
停止:
#umount /mnt/raid
#mdadm -S /dev/md0
mdadm: stopped /dev/md0
开启:
使用配置文件时:
#mdadm -As /dev/md0
mdadm: /dev/md0 has been started with 3 drives and 1 spare.
没有使用配置文件时:
#mdadm -A /dev/md0 /dev/sd[bcde]
mdadm: /dev/md0 has been started with 3 drives and 1 spare.
8>故障演示
(1)将一个磁盘标记为faulty,模拟硬盘坏损
#mdadm /dev/md0 -f /dev/sdb
(2)查看RAID5重建过程
#mdadm -D /dev/md0
/dev/md0:
Version : 00.90.03
Creation Time : Tue Nov 13 11:55:59 2007
Raid Level : raid5
Array Size : 2097024 (2048.22 MiB 2147.35 MB)
Device Size : 1048512 (1024.11 MiB 1073.68 MB)
Raid Devices : 3
Total Devices : 4
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Tue Nov 13 18:21:27 2007
State : clean, degraded, recovering
Active Devices : 2
Working Devices : 3
Failed Devices : 1
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 64K
Rebuild Status : 48% complete
UUID : faee3020:14fc3e48:9717e6f5:d7cf7de7
Events : 0.6
Number Major Minor RaidDevice State
4 8 64 0 spare rebuilding /dev/sde
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 16 - faulty spare /dev/sdb
#cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdb[3](F) sde[4] sdd[2] sdc[1]
2097024 blocks level 5, 64k chunk, algorithm 2 [3/2] [_UU]
[=================>...] recovery = 88.7% (931664/1048512) finish=0.0min speed=24130K/sec
unused devices:
(3)查看完成坏损设备后的RAID状态
#mdadm -D /dev/md0
/dev/md0:
Version : 00.90.03
Creation Time : Tue Nov 13 11:55:59 2007
Raid Level : raid5
Array Size : 2097024 (2048.22 MiB 2147.35 MB)
Device Size : 1048512 (1024.11 MiB 1073.68 MB)
Raid Devices : 3
Total Devices : 4
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Tue Nov 13 18:21:59 2007
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 1
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 64K
UUID : faee3020:14fc3e48:9717e6f5:d7cf7de7
Events : 0.8
Number Major Minor RaidDevice State
0 8 64 0 active sync /dev/sde
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 16 - faulty spare /dev/sdb
#cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdb[3](F) sde[0] sdd[2] sdc[1]
2097024 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
unused devices:
(4)移除坏损设备
#mdadm /dev/md0 -r /dev/sdb
mdadm: hot removed /dev/sdb
(5)添加新的设备
#mdadm /dev/md0 -a /dev/sdb
mdadm: added /dev/sdb
(6)查看最终状态
#mdadm -D /dev/md0
/dev/md0:
Version : 00.90.03
Creation Time : Tue Nov 13 11:55:59 2007
Raid Level : raid5
Array Size : 2097024 (2048.22 MiB 2147.35 MB)
Device Size : 1048512 (1024.11 MiB 1073.68 MB)
Raid Devices : 3
Total Devices : 4
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Tue Nov 13 18:25:44 2007
State : clean
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 64K
UUID : faee3020:14fc3e48:9717e6f5:d7cf7de7
Events : 0.10
Number Major Minor RaidDevice State
0 8 64 0 active sync /dev/sde
1 8 32 1 active sync /dev/sdc
2 8 48 2 active sync /dev/sdd
3 8 16 - spare /dev/sdb
#cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdb[3](S) sde[0] sdd[2] sdc[1]
2097024 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
unused devices:
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/103908/showart_2047332.html |
|