Linux实现最常用的磁盘阵列-- RAID5
(一)RAID简介:
独立磁盘冗余数组(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余数组(RAID,Redundant Array of Inexpensive Disks),简称硬盘阵列。其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘。根据选择的版本不同,RAID比单颗硬盘有以下一个或多个方面的好处:增强数据集成度,增强容错功能,增加处理量或容量。另外,磁盘阵列对于电脑来说, 看起来就像一个单独的硬盘或逻辑存储单元。分为RAID-0,RAID-1,RAID-1E,RAID-5,RAID-6,RAID-7,RAID-10,RAID-50。
简单来说,RAID把多个硬盘组合成为一个逻辑扇区,因此,操作系统只会把它当作一个硬盘。RAID常被用在服务器电脑上,并且常使用完全相同的硬盘作为组合。由于硬盘价格的不断下降与RAID功能更加有效地与主板集成,它也成为了玩家的一个选择,特别是需要大容量存储空间的工作,如:视频与音频制作。
最初的RAID分成了不同的等级,每种等级都有其理论上的优缺点,不同的等级在两个目标间取得平衡,分别是增加数据可靠性以及增加存储器(群)读写性能。这些年来,出现了对于RAID观念不同的应用。
(二)linux实现软RAID5:
1、准备硬盘(至少需要3块硬盘,此处使用一块硬盘的5个分区实现,但是在实际生产中一块硬盘做RAID没有意义):
[root@localhost ~]# fdisk -cul /dev/sdb #创建分区如下
Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x466fc1b6
Device Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
/dev/sdb2 10487808 41943039 15727616 5 Extended
/dev/sdb5 10489856 16781311 3145728 83 Linux
/dev/sdb6 16783360 23074815 3145728 83 Linux
/dev/sdb7 23076864 29368319 3145728 83 Linux
/dev/sdb8 29370368 35661823 3145728 83 Linux
/dev/sdb9 35663872 41943039 3139584 83 Linux
[root@localhost ~]# partx -a /dev/sdb #重新读取分区表
[root@localhost ~]# rpm -qa |grep mdadm #查看创建raid软件是否安装
mdadm-3.2.3-9.el6.i686
2、创建RAID5:
[root@localhost ~]# mdadm -C /dev/md0 -a yes -l 5 -n 4 -x 1 /dev/sdb{5..9} ####-C:创建/dev/md0设备,-a:是否自动检测这里为yes,-l:raid的级别这里为raid5,-n:几块硬盘做为RUN,-x:几块硬盘作为备用
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# mdadm --detail /dev/md0 #查看/dev/md0的详细信息
/dev/md0:
Version : 1.2
Creation Time : Mon Jan 14 19:36:37 2013
Raid Level : raid5
Array Size : 9414144 (8.98 GiB 9.64 GB)
Used Dev Size : 3138048 (2.99 GiB 3.21 GB)
Raid Devices : 4
Total Devices : 5
Persistence : Superblock is persistent
Update Time : Mon Jan 14 19:37:27 2013
State : clean
Active Devices : 4
Working Devices : 5
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : f16324c8:0f2a0be2:04c57c07:5f44f53e
Events : 18
Number Major Minor RaidDevice State
0 8 21 0 active sync /dev/sdb5
1 8 22 1 active sync /dev/sdb6
2 8 23 2 active sync /dev/sdb7
5 8 24 3 active sync /dev/sdb8
4 8 25 - spare /dev/sdb9