磁盘队列RAID配置

1、 关于RAID0、RAID1和RAID5的区别

1.1 RAID0

1.1.1 定义

RAID 0代表了所有RAID级别中最高的存储性能。

1.1.2 工作原理

RAID 0提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。从理论上讲,三块硬盘的并行操作使同一时间内磁盘读写速度提升了3倍。 但由于总线带宽等多种因素的影响,实际的提升速率肯定会低于理论值。

1.1.3 优缺点

优点:读写性能是所有RAID级别中最高的。

缺点:RAID 0的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。RAID0运行时只要其中任一块硬盘出现问题就会导致整个数据的故障。

1.1.4 模型

磁盘队列RAID配置

1.1.5 总结

磁盘空间使用率:100%,故成本最低。

读性能:N*单块磁盘的读性能

写性能:N*单块磁盘的写性能

冗余:无,任何一块磁盘损坏都将导致数据不可用。

1.2 RAID1

1.2.1 定义

RAID 1通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。

1.2.2 工作原理

RAID1是将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”。RAID1磁盘阵列显然是最可靠的一种阵列,因为它总是保持一份完整的数据备份。它的性能自然没有RAID0磁盘阵列那样好,但其数据读取确实较单一硬盘来的快,因为数据会从两块硬盘中较快的一块中读出。RAID1磁盘阵列的写入速度通常较慢,因为数据得分别写入两块硬盘中并做比较。RAID1磁盘阵列一般支持“热交换”,就是说阵列中硬盘的移除或替换可以在系统运行时进行,无须中断退出系统。RAID1磁盘阵列是十分安全的,不过也是较贵一种RAID磁盘阵列解决方案,因为两块硬盘仅能提供一块硬盘的容量。RAID1磁盘阵列主要用在数据安全性很高,而且要求能够快速恢复被破坏的数据的场合。

在这里,需要注意的是,读只能在一块磁盘上进行,并不会进行并行读取,性能取决于硬盘中较快的一块。写的话通常比单块磁盘要慢,虽然是并行写,即对两块磁盘的写入是同时进行的,但因为要比较两块硬盘中的数据,所以性能比单块磁盘慢。

1.2.3 优缺点

优点:RAID1通过硬盘数据镜像实现数据的冗余,保护数据安全,在两块盘上产生互为备份的数据,当原始数据繁忙时,可直接从镜像备份中读取数据,因此RAID1可以提供读取性能。
缺点:RAID1是硬盘中单位成本最高的,写入速度慢。

1.2.4 模型

磁盘队列RAID配置

1.2.5 总结

磁盘空间使用率:50%,故成本最高。

读性能:只能在一个磁盘上读取,取决于磁盘中较快的那块盘。

写性能:两块磁盘都要写入,虽然是并行写入,但因为要比对,故性能单块磁盘慢。

冗余:只要系统中任何一对镜像盘中有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行。

1.3 RAID5

1.3.1 定义

RAID 5是RAID 0和RAID 1的折中方案。RAID 5具有和RAID0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息,RAID5的磁盘空间利用率要比RAID 1高,存储成本相对较低,是目前运用较多的一种解决方案。

1.3.2 工作原理

RAID5把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块磁盘上都存储完整的数据,也就是说有相当于一块磁盘容量的空间用于存储奇偶校验信息。因此当RAID5的一个磁盘发生损坏后,不会影响数据的完整性,从而保证了数据安全。当损坏的磁盘被替换后,RAID还会自动利用剩下奇偶校验信息去重建此磁盘上的数据,来保持RAID5的高可靠性。

做raid 5阵列所有磁盘容量必须一样大,当容量不同时,会以最小的容量为准。 最好硬盘转速一样,否则会影响性能,而且可用空间=磁盘数n-1,Raid 5 没有独立的奇偶校验盘,所有校验信息分散放在所有磁盘上, 只占用一个磁盘的容量。

1.3.3 模型

磁盘队列RAID配置

1.3.4 总结

磁盘空间利用率:(N-1)/N,即只浪费一块磁盘用于奇偶校验。

读性能:(n-1)*单块磁盘的读性能,接近RAID0的读性能。

写性能:比单块磁盘的写性能要差(这点不是很明白,不是可以并行写入么?)

冗余:只允许一块磁盘损坏。

2、 RAID的配置

1、首先启动服务器,出现[Pressto Run Configuration Utility]提示时,按下ctrl+r;

2、按照屏幕下方的虚拟磁盘管理器提示,在VD Mgmt菜单(可以通过CTRL+P/CTRL+N切换菜单),按F2展开虚拟磁盘创建菜单;

3、在虚拟磁盘创建窗口,按回车键选择”Create New VD”创建新虚拟磁盘;

4、在RAID Level选项按回车,可以出现能够支持的RAID级别,RAID卡能够支持的级别有RAID0/1/5/10/50,根据具体配置的硬盘数量不同,这个位置可能出现的选项也会有所区别,选择不同的级别,选项会有所差别,选择好需要配置的RAID级别(我们这里以RAID0为例,想要配置RAID5可以参考第二个参考链接),按回车确认;

5、确认RAID级别以后,按向下方向键,将光标移至Physical Disks列表中,上下移动至需要选择的硬盘位置,按空格键或回车键来选择(移除)列表中的硬盘,当选择的硬盘数量达到这个RAID级别所需的要求时,Basic Settings的VD Size中可以显示这个RAID的默认容量信息。有X标志为选中的硬盘,选择完硬盘后按Tab键,可以将光标移至VD Size栏,VD Size可以手动设定大小,也就是说可以不用将所有的容量配置在一个虚拟磁盘中。VD Name根据需要设置,也可为空。

6、修改高级设置,选择完VD Size后,可以按向下方向键,或者Tab键,将光标移至Advanced Settings处,按空格键开启(禁用)高级设置。如果开启后(红框处有X标志为开启),可以修改Stripe Element Size大小,以及阵列的Read Policy与Write Policy,Initialize处可以选择是否在阵列配置的同时进行初始化,高级设置默认为关闭(不可修改)。如果是一个全新的阵列,建议进行初始化操作,如果配置阵列的目的是为了恢复之前的数据,则不要进行初始化。

7、上述的配置确认完成后,按Tab键,将光标移至OK处,按回车确认即可继续。

3、 参考链接

1、关于Raid0,Raid1,Raid5的总结
2、Raid5的使用与配置