一种分布式系统中CTDB服务的故障处理方法及装置制造方法及图纸

技术编号:19436471 阅读:27 留言:0更新日期:2018-11-14 13:09
本发明专利技术公开了一种分布式系统中CTDB服务的故障处理方法,以节点为单位,设定监控与故障分析规则,监控各个节点的本地CTDB服务状态,当发现故障时按预设规则分析故障、生成故障码,并按照预设的故障码与解决方案的对应关系,查找与故障码对应的解决方案,自行解决故障,形成了一套由分布式系统自行发现CTDB服务的故障并解决故障的方案,使得在分布式系统中CTDB服务出现故障时,不再依赖于管理员的人工监控与解决,不仅能够及时地解决CTDB服务的故障,使其尽快恢复正常,保证了CTDB服务的高可用性,还大大减轻了管理员的监控工作压力。本发明专利技术还公开了一种分布式系统中CTDB服务的故障处理装置及系统,具有上述有益效果。

【技术实现步骤摘要】
一种分布式系统中CTDB服务的故障处理方法及装置
本专利技术涉及分布式系统领域,特别是涉及一种分布式系统中CTDB服务的故障处理方法、装置及系统。
技术介绍
CTDB是一个集群TDB数据库,可以被Samba或者其他的应用使用来存储数据。如果一个应用是使用TDB来暂时存放数据,那么这个应用可以很轻松的使用CTDB扩展为集群模式。CTDB提供与TDB相同的函数接口,并且是构建在多台物理机器上的集群。在分布式存储系统中,每个节点都运行有CTDB服务,用于提供集群数据库存储服务。集群各个节点的数据库要始终保持一致,但是当集群规模过大时,CTDB管理的数据库由于某些异常因素可能会导致数据库不一致,或者数据库文件被损坏等问题。在现有技术中,对于CTDB服务的故障处理方法为管理员在发现故障后人为处理故障,由于集群规模较大,管理员常常不能及时发现、处理故障,从而可能会造成集群的数据库存储出现严重问题。因此,如何及时处理分布式系统中CTDB服务的故障,是本领域技术人员需要解决的技术问题。
技术实现思路
本专利技术的目的是提供一种分布式系统中CTDB服务的故障处理方法、装置及系统,用于及时处理分布式系统中CTDB服务的故障。为解决上述问题,本专利技术提供一种分布式系统中CTDB服务的故障处理方法,包括:监控各节点的本地CTDB服务状态;其中,所述节点包括主节点和从节点;当所述本地CTDB服务状态出现故障时,按预设规则分析所述故障并生成故障码;按预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案;执行所述解决方案。可选地,所述监控各节点的本地CTDB服务状态,具体包括:接收各所述节点的CTDB主进程的心跳信号;根据所述心跳信号中携带的状态信息监控所述本地CTDB服务状态。可选地,所述按预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案,具体包括:将所述故障码发送至所述主节点的故障解决进程,以使所述主节点的故障解决进程按所述预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案。可选地,还包括:当所述主节点发生故障时,在所述从节点中选举新的主节点代替所述发生故障的主节点。可选地,还包括:根据检测、解决所述故障的过程生成故障处理日志;将所述故障处理日志存储于指定位置。可选地,还包括:判断在预设时间内所述故障是否得到解决;如果否,则将所述故障处理日志发送至管理员邮箱。可选地,所述故障具体包括CTDB数据库丢失、CTDB数据库损坏、CTDB服务进程僵死和CTDB输出故障关键词中的至少一项。为解决上述问题,本专利技术还提供一种分布式系统中CTDB服务的故障处理装置,包括:状态监控模块,用于监控各节点的本地CTDB服务状态;其中,所述节点包括主节点和从节点;故障分析模块,用于当所述本地CTDB服务状态出现故障时,按预设规则分析所述故障并生成故障码;故障解决模块,用于按预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案;按所述解决方案解决所述故障。可选地,还包括:告警模块,用于将依据所述故障码、所述解决方案以及解决所述故障的过程生成的故障处理日志发送至管理员邮箱。为解决上述问题,本专利技术还提供一种分布式系统中CTDB服务的故障处理系统,包括:存储器,用于存储指令,所述指令包括上述任意一项所述的分布式系统中CTDB服务的故障处理方法的步骤;处理器,用于执行所述指令。本专利技术所提供的分布式系统中CTDB服务的故障处理方法,以节点为单位,设定监控与故障分析规则,监控各个节点的本地CTDB服务状态,当发现故障时按预设规则分析故障、生成故障码,并按照预设的故障码与解决方案的对应关系,查找与故障码对应的解决方案,自行解决故障,形成了一套由分布式系统自行发现CTDB服务的故障并解决故障的方案,使得在分布式系统中CTDB服务出现故障时,不再依赖于管理员的人工监控与解决,从而不仅能够及时地解决CTDB服务的故障,使CTDB服务尽快恢复正常,保证了CTDB服务的高可用性,还大大减轻了管理员的监控工作压力。本专利技术还提供一种分布式系统中CTDB服务的故障处理装置及系统,具有上述有益效果。附图说明为了更清楚的说明本专利技术实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的第一种分布式系统中CTDB服务的故障处理方法的流程图;图2为本专利技术实施例提供的第二种分布式系统中CTDB服务的故障处理方法的流程图;图3为本专利技术实施例提供的第三种分布式系统中CTDB服务的故障处理方法的流程图;图4为本专利技术实施例提供的一种分布式系统中CTDB服务的故障处理装置的示意图;图5为本专利技术实施例提供的另一种分布式系统中CTDB服务的故障处理装置的示意图;图6为本专利技术实施例提供的一种分布式系统中CTDB服务的故障处理系统的结构示意图。具体实施方式本专利技术的核心是提供一种分布式系统中CTDB服务的故障处理方法、装置及系统,用于及时处理分布式系统中CTDB服务的故障。下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术实施例提供的第一种分布式系统中CTDB服务的故障处理方法的流程图。如图1所示,分布式系统中CTDB服务的故障处理方法包括:S10:监控各节点的本地CTDB服务状态。其中,节点包括主节点和从节点。在分布式系统中预先选出用于进行CTDB服务故障处理的主节点,该主节点可以为分布式系统中其他应用所选定的主节点,也可以为专为CTDB服务故障处理设定的主节点。主节点的数量可以为一个,用于集中进行CTDB服务故障处理,也可以为多个,可以将从节点进行小组划分,每个小组的CTDB服务故障处理由一个主节点负责。进一步地,分布式系统中CTDB服务的故障处理方法还可以包括:当主节点发生故障时,在从节点中选举新的主节点代替发生故障的主节点。主节点的选举方法可以采用分布式系统自带的功能,在此不再赘述。在具体实施中,可以由各节点自行监控本地CTDB服务状态并进行故障判断,也可以由主节点来监控并判断从节点的CTDB服务状态。在此基础上,监控各节点的本地CTDB服务状态,具体可以包括:接收各节点的CTDB主进程的心跳信号;根据心跳信号中携带的状态信息监控本地CTDB服务状态。具体可以在各节点设置状态监控进程,状态监控进程与的CTDB主进程每间隔预设时间通过心跳信号进行一次状态信息交互,各节点的CTDB主进程的心跳信号中都携带有本地CTDB服务状态信息,状态监控进程通过检查心跳信号中携带的本地CTDB服务状态信息监控本地CTDB服务状态。或者,也可以由各从节点的CTDB主进程与主节点的状态监控进程进行状态信息交互,由主节点的状态监控进程对从节点的CTDB主进程进行监控。S11:当本地CTDB服务状态出现故障时,按预设规则分析故障并生成故障码。在具体实施中,预先由本文档来自技高网...

【技术保护点】
1.一种分布式系统中CTDB服务的故障处理方法,其特征在于,包括:监控各节点的本地CTDB服务状态;其中,所述节点包括主节点和从节点;当所述本地CTDB服务状态出现故障时,按预设规则分析所述故障并生成故障码;按预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案;执行所述解决方案。

【技术特征摘要】
1.一种分布式系统中CTDB服务的故障处理方法,其特征在于,包括:监控各节点的本地CTDB服务状态;其中,所述节点包括主节点和从节点;当所述本地CTDB服务状态出现故障时,按预设规则分析所述故障并生成故障码;按预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案;执行所述解决方案。2.根据权利要求1所述的故障处理方法,其特征在于,所述监控各节点的本地CTDB服务状态,具体包括:接收各所述节点的CTDB主进程的心跳信号;根据所述心跳信号中携带的状态信息监控所述本地CTDB服务状态。3.根据权利要求1所述的故障处理方法,其特征在于,所述按预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案,具体包括:将所述故障码发送至所述主节点的故障解决进程,以使所述主节点的故障解决进程按所述预存的故障码与解决方案的对应关系,查找与所述故障码对应的解决方案。4.根据权利要求1所述的故障处理方法,其特征在于,还包括:当所述主节点发生故障时,在所述从节点中选举新的主节点代替所述发生故障的主节点。5.根据权利要求1所述的故障处理方法,其特征在于,还包括:根据检测、解决所述故障的过程生成故障处理日志;将所述故障处理日志存储于...

【专利技术属性】
技术研发人员:丁瑞锋
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1