分类: 系统运维
2013-02-18 12:07:35
Redundant Array of Independent Disks
Level:
Raid0
...
Raid7
Raid10
Raid50
Raid0:
将一段数据(如512k)分成相同大小的chunk(如64k),分别分配到各个磁盘上
特点:性能好,大大提高读写性能(两块硬盘几乎可以达到一块硬盘读写的1.7倍),没有冗余能力,容量为所有磁盘容量总和。
Raid1:
做镜像,将一段数据(如512k)分成相同大小的chunk(如64k),存相同的数据到各个磁盘上。
写入速度和一块硬盘基本相同,读取时从两块磁盘上读取,读性能提升,容量减半。
数据可靠性好,但容易磁盘浪费。
Raid4:
至少三块硬盘,一块硬盘作为冗余校验盘,其他磁盘存储数据后将校验信息放在荣誉校验盘上。
读写性能提高,可以容错,只容错一块硬盘。 荣誉校验盘成为瓶颈
Raid5:
Raid5与Raid4类似,不同的是,5是将校验码分别存储在不通的磁盘上。
RIAD5可以坏几块盘与硬盘的数量无关,RAID5允许坏一块硬盘,直至有好硬盘完全替换坏硬盘的内容,才允许坏另一块硬盘。
容量为(n-1)/n总磁盘容量
Raid10:
磁盘利用率为总空间的1/2
硬件raid,系统识别为/dev/sdN
软件raid,系统识别为/dev/mdN
mdadm:
modes:
-A Assemble 装备模式,将一个停掉的软raid重新识别成一个raid设备
-C Create 创建模式,建立新的软raid设备
-n 指定创建raid设备时,所能使用磁盘的个数
-x 指定空闲盘的个数
-c 指定chunk大小,默认64k
-l 指定raid级别(linear,raid0,0,stripe,raid1,1,mirror,raid4,4,raid5,5,raid6,6,raid10,10)
-F Follow or Monitor 监控模式
-G Grow 扩展模式
--add --fail Manager 管理模式
-v 详细信息
e.g. 创建一个2G的raid0
1.先创建两个为1G的分区
fdisk /dev/sda
n --> 1G --> t N(选择创建的分区) --> fd --> w
partprobe /dev/sda
2.创建软raid
mdadm -C /dev/mdN -a yes -l 0 -n 2 -c 128k /dev/sda{6,7}
cat /proc/mdstat 查看raid状态
3.格式化raid设备
mke2fs -j /dev/mdN
4.查看raid详细信息
mdadm --detail /dev/mdN
模拟磁盘损坏:
mdadm /dev/mdN --fail /dev/sdaN
移除损坏磁盘:
mdadm /dev/md2 --remove /dev/sdaN
停用一个raid设备:
mdadm -S /dev/mdN
重新装备raid设备:
mdadm -A /dev/mdN /dev/sda8 /dev/sda9
保存当前主机上的raid设备的配置信息:
mdadm -D -s > /etc/mdadm.conf