一种分布式存储系统的故障恢复方法、系统及相关组件技术方案

技术编号:19821267 阅读:18 留言:0更新日期:2018-12-19 14:31
本申请公开了一种分布式存储系统的故障恢复方法,所述故障恢复方法包括当检测到节点故障信息时,利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作为每一个所述正常节点分配一一对应的虚拟IP地址;查询所述集群内的客户端信息表,并根据查询结果将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点;控制每一所述目标节点向对应的客户端发送TCP重连信号,以便恢复业务连接。本方法能够可以在业务节点出现故障后快速实现故障恢复,提高分布式存储系统的稳定性。本申请还公开了一种分布式存储系统的故障恢复系统、一种计算机可读存储介质及一种电子设备,具有以上有益效果。

【技术实现步骤摘要】
一种分布式存储系统的故障恢复方法、系统及相关组件
本专利技术涉及数据存储
,特别涉及一种分布式存储系统的故障恢复方法、系统、一种计算机可读存储介质及一种电子设备。
技术介绍
分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。CTDB是一个集群TDB数据库,可以被Samba或者其他的应用使用来存储数据。CTDB有一套虚拟IP机制,可以让集群在某个节点故障后,业务IP从一个节点飘到另外一个节点,业务可自动恢复。在现有技术中,客户端与集群的连接中断后,再次连接耗费的时间较长,原因是TCP连接的重连的超时时间算法是指数退避算法,即如果对端IP连接不上,会尝试重连,但是重连的间隔会越来越长,时间依次是1s、3s、6s、12s、24s、48s、64s、64s。这样,如果在客户端在某时刻A发送一次重连信号,但是集群虚拟IP还未漂移完成,则客户端在A+24s时刻才会再次发送重连信号,而如果集群在A+5s时刻已经漂移完了IP,但是仍然需要等待24s-5s=19s的时间,导致整个业务中断时间较长。因此,如何在业务节点出现故障后快速实现故障恢复,提高分布式存储系统的稳定性是本领域技术人员目前需要解决的技术问题。
技术实现思路
本申请的目的是提供一种分布式存储系统的故障恢复方法、系统、一种计算机可读存储介质及一种电子设备,能够在业务节点出现故障后快速实现故障恢复,提高分布式存储系统的稳定性。为解决上述技术问题,本申请提供一种分布式存储系统的故障恢复方法,该故障恢复方法包括:当检测到节点故障信息时,利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作为每一个所述正常节点分配一一对应的虚拟IP地址;查询所述集群内的客户端信息表,并根据查询结果将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点;控制每一所述目标节点向对应的客户端发送TCP重连信号,以便恢复业务连接。可选的,在利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作之前,还包括:根据所述节点故障信息确定故障节点,并判断所述故障节点是否为主节点;若是,则从所有所述正常节点中重新选举所述主节点。可选的,在将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点之后,还包括:控制所有所述目标节点向集群内的所有所述正常节点发送ARP广播,以使所有所述正常节点更新ARP表;其中,所述ARP表存储有虚拟IP地址与MAC地址的对应关系。可选的,还包括:当接收到信息发送指令时,根据所述信息发送指令确定目标虚拟IP地址;根据所述ARP表查询所述目标虚拟IP地址对应的MAC地址,并将所述信息发送指令对应的信息发送至所述MAC地址。可选的,将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点包括:根据所述客户端信息表查询每一所述虚拟IP地址是否连接客户端;若是,则将所述虚拟IP地址对应的正常节点设置为目标节点。可选的,还包括:按照预设周期接收所述集群内所有节点发送的客户端信息,根据所述客户端信息更新所述客户端信息表。可选的,所述业务节点为运行有CTDB服务的节点。本申请还提供了一种分布式存储系统的故障恢复系统,该系统包括:IP重分配模块,用于当检测到节点故障信息时,利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作为每一个所述正常节点分配一一对应的虚拟IP地址;目标节点确定模块,用于查询所述集群内的客户端信息表,并根据查询结果将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点;重连模块,用于控制每一所述目标节点向对应的客户端发送TCP重连信号,以便恢复业务连接。本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述分布式存储系统的故障恢复方法执行的步骤。本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述分布式存储系统的故障恢复方法执行的步骤。本专利技术提供了一种分布式存储系统的故障恢复方法,包括当检测到节点故障信息时,利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作为每一个所述正常节点分配一一对应的虚拟IP地址;查询所述集群内的客户端信息表,并根据查询结果将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点;控制每一所述目标节点向对应的客户端发送TCP重连信号,以便恢复业务连接。本申请在出现节点故障之后,为所有的正常节点分配虚拟IP地址,由于客户端信息表存储在集群内,因此本申请可以查询虚拟IP地址是否已经连接有客户端,并将主动向连接有虚拟IP地址的客户端发送TCP重连信号。由于本申请的恢复业务连接的操作是在虚拟IP地址分配后目标节点主动执行的,因此无需被动等待客户端的重连信号。故本申请可以在业务节点出现故障后快速实现故障恢复,提高分布式存储系统的稳定性。本申请同时还提供了一种分布式存储系统的故障恢复系统、一种计算机可读存储介质和一种电子设备,具有上述有益效果,在此不再赘述。附图说明为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例所提供的一种分布式存储系统的故障恢复方法的流程图;图2为本申请实施例所提供的另一种分布式存储系统的故障恢复方法的流程图;图3为本申请实施例所提供的一种分布式存储系统的故障恢复系统的结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。下面请参见图1,图1为本申请实施例所提供的一种分布式存储系统的故障恢复方法的流程图。具体步骤可以包括:S101:当检测到节点故障信息时,利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作为每一个所述正常节点分配一一对应的虚拟IP地址;其中,本实施例默认是在分布式存储系统中实施的,分布式存储系统中存在有多个节点,当检测到节点故障信息时说明分布式存储系统中的某一节点出现故障,故障节点无法与客户端建立正常的业务连接,为了保证业务的正常运行,需要恢复客户端与分布式存储系统的业务连接。需要说明的是,在分布式存储系统中各个节点的虚拟IP地址分配都需要通过主节点来执行。当故障节点为主节点时需要在集群中确定新的主节点,再利用新的主节点来分配虚拟IP地址。进行集群IP重分配的方法理由很多,作为一种优选的实施方式,可以利用CTDB服务自带的集群IP重分配功能来实现虚拟IP的重新分配。举例说明CTDB服务的集群I本文档来自技高网...

【技术保护点】
1.一种分布式存储系统的故障恢复方法,其特征在于,包括:当检测到节点故障信息时,利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作为每一个所述正常节点分配一一对应的虚拟IP地址;查询所述集群内的客户端信息表,并根据查询结果将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点;控制每一所述目标节点向对应的客户端发送TCP重连信号,以便恢复业务连接。

【技术特征摘要】
1.一种分布式存储系统的故障恢复方法,其特征在于,包括:当检测到节点故障信息时,利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作为每一个所述正常节点分配一一对应的虚拟IP地址;查询所述集群内的客户端信息表,并根据查询结果将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点;控制每一所述目标节点向对应的客户端发送TCP重连信号,以便恢复业务连接。2.根据权利要求1所述故障恢复方法,其特征在于,在利用所述主节点对集群内所有正常节点进行集群IP地址重分配操作之前,还包括:根据所述节点故障信息确定故障节点,并判断所述故障节点是否为主节点;若是,则从所有所述正常节点中重新选举所述主节点。3.根据权利要求1所述故障恢复方法,其特征在于,在将连接有客户端的所述虚拟IP地址对应的正常节点设置为目标节点之后,还包括:控制所有所述目标节点向集群内的所有所述正常节点发送ARP广播,以使所有所述正常节点更新ARP表;其中,所述ARP表存储有虚拟IP地址与MAC地址的对应关系。4.根据权利要求3所述故障恢复方法,其特征在于,还包括:当接收到信息发送指令时,根据所述信息发送指令确定目标虚拟IP地址;根据所述ARP表查询所述目标虚拟IP地址对应的MAC地址,并将所述信息发送指令对应的信息发送至所述MAC地址。5.根据权利要求1所述故障恢复方法,其特征在于,将连接有客...

【专利技术属性】
技术研发人员:丁瑞锋
申请(专利权)人:广东浪潮大数据研究有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1