RAID磁盘冗余阵列
RAID:Redundant Arrays of Inexpensive(Independent) Disks 廉价(独立)磁盘冗余阵列
1988年由加利福尼亚大学伯克利分校(University of California-Berkeley) “A Case for RedundantArrays of Inexpensive Disks”,多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供
RAID功能实现
  提高IO能力,磁盘并行读写
  提高耐用性,磁盘冗余算法来实现
RAID实现的方式
  外接式磁盘阵列:通过扩展卡提供适配能力
  内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置
  软件RAID:通过OS实现,比如:群晖的NAS
RAID级别
级别:多块磁盘组织在一起的工作方式有所不同
RAID-0:条带卷,strip
RAID-1:镜像卷,mirror
RAID-2
..
RAID-5
RAID-6
RAID-10
RAID-01
RAID级别
RAID 0
    建议大小一样
    
  读、写性能提升
  可用空间:N*min(S1,S2,...),磁盘利用率100%
  每个硬盘同时写入,无容错能力
  最少磁盘数:2, 2+
RAID 1
  读性能提升、写性能略有下降
  
  删除数据,如果是两块磁盘,就两块磁盘一起删除,raid是防物理的,删除了就没有了
  可用空间:1*min(S1,S2,...),磁盘利用率50%
  有备份数据,有冗余能力,(可以坏一块硬盘)但是删除如上
  最少磁盘数:2, 2N
RAID 4
  多块数据盘异或运算值存于专用校验盘
  磁盘利用率 (N-1)/N
  有冗余能力
  至少3块硬盘才可以实现
RAID 5
  读、写性能提升
  可用空间:(N-1)*min(S1,S2,...)
  有容错能力:允许最多1块磁盘损坏
  最少磁盘数:3, 3+
RAID 6
  读、写性能提升
  可用空间:(N-2)*min(S1,S2,...)
  有容错能力:允许最多2块磁盘损坏
  最少磁盘数:4, 4+
RAID 1 0
  读、写性能提升
 
  可用空间:N*min(S1,S2,...)/2,磁盘利用率50%
  
  有容错能力:每组镜像最多只能坏一块
  
  最少磁盘数:4, 4+
  
  坏的几率是1/3
RAID 0 1
  多块磁盘先实现RAID0,再组合成RAID1,磁盘利用率50%
  
  坏的几率2/3
RAID 5 0
  多块磁盘先实现RAID5,再组合成RAID0
其他级别
JBOD:Just a Bunch Of Disks
  功能:将多块磁盘的空间合并一个大的连续空间使用
  可用空间:sum(S1,S2,...)
常用级别:
RAID-0, RAID-1, RAID-5, RAID-10, RAID-50, JBOD
| RAID等级 | 最少硬盘 | 最大容错 | 可用容量 | 读取性能 | 写入性能 | 安全性 | 目的 | 安全性目的应用场景 | 
|---|---|---|---|---|---|---|---|---|
| 单一硬盘 | (参考) | 0 | 1 | 1 | 1 | 无 | ||
| JBOD | 1 | 0 | n | 1 | 1 | 无(同RAID0) | 增加容量 | 个人(暂时)存储备份 | 
| 0 | 1 | 0 | n | n | n | 一个硬盘异常,全部硬盘都会异常 | 追求最大容量、速度 | 影片剪接缓存用途 | 
| 1 | 2 | n-1 | 1 | n | 1 | 高,一个正常即可 | 追求最大安全性 | 个人、企业备份 | 
| 5 | 3 | 1 | n-1 | n-1 | n-1 | 高 | 追求最大容量、最小预算 | 个人、企业备份 | 
| 6 | 4 | 2 | n-2 | n-2 | n-2 | 安全性较RAID5高 | 同RAID 5,但较安全 | 个人、企业备份 | 
| 10 | 4 | 高 | 综合RAID 0/1优点,理论速度较快 | 大型数据库、服务器 | ||||
| 50 | 6 | 高 | 提升数据安全 | |||||
| 60 | 8 | 高 | 提升数据安全 | 
实现软RAID
mdadm工具:为软RAID提供管理界面,为空余磁盘添加冗余,结合内核中的md(multi devices)
RAID设备可命名为/dev/md0、/dev/md1、/dev/md2、/dev/md3等
mdadm:模式化的工具,支持的RAID级别:LINEAR, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10
命令的语法格式:
mdadm [mode] <raiddevice> [options] <component-devices>
常用选项说明
模式:
  创建: -C
  装配: -A
  监控: -F
  管理: -f, -r, -a
<raiddevice>: /dev/md#
<component-devices>: 任意块设备
-C     创建模式
-n #   使用#个块设备来创建此RAID
-l #    指明要创建的RAID的级别
-a {yes|no}  自动创建目标RAID设备的设备文件
-c CHUNK_SIZE   指明块大小,单位k
-x #   指明空闲盘的个数
-D  显示raid的详细信息
mdadm -D /dev/md#
管理模式:
-f   标记指定磁盘为损坏
-a  添加磁盘
-r   移除磁盘
观察md的状态: cat /proc/mdstat
范例
#使用mdadm创建并定义RAID设备
mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sd{b,c,d,e}1
#用文件系统对每个RAID设备进行格式化
mkfs.xfs /dev/md0
#使用mdadm检查RAID设备的状况
mdadm --detail|D /dev/md0
#增加新的成员
mdadm –G /dev/md0 –n4 -a /dev/sdf1
#模拟磁盘故障
mdadm /dev/md0 -f /dev/sda1
#移除磁盘
mdadm /dev/md0 –r /dev/sda1
#在备用驱动器上重建分区
mdadm /dev/md0 -a /dev/sda1
#系统日志信息
cat /proc/mdstat
生成配置文件
mdadm –D –s >> /etc/mdadm.conf
停止设备
mdadm –S /dev/md0
激活设备
mdadm –A –s /dev/md0
强制启动
mdadm –R /dev/md0
删除 RAID 信息
mdadm --zero-superblock /dev/sdb1
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号