RAID卡在现今的高性能的互联网服务器中很常见。尽管软件RAID已经有许多年的历史,但是很多新型系统还是偏向于使用硬件RAID来提供更好的系统性能和可靠性。本篇博客将介绍我们所使用的RAID卡以及为什么会使用这些RAID卡。

我们现在许多新的服务器都用的是戴尔的R410/R420服务器。我们认为这些服务器性价比最高,小巧并且耗电量低,这可算是增值收益。若使用的是R420的服务器的话,可以购买大型磁盘构建大型系统及更多的RAM空间,并将其配置到1U的机箱中。

当购买了类似于这样的服务器的话,或者是从惠普或其它厂商那里购买了类似的产品的时候,第一个重要抉择就是,如果要购买RAID,应该购买什么样的RAID。有很多可供选择的方案,但是我们会尽可能地购买最好的RAID卡,即PERC卡,该卡带有电池备份和写缓存。

基本上有三种选择:软件RAID,SAS RAID和 PERC RAID。

软件RAID是随着Linux,通过标准的磁盘组和驱动提供的,就像是LVM装置。它性能很好,如果磁盘丢失的话,还可提供额外的可靠性,但是,也会带来许多问题。最大的问题发生在系统启动的时候,因为软件RAID在系统看来好像是有两个磁盘,而硬件RAID无论在何时都显示只有一个磁盘。这样的话,若磁盘故障,要想启动系统的话,就很复杂,要想进行恢复更是难上加难。这就清楚的表明,使用、管理和修复软件RAID远比硬件RAID要复杂的多。

因为现在硬件RAID很便宜,也增加了额外的功能,所以,除非别无选择,否则我们不推荐使用软件RAID。但是有一个例外,就是我们在Amazon EC2 上使用了软件RAID,是为了在EBS上执行RAID1/10工作,因为这时候软件RAID表现出的性能更好、可靠性也得到了提高。

如果用的是戴尔的服务器的话,还有另外一个选择方案,就是选用H310,在Rx10s上也被称为SAS RAID。这是一个基本的RAID卡,没有缓存和电池,其主要功能就是提高标准的RAID的可靠性,或者,如果用的是RAID 1的话,就是提高系统性能。对于网络服务器和其它服务器,如果不需要很高的I/O性能的话,此卡的确是一个好的选择。

第3个也是最佳的选择是使用H710,也被称作PERC6, 或者如果用的是Rx10系列服务器的话,采用H700,它是全清理或电池备份写缓存控制器。对于性能要求很高的应用程序如数据库和云控制器而言,这是最好的选择方案。写缓存在IO性能上会有很大的差异,如果主要是写的应用程序的话,性能差异更大。

对于像MySQL这样的系统,理想的情况是,每次数据变更之后,都进行一次fsync(),这个缓存是用于确保最大的数据可靠性和最佳的性能。如果没有缓存,可靠性和性能会很差,对于电商之类的交易频繁的网站而言,就很难应付得来。

请注意在HP服务器上,有一个基本的RAID卡,其工作原理与戴尔的H310类似,您可以在该卡上增加一个电池缓存,这样它就能像H710一样。这种方法很灵活,而且可以根据您的需要进行升级。戴尔也允许您根据个人需要增加新卡。

但是,必须知道所有戴尔及其它厂商的电池备份缓存控制器,有一个电池学习功能,会对系统性能造成很大影响。该功能会关闭缓存,将电池关闭几个小时,然后再充电。这是一件好事,电池可以保持活力,容易管理,但是会给大型繁忙系统带来麻烦,因为系统突然发觉没有磁盘缓存了。我们遇到过这种突发问题,但是,好在现在有了特殊的监控工具,为了避免您的系统垮掉,请联系我们获取详细信息。

结论:购买您能买得到的最好的RAID控制器。对于新型的戴尔服务器而言,就是H710或H700/PERC6,这两种都有电池写缓存。这将会为您的系统提供最佳的性能和可靠性,确保其长久运行。