存储服务器和存储服务器系统的制作方法

文档序号:16200329发布日期:2018-12-08 06:33阅读:219来源:国知局
存储服务器和存储服务器系统的制作方法

本发明涉及互联网数据存储领域,具体涉及一种存储服务器和存储服务器系统。

背景技术

随着互联网技术的高速发展,数据量越来越大,网络云服务商对大容量存储服务器的需求也日益增加。现在主流的存储服务器,在4u服务器里可以集成超过30个磁盘,甚至已经有厂家提供100个左右磁盘的4u服务器,以常见的36块磁盘,单个磁盘8tb的存储服务器为例,单服务器数据存储容量为288tb。云计算服务商对成千上万的客户提供数据存储服务,虽然服务器及磁盘的故障机率很小,但是在单服务器具有非常高的数据量和服务器数量非常巨大的情况下,一旦有服务器故障,客户的损失是非常巨大的。

一种现有技术提出的服务器系统包括工作服务器、备用服务器和存储设备,该系统通过在工作服务器端执行的数据访问、缓存监视和数据复制进程,在备用服务器端执行缓存接收、缓存清理进程。

另一种现有技术实现了一种全冗余架构存储系统,采用全冗余架构,部署支持异构阵列高可用的双存储阵列与双存储网关,形成管理节点与存储节点双冗余,存储网络部署双交换机构成冗余链路,进而实现了系统级全冗余架构。

但是现有技术存在无法弥补的缺陷,第一种现有技术增加了一台服务器实际上是资源冗余的,加大了系统的硬件成本;第二种现有技术是较大规模的多服务器集群,通过光纤交换机实现服务器连接,并且通过额外的存储网关管理,该技术为集群级的设计,系统复杂度很高,在很多应用场景并不适用,此外在设计中,还有存储网关的开销,更加大了系统复杂度和成本的开销。



技术实现要素:

为了解决上述问题。本发明提供一种存储服务器和存储服务器系统。

根据本发明的第一方面提供了一种存储服务器,该服务器包括:计算节点、存储交换装置、存储模块和至少两个外部端口;其中,计算节点用于通过存储交换装置与存储模块建立通信连接;存储模块用于为计算节点的业务数据提供存储空间;至少两个外部端口的其中一个设置在计算节点上,用于使计算节点通过外部端口访问其他服务器的业务数据,至少两个外部端口的另一个设置在存储交换装置上,用于使存储交换装置接收来自其他服务器的访问;存储交换装置用于根据计算节点的工作状态,配置对存储模块的通信连接,使存储模块被计算节点或其他服务器访问。

进一步地,对所述存储模块的所述通信连接进一步包括正常连接和备份连接,其中,当所述通信连接被配置为所述正常连接时,所述存储模块仅可被所述计算节点访问,当所述访问连接被配置为所述备份连接时,所述存储模块仅可被所述其他服务器访问。

进一步地,所述外部端口是数据总线端口。

进一步地,所述存储模块包括一个或多个持久化存储介质。

根据本发明的第二方面,提供一种存储服务器系统,包括:至少两个如第一方面所述的存储服务器;第一存储服务器包括,第一计算节点、第一存储交换装置、第一存储模块和至少两个第一外部端口;第二存储服务器包括,第二计算节点、第二存储交换装置、第二存储模块和至少两个第二外部端口;所述第一存储服务器和所述第二存储服务器分别为所述存储服务器中的一个;其中,所述第一计算节点通过所述第一计算节点上的第一外部端口与所述第二存储交换装置通信;所述第一存储交换装置通过所述第一存储交换装置上的第一外部端口与所述第二计算节点通信;所述第二计算节点通过所述第二计算节点上的第二外部端口与所述第一存储交换装置通信;所述第二存储交换装置通过所述第二存储交换装置上的第二外部端口与所述第一计算节点通信。

进一步地,所述第一计算节点通过所述第一计算节点上的第一外部端口和所述第二存储交换装置上的第二外部端口与所述第二存储交换装置连接,用于经由所述第二存储交换装置与所述第二存储模块建立通信连接;所述第二存储模块用于配置对所述第二存储模块的所述通信连接,使所述第二存储模块被所述第二计算节点或所述第一计算节点访问,其中,所述通信连接进一步包括正常连接和备份连接,其中,当所述通信连接被配置为所述正常连接时,所述第二存储模块仅可被所述第二计算节点访问,当所述访问连接被配置为所述备份连接时,所述第二存储模块仅可被所述第一计算节点访问。

进一步地,所述第二计算节点通过所述第二计算节点上的第二外部端口和所述第一存储交换装置上的第一外部端口与所述第一存储交换装置连接,用于经由所述第一存储交换装置与所述第一存储模块建立通信连接;所述第一存储模块用于配置对所述第一存储模块的所述通信连接,使所述第一存储模块被所述第一计算节点或所述第二计算节点访问,其中,所述通信连接进一步包括正常连接和备份连接,其中,当所述通信连接被配置为所述正常连接时,所述第一存储模块仅可被所述第一计算节点访问,当所述访问连接被配置为所述备份连接时,所述第一存储模块仅可被所述第二计算节点访问。

根据本发明的第三方面,还提供一种存储服务器系统,所述存储服务器系统包括至少两个第一方面所述的存储服务器,以及外部存储交换装置;每个所述存储服务器通过外部端口与所述外部存储交换装置连接,并经由所述外部存储交换装置与其他所述存储服务器连接。

进一步地,所述外部存储交换装置用于根据所述存储服务器的工作状态,为每个所述存储服务器配置对自身以外其他所述存储服务器的存储模块的通信连接,使每个所述存储服务器的所述存储模块可以被任一其他所述存储服务器的计算节点访问。

进一步地,所述外部存储交换装置用于当一个或多个所述存储服务器的所述工作状态为不可用时,为不可用的所述存储服务器配置与一个所述工作状态为可用的所述存储服务器的通信连接,使得一个或多个不可用的所述存储服务器的所述存储模块可被可用的所述存储服务器的所述计算节点访问。

本发明实施方式与现有技术相比,主要区别及其效果在于:

本发明实施例的存储服务器以较少的硬件成本,对外提供额外的存储访问接口,通过额外访问接口的方式,即使计算节点故障,也可以通过其他相关联的服务器访问此服务器的存储数据,因此通过计算节点的互备份机制,以低成本实现了系统的冗余,提高了存储服务器系统的可用性。

附图说明

图1示出了根据本发明实施例的存储服务器的结构示意图。

图2示出了根据本发明实施例的存储交换装置的连接配置示意图。

图3示出了根据本发明实施例的存储服务器系统的结构示意图。

图4示出了根据本发明另一实施例的存储服务器系统的结构示意图

具体实施方式

为使本发明实施例的目的和技术方案更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

第一实施例

图1示出了根据本发明实施例的存储服务器100的结构框图。

如图1所示,存储服务器100包括:计算节点110、存储交换机120、存储模块130和外部端口141-142;存储模块130包括一个或多个持久性存储盘;外部端口141设置在计算节点110上,外部端口142设置在存储交换机120上。

根据本发明的一个实施例,服务器可以是物理机和/或运行在物理机上的虚拟机,其中,上述物理机包括但不限于:微型机、小型机、中型机、大型机、巨型机或其他能够部署网站的物理设备。

根据本发明的实施例,计算节点110通过存储交换机120与存储模块130建立通信连接;存储模块130用于为计算节点110的业务数据提供存储空间;计算节点110可通过外部端口141访问其他服务器的业务数据;存储交换机120通过外部端口142接收外部其他服务器的访问。

作为一个示例,计算节点110可以是把处理器、内存、系统存储盘以及网络等服务器必须的部件当做一个整体的计算机系统。存储模块130的各个持久化存储介质用于存储计算节点110的业务数据,例如,在计算节点110上运行的应用程序、用户的数据资料等。其中持久化存储介质可以是如一个或者多个磁性存储装置、存储盘、闪存、或者其他非易失性固态存储器,例如,硬盘驱动器(harddiskdriver,简称hdd)或固态硬盘(solidstatedisk,简称ssd)。

图1-4所示的存储服务器及系统中各模块的连接为逻辑连接,物理连接图未示出。可以理解,计算节点与存储交换机、存储模块可以通过背板、线缆连接等方式建立图中所示的通信通道。

计算节点110通过外部端口141向外部发送访问请求,存储交换机120通过外部端口142接收外部其他服务器的访问,因此,外部端口141可设置为host端口,外部端口142可设置为client端口。此外,外部端口141-142可以采用高速数据总线标准的相应端口,例如,高速外设组件互连标准(peripheralcomponentinterconnectexpress,简称为pcie)和序列式scsi(serialattachedscsi,简称sas)的端口。其中,sas是新一代的scsi技术,和现在流行的serialata(sata)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部空间等。sas提供与sata硬盘的兼容性,sas的接口技术可以向下兼容sata。应理解,上述pcie和sas只是本发明实施例采用的高速数据交换网络的一种可能实现方式,本发明实施例对此不作限制。例如,在实际应用中也可以采用光纤通道网络作为高速数据交换网络。

存储交换机120用于配置对存储模块130的通信连接,使存储模块130被计算节点110或外部其他服务器访问。存储交换机120可以是具有交换功能的pcie交换机、sas交换机、sas扩展类芯片或是可编程处理器(例如现场可编程门阵列(fpga),复杂可编程逻辑设备)、专用集成电路(asic)等。

图2示出了存储交换机120的连接配置示意图。存储交换机120对存储模块的连接配置包括如图2a所示的正常连接和如图2b所示的备份连接。参考图1和图2a,当通信连接为正常连接时,只有计算节点110可以访问存储模块130的各个数据存储盘;当通信连接为备份连接时,参考图2b,只有外部的其他服务器可以访问存储模块130的各个数据存储盘。

存储交换机120可以根据计算节点110的工作状态配置上述正常连接或备份连接。计算节点110的工作状态可分为可用和不可用,可以理解,该工作状态可根据实际应用进行多样化的配置,本发明实施例对此不作限制。作为一个示例,当计算节点110的工作状态为可用时,存储交换机120被配置为正常连接;当计算节点110的工作状态为不可用时,存储交换机120被配置为备份连接。

综上所述,本实施例提供的存储服务器,通过存储交换机和外部端口,使得其他服务器能够通过外部端口绕开本服务器的故障计算节点直接访问数据存储盘,优化了服务器的可用性。相比于通过诸如双服务器、双计算节点等的资源冗余的服务器技术,本实施例提供的存储服务器在取得高可用性的同时,降低了服务器的硬件成本。

第二实施例

针对本发明的提供的存储服务器,本发明还提供了一种存储服务器系统,该系统为多个存储服务器的组网方案。图3示出了根据本发明实施例的存储服务器系统的结构示意图。如图3所示,该系统包括至少两个上述存储服务器;第一存储服务器300包括,第一计算节点310、第一存储交换机320、第一存储模块330和至少两个第一外部端口341-342;第二存储服务器400包括,第二计算节点410、第二存储交换机420、第二存储模块430和至少两个第二外部端口441-442;第一存储服务器300和第二存储服务器400分别为上述第一实施例中存储服务器中的一个。

需要说明的是,第一存储服务器300和第二存储服务器400对应于上述存储服务器,因此,第一存储服务器300和第二存储服务器400中各模块与上述第一实施例一致,此处省略对这些模块的功能、动作以及过程的描述。

第一计算节点310通过第一计算节点310上的第一外部端口341与第二存储交换机420通信;第一存储交换机320通过第一存储交换机320上的第一外部端口342与第二计算节点410通信;第二计算节点410通过第二计算节点410上的第二外部端口441与第一存储交换机320通信;第二存储交换机420通过第二存储交换机420上的第二外部端口442与第一计算节点310通信。

具体地,如图3所示,第一外部端口341与第二外部端口442对接,使得第一计算节点310与第二存储交换机420连接,进而第一计算节点310可通过第二存储交换机420访问第二存储模块430;此外,第一外部端口342与第二外部端口441对接,使得第二计算节点410与第一存储交换机320连接,进而第二计算节点410可通过第一存储交换机320访问第一存储模块330。

进一步地,当存储服务器系统运行时,属于一组互备份服务器组的第一存储服务器300和第二存储服务器400的工作状态会被监控,当监测到第一存储服务器300的第一计算节点310处于不可用状态,而第二存储服务器400工作正常时,第二存储服务器400可以接管第一存储服务器300的数据存储盘。参考上述图2b,第二存储服务器400在收到接管指令后,配置第一存储服务器300的第一存储交换机320从正常连接修改为备份连接,第二存储服务器400的第二计算节点410接管第一存储服务器300服务器的第一存储模块330中的所有数据存储盘访问接口,在第二存储服务器400数据通路配置完毕后,第二存储服务器400开始访问第一存储服务器300的数据存储盘。当第一存储服务器300经过运维操作恢复工作后,监测到第一存储服务器300的第一计算节点310处于可用状态,则通知第二存储服务器400放弃第一存储服务器300的接管权限。第二存储服务器400接收到指令后,不再接收对第一存储服务器300的存储盘访问请求,处理完当前所有第一存储服务器300相关的请求后,修改第一存储服务器300的第一存储交换机320的配置为正常模式,交出对第一存储服务器300的存储模块330的数据存储盘的访问权限。第一存储服务器300恢复正常访问。

综上所述,本发明的存储服务器系统以较少的硬件成本,对外提供额外的存储盘访问接口,通过额外访问接口的方式,即使计算节点故障,也可以通过其他相关联的服务器访问此服务的存储盘数据,因此通过计算节点的互备份机制,以低成本实现了系统的冗余,提高了存储服务器系统的可用性。

第三实施例

针对本发明的提供的存储服务器,本发明还提供了另一种存储服务器系统,该系统为多个存储服务器的组网方案。图4示出了根据本发明另一实施例的存储服务器系统的结构示意图。如图4所示,该系统包括两个以上如第一实施例所述的存储服务器510-540,和外部存储交换机550。需要说明的是图4中存储服务器的个数仅为举例说明,并非具体限制,例如,在实际应用中可以是n(n>2)个存储服务器作为互备份的存储服务器系统。

需要说明的是,存储服务器510-540对应于前述实施例的存储服务器,因此,此处省略对这些存储服务器中模块的功能、动作以及过程的描述。

如图4所示,存储服务器510-540中的每一个通过外部端口与外部存储交换机550连接,并经由外部存储交换机550实现与系统中的其他存储服务器的连接;外部存储交换机550用于配置存储服务器510-540中的每一个对其他存储服务器的存储模块的通信连接,使存储服务器510-540中的每一个的存储模块可被系统中任一其他存储服务器的计算节点访问。

具体地,对于由n个存储服务器a1、a2、…、an组成的系统,这里参考图4,假定n=4,即,存储服务器a1-a4对应于图4中的服务器510-540。每个服务器的外部端口都与外部存储交换机550相连。

当监测到系统中任意服务器ai的计算节点处于不可用状态,而其他服务器中一服务器aj工作正常,服务器aj可以接管ai的数据存储盘;在服务器aj收到接管指令后,配置外部存储交换机550,使服务器aj的host端口与服务器ai的client端口连接,然后配置服务器ai的存储交换机从正常连接修改为如图2所示的备份连接,接管服务器ai的所有数据存储盘访问接口;在服务器aj数据通路配置完毕后,aj开始访问服务器ai的数据存储盘。当服务器ai经过运维操作恢复工作后,监测到服务器ai的计算节点处于可用状态,则通知服务器aj放弃对服务器ai的接管权限;服务器aj接收到指令后,不再接收对服务器ai的存储盘访问请求,处理完当前所有与服务器ai相关的请求后,修改服务器ai的存储交换机的配置为正常模式,交出对服务器ai数据存储盘的访问权限,服务器ai恢复正常访问。作为一个示例,外部存储交换机的配置会在下一次其他服务器连接时重新配置。作为另一个示例,在极端情况下,当系统中只有一台服务器可用时,外部存储交换机根据用户的业务请求,可以配置该可用服务器对其他一个或多个不可用服务器的通信连接,使得一个或多个不可用的存储服务器的存储模块可被该可用的存储服务器的计算节点访问。因此,在n个服务器相互连接的情况下,存储盘组可访问的故障率可以降低到1/n。

外部存储交换机550可以是包括计算节点和存储交换机的小型交换服务器,例如是移除存储服务器中的存储模块后的服务器。外部存储交换机550中可以根据需要设置一个或多个如第一实施例中所描述的存储交换机,在此省略对该存储交换机的描述。

综上所述,本发明的存储服务器系统以较少的硬件成本,对外提供额外的存储盘访问接口,通过额外访问接口的方式,即使计算节点故障,也可以通过其他相关联的服务器访问此服务的存储盘数据,因此通过计算节点的互备份机制,以低成本实现了系统的冗余,提高了存储服务器系统的可用性。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的第一终端设备来实现。在列举了若干终端设备的单元权利要求中,这些终端设备中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

尽管本文已公开了各种方面和实施例,但其它方面和实施例对于本领域技术人员而言将是明显的。本文公开的各种方面和实施例是为了说明的目的,而不意在进行限制,真实的范围应当由所附权利要求以及这样的权利要求所被授权的等效物的全部范围指示。还要理解,本文中使用的术语仅是为了描述特定实施例的目的,而不意在进行限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1