首页> 中国专利> 用于在故障出现时维持全部性能的文件服务器的双尾故障终止

用于在故障出现时维持全部性能的文件服务器的双尾故障终止

摘要

提供了一种用于在出现故障时监视文件系统(100)的全部性能的方法。该文件系统有N个存储设备(108),这里N是大于零的整数,和N个主文件服务器(104),每一个文件服务器可操作连接到一个相应的存储设备(110)以访问那里的文件。该文件系统另外还有一个辅助文件服务器(104a),它可操作连接到N个存储设备中的至少一个。所述方法包括:当N个主文件服务器之一出现故障时,切换N个存储设备中的一个的连接到辅助文件服务器;切换剩余的一个或者多个存储设备的连接到一个不同于发生故障的文件服务器的主文件服务器,以防止损失性能并给每一存储设备提供一个运行的文件服务器。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-09-01

    未缴年费专利权终止 IPC(主分类):G06F13/14 授权公告日:20051221 申请日:20020225

    专利权的终止

  • 2005-12-21

    授权

    授权

  • 2004-06-30

    实质审查的生效

    实质审查的生效

  • 2004-04-28

    公开

    公开

说明书

对相关申请的交叉参考

本发明要求享受于2001年2月24日提交的、名为“MassivelyParallel Supercomputer”的共同拥有的待审美国临时专利申请60/271,124的优先权,它的全部内容和公开特意被结合在这里作为参考,如同在这里完全叙述的一样。本专利申请另外与下面共同拥有的、与本申请同一天递交的待审美国专利申请相关,它们中的每一篇的全部内容和公开特意被结合在这里作为参考,如同在这里完全叙述的一样。美国专利申请(YOR920020027US1,YOR920020044US1(15270)),名称为“Class Networking Routing”;美国专利申请(YOR920020028US1(15271)),名称为“A Global Tree Network forComputing Structures”;美国专利申请(YOR920020029US1(15272)),名称为“Global Interrupt and Barrier Networks”;美国专利申请(YOR920020030US1(15273)),名称为“Optimized Scalable NetworkSwitch”;美国专利申请(YOR920020031US1,YOR920020032US1(15258)),名称为“Arithmetic Functions in Torus and TreeNetworks”;美国专利申请(YOR920020033US1,YOR920020034US1(15259)),名称为“Data Capture Technique for High SpeedSignaling”;美国专利申请(YOR920020035US1(15260)),名称为“Managing Coherence Via Put/Get Windows”;美国专利申请(YOR920020036US1,YOR920020037US1(15261)),名称为“Low LatencyMemory Access And Synchronization”;美国专利申请(YOR920020038US1(15276)),名称为“Twin-Tailed Fail-Over forFileservers Maintaining Full Performance”;美国专利申请(YOR920020039US1(15277)),名称为“Fault Isolation ThroughNo-Overhead Link Level Checksums”;美国专利申请(YOR920020040US1(15278)),名称为“Ethernet Addressing via Physical Locationfor Massively Parallel Systems”;美国专利申请(YOR920020041US1(15274)),名称为“Fault Tolerance in a Supercomputer ThroughDynamic Repartitioning”;美国专利申请(YOR920020042US1(15279)),名称为“Checkpointing Filesystem”;美国专利申请(YOR920020043US1(15262)),名称为“Efficient Implementationof Multidimensional Fast Transform on a Distributed-MemoryParallel Multi-Node Computer”;美国专利申请(YOR9-20010211US2(15275)),名称为“A Novel Masssively Parallel Supercomputer”;和美国专利申请(YOR920020045US1(15263)),名称为“Smart FanModules and System”。

发明背景技术

发明领域

本发明一般涉及用于文件服务器的故障切换系统和方法,尤其是涉及分布式存储器消息传递并行计算机设计和系统软件,其例如可以应用于生命科学领域中的计算。

现有技术

用于在并行计算机设计中在文件服务器出现故障时提供故障切换的系统和方法在本领域中是公知的。然而,这种系统和方法以降低系统性能作为代价提供故障切换。因此,现有技术的故障切换系统和方法对于由计算机运行的应用程序来说无论在整体性能上还是在输入/输出(I/O)连接性上都是不透明的。

发明概述

因此,本发明的一个目的是提供用于文件系统的故障切换系统和方法,它们克服了与现有技术关联的缺点。

因此提供了用于计算机的一个文件系统。该文件系统包括:N个存储设备,这里N是大于零的整数;N个主文件服务器,每一个文件服务器可操作连接到相应的存储设备以访问其中的文件;一个辅助文件服务器,可操作连接到N个存储设备中的至少一个;其中,在N个主文件服务器之一出现故障时,N个存储设备中的一个切换它的连接到辅助文件服务器,剩余的一个或者多个存储设备在需要时切换它们的连接到一个不同于发生故障的文件服务器的主文件服务器以防止损失性能并给每一存储设备提供一个运行的文件服务器。

在文件系统的一个优选的实现中,N个存储设备中的每一个包括多个磁盘驱动器。该多个磁盘驱动器最好是包括可靠的廉价磁盘阵列(RAID)。在文件系统的另一个优选实现中,N个主文件服务器和辅助文件服务器的每一个都是PC。

优选地,N个存储设备中的至少一个具有第一和第二连接,这里第一连接可操作连接该存储设备到一个主文件服务器,第二连接可操作连接该存储设备到辅助文件服务器。第一和第二连接最好是SCSI总线连接。优选地,至少一个主文件服务器或辅助文件服务器具有一个双通道SCSI控制器,双通道中的一个通道可操作连接到N个存储设备中的一个,而双通道中的另一个通道可操作连接到N个存储设备的其它一个上。

还提供了一个计算机系统。所述计算机系统包括:可操作连接到一个文件系统的I/O节点;文件系统包括:N个存储设备,这里N是大于零的整数;N个主文件服务器,每一个文件服务器可操作连接到相应的存储设备以访问那里的文件;和一个辅助文件服务器,可操作连接到N个存储设备中的至少一个,其中,在N个主文件服务器之一出现故障时,N个存储设备中的一个切换它的连接到辅助文件服务器,剩余的一个或者多个存储设备在需要时切换它们的连接到一个不同于发生故障的文件服务器的主文件服务器,以防止损失性能并给每一存储设备提供一个运行的文件服务器。

在计算机系统的一个优选的实现中,N个存储设备中的每一个包括多个磁盘驱动器。该多个磁盘驱动器最好是包括可靠的廉价磁盘阵列(RAID)。在计算机系统的另一个优选的实现中,N个主文件服务器和辅助文件服务器的每一个都是PC。

优选地,N个存储设备中的至少一个具有第一和第二连接,这里第一连接可操作连接该存储设备到一个主文件服务器,第二连接可操作连接该存储设备到辅助文件服务器。第一和第二连接最好是SCSI总线连接。优选地,主文件服务器和辅助文件服务器中的至少一个具有一个双通道SCSI控制器,双通道中的一个通道可操作连接到N个存储设备之一,而双通道中的另一个通道可操作连接到N个存储设备的其它一个上。

另外提供一种用于在出现故障时维持文件系统全部性能的方法。该文件系统有N个存储设备和N个主文件服务器,这里N是大于零的整数,每一个文件服务器可操作连接到相应的存储设备以访问那里的文件。该文件系统另外还有一个辅助文件服务器,它可操作连接到N个存储设备中的至少一个。所述方法包括:当N个主文件服务器之一出现故障时,切换N个存储设备中的一个的连接到辅助文件服务器;以及在需要时切换剩余的一个或者多个存储设备的连接到一个不同于发生故障的文件服务器的主文件服务器,以防止损失性能并给每一存储设备提供一个运行的文件服务器。这样,所述方法以这种方式切换连接,使得不损失性能和使文件服务器上产生的负载均衡。

另外提供的是一种计算机程序产品,被包含在计算机可读介质中,用以在出现故障时维持文件系统的全部性能。所述文件系统有N个存储设备,这里N是大于零的整数;和N个主文件服务器,每一个文件服务器可操作连接到相应的存储设备以访问在那里的文件。该文件系统另外还有一个辅助文件服务器,它可操作连接到N个存储设备中的至少一个。该计算机程序产品包括:用于在N个主文件服务器之一出现故障时切换N个存储设备中一个的连接到辅助文件服务器的计算机可读程序代码装置;和用于在需要时切换剩余的一个或者多个存储设备的连接到一个不同于发生故障的文件服务器的主文件服务器的计算机可读程序代码装置,以防止损失性能并给每一存储设备提供一个运行的文件服务器。因此,如上所述,以这种方式切换连接,使得不损失性能和使文件服务器上产生的负载均衡。

另外提供的是一个可由机器读取的程序存储设备,有形地包含可由机器执行的指令程序以执行用于在出现故障时维持文件系统的全部性能的方法步骤。所述文件系统有N个存储设备,这里N是大于零的整数,和N个主文件服务器,每一个文件服务器可操作连接到相应的存储设备以访问在那里的文件。该文件系统另外还有一个辅助文件服务器,它可操作连接到N个存储设备中的至少一个。所述方法包括:在N个主文件服务器之一出现故障时切换N个存储设备中的一个的连接到辅助文件服务器;和在需要时切换剩余的一个或者多个存储设备的连接到一个不同于发生故障的文件服务器的主文件服务器,以防止损失性能并给每一存储设备提供一个运行的文件服务器。因此,所述方法包括以这种方式切换连接,使得不损失性能和使文件服务器上产生的负载均衡。

附图简要说明

参考下面的说明、所附权利要求和附图,本发明的装置及方法的这些以及其它特征、方面、和优点将被更好地理解,其中:

图1显示了根据本发明的一个优选实现的计算机系统的I/O节点和文件系统的正常运行方式。

图2显示了图1的计算系统,其中文件系统的一个文件服务器出现故障。

图3是图1的具有5个文件服务器和4个存储设备的文件系统的示意图。

图4显示了图3的文件系统,其中所有的主文件服务器都正常工作。

图5显示了图3的文件系统,其中末端文件服务器损坏了。

图6显示了图3的文件系统,其中中间文件服务器损坏了。

最佳实施例的详细说明

虽然本发明可应用于大量的和各种类型的故障终止系统,但是发现它在巨型并行计算机的故障终止系统环境中特别有用。因此,在不限制本发明对巨型并行计算机的故障终止系统的可应用性的同时,在这种环境中对本发明加以说明。这种巨型并行计算机系统在下面的待审美国专利申请中说明:序列号——————(代理人卷宗号15258);——————(代理人卷宗号15259);———————(代理人卷宗号15260);———————(代理人卷宗号15261);——————(代理人卷宗号15262);———————(代理人卷宗号15263);——————(代理人卷宗号15270);———————(代理人卷宗号15271);———————(代理人卷宗号15272);———————(代理人卷宗号15273);———————(代理人卷宗号15274);——————(代理人卷宗号15275);——————(代理人卷宗号15277);————————(代理人卷宗号15278);——————(代理人卷宗号15279);它们的全部公开被包含在此作为参考。

现在参考图1,显示了一个计算机系统,总体用附图标记100表示。计算机系统100使用硬件和软件结构和算法的组合来解决与上述现有技术关联的问题。计算机系统100包括文件系统102,它以一些“N/N+1故障终止集群”排列,这里,每一个故障终止集群在每一I/O节点106包含一个处理器,也称为文件服务器104,以及至少一个联机备用文件服务器104a。在一个优选的实现中,计算机100是巨型并行系统,而文件系统使用架子上安装的商用PC作为文件服务器104。

每一个文件服务器104,包括备用服务器104a,具有对两个或者更多存储设备108的直接访问。虽然图1显示了每一文件服务器104直接访问两个存储设备108,但是这种配置被显示为一种优选的实现,并不限制本发明的精神和范围。然而,如在下面要说明的,每一文件服务器104可以直接访问多于两个存储设备108。优选地,每一文件服务器104包括一个双通道SCSI控制器。在这种优选配置中,一个SCSI通道被指定为到存储设备108的“主”接口,另一个通道被设置在到第二存储设备108的热备份、或“故障终止”方式,准备如果用于存储设备108的主文件服务器104损坏的话则恢复文件系统接口。

每一文件服务器104包含一个“远程管理”接口。这种接口的一个例子是因特尔服务器上的“基本管理控制器”(BMC),它经由以太网或到每一文件服务器104的串行连接提供远程配置、启动、打开/关闭电源和监视文件服务器104的性能。此外,每一文件服务器104最好是具有诸如千兆位以太网连接的数据连接。这一连接通过多端口千兆位以太网交换机提供到计算机100的I/O节点106的接口。

存储设备108最好是热交换SCSI磁盘盒,每一个在标准架子上安装的框架中包括多个磁盘驱动器。优选地,磁盘盒包括一个多通道硬件RAID(可靠的廉价磁盘阵列)控制器、冗余电源和两个外部SCSI总线连接。硬件RAID控制器最好是把多个磁盘驱动器组成RAID“条带集”,并且支持几种条带集结构,从RAID-0(无保护的简单分条)到RAID-5(具有奇偶校验保护的块旋转分条)。更高级的RAID也可以由这个被称为“延伸”的硬件组织支持,这里多个RAID条组横跨更大的磁盘驱动器阵列一起组成条。它的一个例子是RAID-50,其中,两个或者多个RAID-5条组横跨一个较大的磁盘驱动器集群组成条。然而,优选RAID-5,是因为它能够提供所需要的可靠性而不产生RAID-50系统为它提供的可靠性的少量增加所引起的附加的复杂性和费用。

每一文件服务器104连接到两个或者更多个存储设备108,它们通过“双尾”SCSI互联存取,意味着它们的内部SCSI总线在每一端连接到一个不同的主机。在这些文件服务器104中的任何一个发生故障的情况下,具有到一个特别的存储设备108的直接互联的计算机I/O节点106对文件服务器节点110的一对一关系通过I/O节点106和其余的文件服务器节点110的协调得以维持。这种协调通过同时切换需要数目的文件服务器节点110从它们的主双尾连接(以实线表示)到它们的辅助连接(以虚线表示)来实现。

在下面的例子中会看到,取决于哪一个文件服务器发生了故障,从零到剩余文件服务器节点的数目减1的任何一个(110)都将切换、亦即故障切换到它们的辅助连接。平均说,需要切换一半的文件服务器节点110。以这种方式,每一存储设备108将继续有一个与其对应的工作的文件服务器104。与文件服务器110的故障终止的同时,计算机I/O节点106还通过切换它们用来对一个特别的文件系统执行I/O的文件服务器104,来切换它们的逻辑连接到特定的存储设备108。如图2所示,在文件服务器104b发生故障时,到备份文件服务器104a的辅助连接成为主连接,并且存储设备108a切换它与发生故障的文件服务器104b的主连接。本领域技术人员将会认识到,性能(带宽)不会有损失,并且假定从计算机I/O节点产生的负载相等,则在每一文件服务器104上的负载相等。本领域技术人员还将会认识到,整个故障终止方法相对于总性能和I/O连接性来说对应用程序是透明的。这是因为计算机I/O节点106透明地维持对每一存储设备108的直接连接和在任何故障出现时以协调方式改变连接方向。

现在参考图3,图中显示了本发明的文件系统102的一个例子,它具有4(N)个存储设备108和5(N+1)个文件服务器104。优选地,每一文件服务器104是PC,而每一存储设备108是独立的RAID-5单元。I/O存储设备108的数目与I/O节点106的数目匹配。每一存储设备108有两个外部SCSI总线连接,这在上面已说明。一个SCSI连接连接到一个主文件服务器104,另一个连接到一个不同的辅助文件服务器104。于是中间文件服务器104用作用于一个存储设备108的主文件服务器104,和用于另一个存储设备108的辅助文件服务器104。只有主文件服务器104有效地服务于存储设备108,但是如果主文件服务器发生故障,则辅助文件服务器104a将接管。这样,文件服务器104在存储设备108的SCSI或其它磁盘协议和I/O节点106的以太网或者其它组网协议之间可靠转换。如果要使用4(N)个文件服务器104,在这4个文件服务器104中有一个损坏时,则它的辅助文件服务器104将继续用作用于另一个存储设备108的主文件服务器104。这样对受影响的存储设备108的性能可能减少二分之一。为避免这种性能的降低,如上所述,使用“N/N+1故障终止集群”方案,这里N是存储设备108的数目,N+1是文件服务器104的数目。

假定N=4,4/5故障终止集群的存储设备108和文件服务器104如图3所示布置,其中实线指示用于每一存储设备108的主连接,而虚线指示用于每一存储设备108的辅助连接。在所有的主文件服务器104工作正常时,有效的文件服务器如图4所示。如果最左边的文件服务器104b发生故障,则使用辅助文件服务器104,如图5所示。如果中间文件服务器104b发生故障,则连接如图6所示。

如同上面的例子表示的,对于每一个存储设备108,它到文件服务器104的SCSI连接只有一个是有效的。如果一个文件服务器104b发生故障,则它的相应存储设备108切换到另一个文件服务器104。如果该文件服务器104正服务于另一个存储设备108,则该服务转移到相邻的文件服务器104。它的邻居也这样做,如果需要的话,导致每一个文件服务器104只服务于单个存储设备108。这样,一个文件服务器104的故障,取决于它在N/N+1故障终止集群中的位置,引起在1个和N个存储设备108之间移动到不同的文件服务器104。这样,这种文件服务器104的任何I/O节点106必须使用一个不同的文件服务器104。

本领域技术人员将会了解,可以根据本发明配置文件系统102,其中每一存储设备108连接到多于两个的文件服务器104,例如连接到三个文件服务器104,一个主文件服务器和两个辅助文件服务器。本领域技术人员将会理解,如果在这种配置中一个文件服务器104发生故障,则它的相应存储设备108可以切换到另一个文件服务器104,并且在剩余的存储设备108中间引起最小量的切换。

本发明的方法特别适合由计算机软件程序执行,这种计算机软件程序最好是包含相应于该方法单个步骤的模块。这种软件当然可以包含在计算机可读介质、诸如集成芯片或外围设备中。

虽然已经显示和说明了被认为是本发明的优选实施例,但是当然应该理解,在形式和细节上可以容易地进行各种修改和改变,而不离开本发明的精神。因此意图不把本发明限制在所描述和说明的精确形式上,而应该理解为覆盖可能落在附加权利要求的范围之内的所有修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号