2008年(8065)
分类: 服务器与存储
2008-08-26 13:18:34
快照支持:飞康表现最优
理论上,快照只是一个简单的想法:你需要向磁盘阵列发送一个指令,生成一个真实磁盘状态的一个时间点拷贝。你可以继续的读这个真实磁盘并进行读和写操作,如果你需要的话,你还可以加载快照点,看一看你刚才那一刻捕获的信息状态。
这也就是说,具备快照功能的每一个产品(仅D-Link的 DSN-3200-10 和 Nexsan和 SATAbeast 不具备此功能)在投放市场时,都非常耐心的说明其产品的这个功能并不是为真实磁盘作了一个拷贝,准确的说它是在不同快照版本间简单跟踪磁盘的变化。如果说你想让这个快照永远的做下去,那么你还需要做一些额外的工作,或者将这个磁盘卷拷贝出来生成一个新的卷,或者从这个磁盘卷的主卷进行拷贝。
对于我们测试的每个产品的快照能力有个简单的区分方式,就是其对操作系统的支持和对应用的支持到什么程度。
让一个系统简单的做一个瞬间停顿,来创建一个快照是非常危险的,因为iSCSI不能自动感知文件或者目录的变化。所以在系统停顿的那一刻,文件系统并不知道发生了什么,这样也就使得文件系统可能一致,也可能文件不完全一致。在一块磁盘上有很多的位信息和分片信息指向彼此,如果你在一个指针进行更新而其他指针不更新的时刻捕捉快照,这对磁盘来说是不合法的。也会使得一些应用出现问题,例如邮件应用和数据库应用,在这一刻为了保证其应用或数据库的一致性和真实性,全备份往往要求更多的真实磁盘进行同步。
如果你想对一些非活动的磁盘做快照,那么上面提到的将不是问题。然而,如果你想确保你所做的快照是真实的、具备一致性的,并且可以替代原始的磁盘来进行使用的话,你需要更新你的iSCSI磁盘阵列,因为有些iSCSI磁盘阵列都具有一些代理程序,他们可以与操作系统和应用进行通讯,确保磁盘存储在做快照的时刻其数据是处于完全一致性状态。
在这些支持快照代理程序的磁盘阵列里面表现最好的是飞康公司的NSS-S12,它的兼容列表里面明确的支持超过12种数据库应用和邮件服务,覆盖了绝大多数UNIX系统和系统。但令人遗憾的是,在我们对飞康快照能力的测试中,运行在2008操作系统下的快照软件表露出一个非常严重的bug:我们本想获得一个具有数据一致性的快照点,但是事实上我们没有获得。最终,技术支持人员解释说目前还不能完全支持Windows2008操作系统。虽然飞康的技术在快照代理程序支持上有这样一个突出的难点,但是其还是通过了我们大量的其他测试,并且表现非常好。
快照支持:NetApp紧随其后
紧随飞康之后的是NetApp的技术,他的快照代理程序支持Windows和UNIX操作系统,也对一些应用有良好的支持。我们对NetApp的软件也在Windows2008操作系统上进行了测试,结果显示其可以获得具有数据一致性的快照。
在我们测试中的其他参与的厂商都没有对快照一致性的问题给予有竞争力的说法,他们都没有真正的提供快照代理的支持,或者支持也是针对一些特殊的微软操作系统(比如Windows2003)里有个叫卷影拷贝服务(VSS)的功能。
Compellent、Dell、HP、LeftHand Networks 和StoneFly的技术都简单的特别针对微软系统,进行的文件系统级别的一致性处理,其产品手册或兼容列表里也没有明确的说明他们是否支持UNIX操作系统或者Vmware的ESX虚拟系统(据预测在未来这个系统将成为iSCSI系统的很大用户)。
我们测试这些快照功能是为了确定我们能够通过这些产品真正的产生一个快照点,就好像他是一个新的iSCSI卷,通过他可以重新找到以前的文件。如果只是测试文件这样一个简单的要求的话,这些产品并没有什么太大问题。
考察这些快照能力的另一个方面是其是否具备按照计划、定制策略有规律执行快照操作。Compellent, Dell, FalconStor, HP, LeftHand Networks, NetApp and Stonefly的iSCSI磁盘阵列都支持有计划、策略的定制快照。同时我们也发现在执行快照时的一些细小区别。
例如如何简单或者复杂的剥离快照和真实磁盘卷(Compellent的 StorageCenter在此方面表现尤为出色);将快照镜像恢复到真实磁盘卷上(NSS-S12、 HP StorageWorks 2012i、和 LeftHand Networks NSM 2120做起来非常简单);或者,把使用快照自动的作为备份策略的一部分(这方面只有Kano Technologies NetCOR 7500做起来稍稍复杂,其他都非常简单)。
Compellent, FalconStor, HP, Kano 和 NetApp的产品提供的快照功能需要额外的授权费用。(Kano声明他们将在2008年8月停止快照授权的使用费用。)
绝大多数的iSCSI磁盘阵列都要求你分配一些空间或者预先计算出快照使用的空间;但是Compellent的 StorageCenter 和 LeftHand的NSM 2120对此处就没有明确要求。但对你来说不管这些问题是否存在,你都要知道如何产生快照。同样地,大多数的磁盘阵列都对一些特定的磁盘卷所能生成的快照数量有明确的限制。例如NetApp FAS2050系统对快照数量的限制是固定的,常常是一个比较大的数量值(例如每系统255个快照)。
复制能力的比较
数据复制能力是我们用来区分iSCSI磁盘阵列系统的另一个重要特性。绝大多数数据复制工作常常用来在另一个存储系统上为本地真实磁盘建立一个完整拷贝,这样的话你就需要物理的在远程另一座建筑里安放第二台设备,或者可能的话在另一个国家安放。同样安放在远程的大多数存储系统都能提供快照功能,除此以外,还可以提供其他各种各样的功能,例如重复数据删除和带宽限制的能力。
在同步数据复制技术里,每一个写入到真实磁盘的数据被镜像写入到远程复制卷,这也就是说远程复制卷可以保证与原始卷间数据的一致性。之所以被叫做同步,是因为真实的写操作要等到两边同时写完才算作是写完成。数据同步复制往往是一个难以处理的课题,因为它要求两个存储间要具备比较高的带宽和比较小的延迟。否则,生产系统的性能将受到非常大的影响。
Compellent, FalconStor, LeftHand Networks, NetApp, Reldata and StoneFly都支持同步数据复制技术。如果本地的存储系统和远程的存储系统是相同的,那么FalconStor 和 NetApp的磁盘阵列可以提供最好的选项来支持同步数据复制。Reldata则拥有最有趣的复制选项:他们的产品即将使用iSCSI来完成数据复制工作,但令人奇怪的是你要使用一台非Reldata的磁盘阵列作为远程的存储系统。
异步数据复制技术是以一种不太精确的方式进行数据复制的,并且常常和快照技术一起使用。这也就是说你需要对一个真实磁盘有计划、有规律的制定执行快照的计划,而这些快照将被用做数据复制。
这种复制过程仅仅是传送那些目前数据与最近一次快照之间的该变量信息。异步数据复制技术对生产系统的性能没有太大的影响,因为它不需要实时的复制每一次写操作。因此,如果你每小时做一次快照,那么在复制端的真实磁盘就将比初始磁盘少大约一小时的数据(这也要依据传输数据的周期)。Celeros (在远程), Compellent (在本地/远程), Dell (在远程), HP (在本地), LeftHand Networks (在本地/远程), NetApp (在本地/远程), Reldata (在远程) and Stonefly (在本地)都支持异步数据复制技术。
与快照技术一样,数据复制技术往往都需要独立的收费授权。因为我们没有在实际中测试其数据复制能力(在我们的测试中每个厂商的磁盘阵列我们只拥有一台),所以我们在为每个产品定价的时候并没有包含数据复制技术所需要的费用。
尽管我们在测试的过程中一直把焦点放在iSCSI上,但我们也发现其中的Celeros、 NetApp 和 Reldata三款产品还包含网络连接存储(NAS)协议(例如在一个系统中还支持NFS、CIFS或SMBO协议)。Celeros最能吸引我们眼球的是在数据恢复和数据保护领域的功能,因为在其提供的NAS协议支持的分区里可以预先安装一些比较流行的企业级备份软件的代理程序,如Veritas、Dantz和CA软件。这使得Celeros自身就捆绑了备份的功能,不需要一台单独使用NAS卷的用来进行备份,让备份的效率更大化。