本文作者Howard Marks是Networks Are Our Lives公司的首席科学家。这家公司总部位于新泽西州霍博肯,从事顾问工作。1987年以来,他一直专注于系统的分析和写作。
就像我同用户和厂商在数据保护框架上所讲述过的那样,我注意到许多组织在保护他们的任务关键型应用程序的时候首先是将数据从主阵列同步镜像到二级阵列,然后将数据从二级阵列离站异步复制到第三个目标端。每当我想到这种架构,我就忍不住思考如果公司直接从服务器镜像到主阵列和二级阵列而不是同步复制是不是更好。
虽然主机卷控制器可能最初设计就已经支持一个或多个DAS(直连式存储)连接的JBOD(简单磁盘捆绑),不过配置外部RAID(独立磁盘冗余阵列)阵列的卷控制器的使用不是什么新鲜事。在很早的过去,我必须将两个Windows NT 3.5服务器通过HVD(高压差分)SCSI(小型计算机系统接口)连接到早期的EMC Symmetrix系统。
在这个项目中我学到的第一件事就是把HVD线缆查到服务器的SCSI端口不是个好主意。(在插好后,它会冒出神秘的蓝烟,然后让所有计算机工作起来)。后来我发现Symmetrix将RAID-S(旧的EMC概念,你不会想知道的)卷呈现为9GB驱动器,因此要构建一个45GB的NTFS卷,我必须使用Windows卷管理器将9GB驱动器整合起来。
现在,我看到主机镜像比同步复制有一些明显的优势。差异最大的地方就是系统在阵列故障时候的表现。比如说,如果采用复制模式,服务器在阵列故障的时候会丢失与数据卷的连接,管理员必须将它们手动重连到二级阵列上"Crash consistent(崩溃状态一致)"的副本。另一方面,卷管理器可以将一个阵列的故障看作一对驱动器镜像中一个驱动器的故障,可以继续进行正常操作。
当然,另一个明显的优势就是成本。多数阵列厂商在复制软件上都会狠狠地收取一笔费用,而多数主机操作系统已经包含了免费的卷管理器。
在低端档,一些基于服务器的阵列产品支持同步复制以便弥补主板和/或磁盘控制器上的单点故障。不幸的是,我看到使用这项功能可能会给磁盘I/O性能带来明显的负面影响。这种功能可能会消耗服务器主板的许多资源来管理一捆存储并在所有时候都要保持一个同步的影子存储。在主机上进行镜像可以免去单点故障的问题,同时对性能的影响也比较小
显然,主机复制不能代替同步复制。如果从服务器到更远的阵列有明显的延迟性,我也不希望将一个阵列镜像到不同数据中心中的阵列。即使100微妙的额外的延迟性也可能让阵列镜像对感觉起来更像是一个SATA和SAS镜像组合--这样的组合下决定性能的是镜像对中更慢的那部分组件。
不要说"这是不对的",为什么没有更多用户从主机进行镜像?欢迎你们的评论。