集群节点故障业务快速恢复方法、装置、设备及存储介质与流程

文档序号:16207721发布日期:2018-12-08 07:19阅读:292来源:国知局
集群节点故障业务快速恢复方法、装置、设备及存储介质与流程

本发明涉及分布式存储技术领域,特别是涉及一种集群节点故障业务快速恢复方法、装置、设备及存储介质。

背景技术

目前,轻量级集群数据库(clusteredtrivialdatabase,简称ctdb)是一套集群高可用管理软件,负责监控集群节点状态和虚拟ip的分配,在集群中的节点发生故障时ctdb主节点会执行故障切换,包括:数据库恢复和虚拟ip重新分配,发生故障切换时ctdb的状态会变为active;数据库恢复流程包括:冻结数据库、从所有节点收集数据库记录、在本地合并数据库记录保证每条记录都是最新的、所有节点删除数据库、将合并后的记录推送到所有节点,该流程耗时约4秒,如果某个流程失败会数据库恢复时间会更长;在不使用samba服务时,其他网络文件系统比如ganesha集群高可用方案,只需要用到虚拟ip漂移,即虚拟ip完成漂移,业务相应的转到其他节点继续提供服务,虚拟ip漂移流程总耗时约2秒。

数据库恢复流程在虚拟ip分配之前,且只有数据库恢复流程执行成功才会进行虚拟ip的重新分配,ctdb属于samba的一个组件,其数据库主要保存samba服务相关的信息,与samba的耦合性较高,ctdb可剥离出作为单独的集群高可用软件,用于管理除samba之外的其他服务,例如ganesha等,负责管理ganesha的启动停止等等,在不用samba服务时节点故障ctdb执行故障恢复动作仍然会首先执行数据库恢复,数据库恢复成功之后再进行虚拟ip的重新分配,如此数据库恢复和虚拟ip分配增大了故障切换时间,一般总耗时约6秒,时间较长。

因此,如何缩短集群节点故障恢复时间,是本领域技术人员亟待解决的技术问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种集群节点故障业务快速恢复方法、装置、设备及存储介质,可以将ctdb故障切换恢复时间缩短为2秒,提高分布式存储集群稳定性和高可用特性。其具体方案如下:

一种集群节点故障业务快速恢复方法,包括:

添加数据库恢复开关;

当ctdb集群有节点故障时,判断所述数据库恢复开关是否开启;

若是,则更改ctdb状态为活跃状态,执行数据库恢复流程,所述数据库恢复流程执行成功后再进行虚拟ip的重新分配;

若否,则保持ctdb状态为正常状态,跳过所述数据库恢复流程,直接进行所述虚拟ip的重新分配。

优选地,在本发明实施例提供的上述集群节点故障业务快速恢复方法中,

所述数据库恢复开关在使用samba的高可用集群中为开启状态;

所述数据库恢复开关在不使用samba的高可用集群中为关闭状态。

本发明实施例还提供了一种集群节点故障业务快速恢复装置,包括:

开关添加模块,用于添加数据库恢复开关;

开关判断模块,用于当ctdb集群有节点故障时,判断所述数据库恢复开关是否开启;

第一执行模块,用于若所述数据库恢复开关为开启状态,则更改ctdb状态为活跃状态,执行数据库恢复流程,所述数据库恢复流程执行成功后再进行虚拟ip的重新分配;

第二执行模块,用于若所述数据库恢复开关为关闭状态,则保持ctdb状态为正常状态,跳过所述数据库恢复流程,直接进行所述虚拟ip的重新分配。

优选地,在本发明实施例提供的上述集群节点故障业务快速恢复装置中,

所述数据库恢复开关在使用samba的高可用集群中为开启状态;

所述数据库恢复开关在不使用samba的高可用集群中为关闭状态。

本发明实施例还提供了一种集群节点故障业务快速恢复设备,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的计算机程序时实现如本发明实施例提供的上述集群节点故障业务快速恢复方法。

本发明实施例还提供了一种计算机可读存储介质,用于存储计算机程序,其中,所述计算机程序被处理器执行时实现如本发明实施例提供的上述集群节点故障业务快速恢复方法。

本发明所提供的一种集群节点故障业务快速恢复方法、装置、设备及存储介质,该方法包括:添加数据库恢复开关;当ctdb集群有节点故障时,判断所述数据库恢复开关是否开启;若是,则更改ctdb状态为活跃状态,执行数据库恢复流程,所述数据库恢复流程执行成功后再进行虚拟ip的重新分配;若否,则保持ctdb状态为正常状态,跳过所述数据库恢复流程,直接进行所述虚拟ip的重新分配。本发明通过添加数据库恢复开关,增加灵活性,跳过节点故障ctdb的数据库恢复流程,并保持ctdb状态为正常状态,只保留虚拟ip分配流程,将ctdb故障切换恢复时间由6秒缩短到2秒,缩短了4秒,缩短了集群节点故障恢复时间,提高了分布式存储集群稳定性和高可用特性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的集群节点故障业务快速恢复方法的流程图;

图2为本发明实施例提供的集群节点故障业务快速恢复装置的结构示意图。

具体实施方式

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

本发明提供一种集群节点故障业务快速恢复方法,如图1所示,包括以下步骤:

s101、添加数据库恢复开关;

s102、当ctdb集群有节点故障时,判断所述数据库恢复开关是否开启;

若是,则执行步骤s103;若否,则执行步骤s104;

s103、更改ctdb状态为活跃(active)状态,执行数据库恢复流程;

s104、保持ctdb状态为正常(normal)状态,跳过数据库恢复流程;

在执行步骤s103或步骤s104之后,执行步骤s105;

s105、进行虚拟ip的重新分配。

在本发明实施例提供的上述集群节点故障业务快速恢复方法中,通过添加数据库恢复开关,增加特性灵活性,当开关关闭时跳过节点故障ctdb的数据库恢复流程,并保持ctdb状态为正常状态,只保留虚拟ip分配流程,将ctdb故障切换恢复时间由6秒缩短到2秒,缩短了4秒,缩短了集群节点故障恢复时间,提高了分布式存储集群稳定性和高可用特性。

进一步地,在具体实施时,在本发明实施例提供的上述集群节点故障业务快速恢复方法中,所述数据库恢复开关在使用samba的高可用集群中为开启状态;所述数据库恢复开关在不使用samba的高可用集群中为关闭状态。具体地,在使用samba网络文件系统的应用场景中,保证了ctdb原有故障恢复流程,包括数据库流程和虚拟ip分配流程;而在不使用samba网络文件系统的应用场景中,跳过了数据库恢复流程,只保留虚拟ip分配流程,降低ctdb作为通用分布式高可用集群工具与samba的高耦合性,最重要的是缩短了分布式高可用集群节点故障时故障恢复时间,提高了分布式存储集群稳定性和高可用特性,提高存储产品的竞争力。

基于同一发明构思,本发明实施例还提供了一种集群节点故障业务快速恢复装置,由于该集群节点故障业务快速恢复装置解决问题的原理与前述一种集群节点故障业务快速恢复方法相似,因此该集群节点故障业务快速恢复装置的实施可以参见集群节点故障业务快速恢复方法的实施,重复之处不再赘述。

在具体实施时,本发明实施例提供的集群节点故障业务快速恢复装置,如图2所示,具体包括:

开关添加模块11,用于添加数据库恢复开关;

开关判断模块12,用于当ctdb集群有节点故障时,判断所述数据库恢复开关是否开启;

第一执行模块13,用于若所述数据库恢复开关为开启状态,则更改ctdb状态为活跃状态,执行数据库恢复流程,所述数据库恢复流程执行成功后再进行虚拟ip的重新分配;

第二执行模块14,用于若所述数据库恢复开关为关闭状态,则保持ctdb状态为正常状态,跳过所述数据库恢复流程,直接进行所述虚拟ip的重新分配。

在本发明实施例提供的上述集群节点故障业务快速恢复装置中,可以通过上述四个模块的相互作用,通过判断开关的开启和关闭来决定是否需要执行数据库恢复和更改ctdb的状态,当开关关闭时通过跳过数据库恢复等流程,只保留虚拟ip分配流程,明显缩短故障恢复时间,大大提高了集群稳定性和高可用特性。

进一步地,在具体实施时,在本发明实施例提供的上述集群节点故障业务快速恢复装置中,所述数据库恢复开关在使用samba的高可用集群中为开启状态;所述数据库恢复开关在不使用samba的高可用集群中为关闭状态。具体地,在使用samba网络文件系统的应用场景中,保证了ctdb原有故障恢复流程,而在不使用samba网络文件系统的应用场景中,跳过了数据库恢复流程,只保留虚拟ip分配流程,降低ctdb作为通用分布式高可用集群工具与samba的高耦合性,最重要的是缩短了分布式高可用集群节点故障时故障恢复时间,提高了分布式存储集群稳定性和高可用特性,提高存储产品的竞争力。

相应的,本发明实施例还公开了一种集群节点故障业务快速恢复设备,包括处理器和存储器;其中,处理器执行存储器中保存的计算机程序时实现前述实施例公开的集群节点故障业务快速恢复方法。

关于上述方法更加具体的过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

进一步的,本发明还公开了一种计算机可读存储介质,用于存储计算机程序;计算机程序被处理器执行时实现前述公开的集群节点故障业务快速恢复方法。

关于上述方法更加具体的过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备、存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

本发明实施例提供的一种集群节点故障业务快速恢复方法、装置、设备及存储介质,该方法包括:添加数据库恢复开关;当ctdb集群有节点故障时,判断所述数据库恢复开关是否开启;若是,则更改ctdb状态为活跃状态,执行数据库恢复流程,所述数据库恢复流程执行成功后再进行虚拟ip的重新分配;若否,则保持ctdb状态为正常状态,跳过所述数据库恢复流程,直接进行所述虚拟ip的重新分配。本发明通过添加数据库恢复开关,增加灵活性,跳过节点故障ctdb的数据库恢复流程,并保持ctdb状态为正常状态,只保留虚拟ip分配流程,将ctdb故障切换恢复时间由6秒缩短到2秒,缩短了4秒,缩短了集群节点故障恢复时间,提高了分布式存储集群稳定性和高可用特性。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的集群节点故障业务快速恢复方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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