
如上图,我们在测试中创建了一个100GB的卷,采用的存储配置文件为“Balanced”跨RAID级别分层。SCv2000底层空间完全虚拟化打散为2MB页面(数据块),这台样机配置的是7200转NL-SAS硬盘。根据这个统计信息,我们写入的大约15GB数据在RAID 10-DM分层占用了3倍的物理磁盘空间,RAID开销为66.6%。正如上一篇中提到过的——“由于这台机器是12块4TB硬盘,高性能分层没有用传统的单镜像盘RAID 10,而是双重镜像的RAID 10-DM(相当于3副本),就是为了避免Rebuild时间窗口内双盘故障的风险”。这时我们手动创建一个Replay快照,这是触发Data Progression RAID分层的前提。在“创建Replay”的对话框中,可以选择快照过期时间、描述,以及是否立即“从Replay创建卷”——也就是利用快照时间点数据状态生成一个依赖指针的“虚拟”卷,后面我们会单独测试这一功能。当Replay创建完成之后,我们观察到柱状图的颜色变了,对照一下图例就可以看出变化反映了什么。为了方便接下来的测试,我们是将上文中“Data Progression开始时间”的设置做了修改,以便让RAID分层转换的动作提前到来。如上图,在跨RAID级别分层中的数据一旦被快照冻结,就意味着“需要重新平衡”。这里面遵循的一个重要原则,就是目标RAID级别——RAID 6的读性能不比RAID 10(DM)差,却能够显著节约容量。而这种分层的前提机制,是一直将数据写入到高性能分层,无论写入新的逻辑数据块还是覆盖已有数据的块都以RAID 10(DM)形式存放,所以写性能也不会因此而受到影响。戴尔SCv2000将驱动器划分成2MB条带,并以此为单位创建RAID。除了SC9000、8000和SC4020等中高端型号支持在不同驱动器(多种SSD、HDD)之间的自动分层之外,Data Progression于相同性能驱动器的层级内部,还可以做不同RAID级别之间的转换。这也是Compellent家族存储的一个重要特色。经过重新平衡之后,我们看到原有的“活动空间”已经都转换为RAID 6-10(8+2)级别,同时RAID开销下降为20%。这里还给出了“总磁盘空间”相对RAID 10 DM节省了11.62GB。我们使用Iometer在其生成的iobw.tst上短时运行(覆盖)写入测试,然后再将其拷贝生成一个新的副本。创建Replay之后,如果向卷内继续写入数据,无论到新的数据块还是覆盖原有块的内容,都会以RAID 10 DM级别存放(如下图)。RAID 6中的快照数据将保持不变,直至生成新的Replay,并到达下一次Data Progression数据迁移周期。在演示过RAID分层的实现过程之后,我们继续向大家介绍戴尔SC系列的快照功能。快照的一般用途是数据保护。首先面对本地逻辑错误可以恢复至之前的历史状态,进而还可以利用快照实现本地、远程的增量异步复制。而许多存储产品支持的快照数量较为有限,在打开快照后性能下降明显,有的还需要单独为快照预留存储空间。戴尔SC的Replay实现与传统COFW(copy on first write)方式不同,得益于底层磁盘空间完全虚拟化、丰富的元数据支持,创建、过期(删除)快照时都能在瞬间完成,支持较多的快照数量、任意挂载和无限的快照分支。分钟级恢复点的Replay能够达到持续数据保护(准CDP)的效果。除了数据保护,以及历史数据挂载用于测试/演练/分析等常规用途之外,我们在前面也提到了,戴尔SC的自动分层存储功能与Replay也是分不开的。我们先创建一个新的Replay配置文件。在创建方法中有标准、并行和一致3个选项,选择“标准”将按顺序分别对Replay关联的卷创建Replays;“并行”将同时为与Replay关联的所有卷创建Replays;“一致”则将短时冻结相关卷的IO,并为它们创建Replays。一致性快照的好处是,我们可以为有依赖关系的数据卷(比如分别存放数据库的data文件和log文件)创建严格同一时间点数据状态的快照,以确保其有效可用。在每个Replay配置文件中都可以添加多条规则,我们可以设定按照一定的频率(每天/每周/每月)在特定时间生成快照,也可以在一个时间范围内按照固定的间隔生成快照。参见这个下拉菜单,这里同样可以设置Replay的过期时间。当我们将新建的“一致性”Replay配置文件应用到2个卷上,除了自动快照策略之外,如果点击其中某个卷手动创建快照时,会出现上面的提示。如上图所示,“New Volume 1”和“New Volume 2”作为一致性组生成了3个自动快照,还手动创建了一个快照。位于Replay列表中最上面,冻结时间为“活动”的就是指当前卷的最新状态,下面的时间点则表示每一个快照。当我们用右键点击某个Replay时,“过期”选项就相当于将对应的快照点删除,另外也可以选择“从Replay创建卷”。在从Replay创建卷时,同样可以针对“虚拟”出来的LUN选择快照策略,这个新产生的快照分支与源卷的快照互不影响。如上图,我们用2个不同时间点的Replay快照创建卷,与源卷挂载到同一主机。这时,可以看到源卷(D盘)和两个历史Replay卷的不同数据状态。如上图,对于从Replay创建的“虚拟”卷,我们也可以利用其Replay(快照的快照)再创建卷,以此类推… 总之戴尔SC系列在快照功能上是很灵活丰富的,这得益于底层磁盘管理的完全块级虚拟化。
我们在Windows下尝试安装Replay Manager——快照管理器。可以看到除了基础服务之外,还有SQL Server、Exchange Server和Hyper-V的扩展,它们的作用是生成应用/虚拟机的数据一致性快照。
针对Windows文件系统和微软应用程序,戴尔SC系列的Replay Manager是通过调用VSS(卷影副本)来实现一致性快照的。Replay Manager还有针对VMware的版本以及专为Oracle设计的APM(应用保护管理器),可以有效实现对虚拟机、数据库的快照保护。在本文的最后一张图中(点击可放大),我们安装了Enterprise Manager,在单一界面中可以集中管理多套戴尔Storage Center阵列,支持目前主流的SC9000/8000/4020等全线产品。我们注意到,这里还可以配置入门级SCv2000不具备的Live Volume(双活)、Fluid FS文件存储等增值功能方案。另外,SCv2000支持将数据迁移到SCv4020以及更高端的阵列产品,为用户提供了一个平滑的升级路径。
RAID分层和Replay快照是戴尔SCv2000比较有特色的两大功能,在入门级SAN阵列的价位上,并不是所有产品都具备这些智能特性。而更重要的是,用好这些功能并不难,它们可以帮助用户有效降低TCO并发挥更大的价值,重新定义存储的经济性。不知您看完本文有什么感想,是否有帮助呢?如果您对《工程师笔记》栏目有任何的意见或者建议,都可以在文章下面留言,以便我们将来能够更好地为读者服务。