故障节点隔离方法及集群系统技术方案

技术编号:17783895 阅读:152 留言:0更新日期:2018-04-22 15:07
本发明专利技术实施例提供一种故障节点隔离方法及集群系统。所述方法包括:首先,集群系统的各个节点检测所述集群系统中是否存在访问存储故障的故障节点;接着,当存在故障节点时,所述故障节点向所述集群系统中的正常节点发送故障节点不能访问的集群文件系统的信息;最后,所述故障节点将所述故障节点不能访问的集群文件系统进行解挂载。上述方法可以在存储网络异常时,对不能存储访问的集群文件系统进行隔离,相对于直接隔离节点所在物理主机的方式,隔离的粒度更小,不会影响节点上其他业务。

【技术实现步骤摘要】
故障节点隔离方法及集群系统
本专利技术涉及共享文件系统
,具体而言,涉及一种故障节点隔离方法及集群系统。
技术介绍
共享文件系统在网络环境下,通过在不同操作系统下主机之间相互传输文件,从使用者的角度而言,不用考虑网络传输及访问细节,完全像是访问本地文件一样访问网络中其他服务器文件系统中的文件。在共享文件系统中,一般采用多台服务器构成集群系统,当一个节点由于客观因素(比如,节点所在的存储链路出现故障)无法继续访问时,需要将该故障节点从集群系统中踢出。现有技术中,采用直接重启该故障节点的方式,对该故障节点进行隔离。然而,上述方法存在着单纯的重启物理主机使得被重启物理主机上其他业务中断,重启物理主机所消耗的时间,还会给运行在被重启物理主机的其他业务恢复带来更大的时延消耗。
技术实现思路
为了克服现有技术中的上述不足,本专利技术实施例的目的在于提供一种故障节点隔离方法,应用于集群系统;所述方法包括:所述集群系统的各个节点检测所述集群系统中是否存在访问故障的故障节点;当存在故障节点时,所述故障节点向所述集群系统中的正常节点发送故障节点不能访问存储的集群文件系统的信息;所述故障节点将所述故障节点不能访问的集群文件系统进行解挂载。上述方法可以在存储异常时,将隔离手段由简单的重启物理主机变更为对不能访问的集群文件系统进行隔离,相对于直接隔离节点所在物理主机的方式,隔离的粒度更小,不会影响节点上其他业务,可以防止重启物理主机对运行在物理主机上其他业务带来的时延消耗。可选地,在上述方法中,所述集群系统中多个节点上同时挂载的集群文件系统包括集群成员管理位图,集群成员管理位图的比特位与能访问该集群文件系统的各个节点对应,在所述故障节点向所述集群系统中的正常节点发送故障节点不能访问的集群文件系统的信息之后,所述方法还可以包括:所述正常节点在接收到所述信息后,将所述故障节点不能访问的集群文件系统的集群成员管理位图里与故障节点对应的比特位清零。可选地,在上述方法中,所述集群系统的各个节点检测所述集群系统中是否存在访问故障的故障节点的步骤,包括:每个节点检测磁盘心跳能否在预设时间阈值内成功写入该节点在存储区域的指定心跳区域,若能成功写入,判定该节点为正常节点,若不能成功写入,判定该节点为故障节点。可选地,在上述方法中,在将所述故障节点不能访问的集群文件系统的集群成员管理位图里与故障节点对应的比特位清零之后,所述方法还可以包括:所述正常节点发送消息到故障节点查询故障节点是否已经开始对所述故障节点不能访问的集群文件系统解挂载;在查询到故障节点还未开始解挂载时,所述正常节点通知所述故障节点进行解挂载处理。可选地,在上述方法中,所述故障节点将所述故障节点不能访问的集群文件系统进行解挂载,包括:将所述集群系统中的节点分别划分到故障域和工作域,其中,每个故障域包括一个节点,所述工作域包括除故障域中节点之外的其他节点;所述工作域和故障域中的节点分别进行分布式锁管理处理(DLMRecovery)。可选地,在上述方法中,所述对所述工作域和故障域中的节点进行分布式锁管理处理的步骤,包括:所述工作域的节点确定所述故障节点不能访问的集群文件系统中加锁对象(LockResource)的主节点;所述故障域中的节点禁用该节点对所述故障节点不能访问的集群文件系统中加锁对象的修改权限,并将所述故障节点不能访问的集群文件系统中加锁对象的主节点设置为该所述故障域中的节点。在工作域的节点中确定加锁对象的主节点,而对故障域中节点对加锁对象的修改权限进行禁用并将主节点设置为故障域中节点自身,可以确保多个节点在对磁盘进行访问时,只有工作域的主节点具有修改权限,不会引起访问失调的问题。可选地,在上述方法中,将所述集群系统中的节点分别划分到故障域和工作域,包括:所述集群系统中各个节点通过读取其他节点的磁盘心跳将各节点划分到对应的故障域或工作域,当某一节点的磁盘心跳无法被其他节点读取时,将该节点划分到故障域,反之将该节点划分到工作域;和所述集群系统中各个节点通过节点之间的管理网络通信状况将各节点划分到对应的故障域或工作域,当某一节点在一预设时长内不能和其他节点通信,将该节点划分到故障域,反之将该节点划分到工作域。可选地,在上述方法中,所述文件系统包括一用于表示集群文件系统解挂载状态的标识,所述正常节点发送消息到故障节点查询故障节点是否已经开始文件系统解挂载,包括:查询所述故障节点不能访问的集群文件系统中的标识是否为解挂载状态或即将解挂载状态;若是,则判定故障节点已经开始解挂载;若否,则判定故障节点还未开始解挂载。本专利技术实施例的另一目的在于提供一种集群系统,所述集群系统包括正常节点及存在访问存储故障的故障节点,所述故障节点用于向所述集群系统中的正常节点发送故障节点不能访问的集群文件系统的信息;所述故障节点还用于将所述故障节点不能访问的集群文件系统进行解挂载。可选地,在上述系统中,所述集群系统中多个节点上同时挂载的集群文件系统包括集群成员管理位图,集群成员管理位图的比特位与能访问该集群文件系统的各个节点对应,所述正常节点,用于在接收到所述信息后,将所述故障节点不能访问的集群文件系统的集群成员管理位图里与故障节点对应的比特位清零。可选地,在上述系统中,所述故障节点可以通过以下方式确定:所述集群系统的每个节点检测磁盘心跳能否在预设时间阈值内成功写入该节点在存储区域的指定心跳区域,若能成功写入,判定该节点为正常节点,若不能成功写入,判定该节点为故障节点。可选地,在上述系统中:所述正常节点,还用于发送消息到故障节点查询故障节点是否已经开始对所述故障节点不能访问的集群文件系统解挂载;所述正常节点,还用于在查询到故障节点还未开始解挂载时,通知所述故障节点进行解挂载处理。可选地,在上述系统中,所述系统还包括工作域和故障域,其中,每个故障域包括一个节点,所述工作域包括除故障域中节点之外的其他节点;所述工作域的节点确定所述故障节点不能访问的集群文件系统中加锁对象的主节点;所述故障域中的节点禁用该节点对所述故障节点不能访问的集群文件系统中加锁对象的修改权限,并将所述故障节点不能访问的集群文件系统中加锁对象的主节点设置为所述故障域中的节点。相对于现有技术而言,本专利技术具有以下有益效果:本专利技术实施例提供的故障节点隔离方法及集群系统,上述方法可以在存储异常时,将隔离手段由简单的重启物理主机变更为对不能存储访问的集群文件系统进行隔离,相对于现有技术实现手段本申请隔离的粒度更小,隔离方式更加温和,不会影响节点上其他业务,保证使用者其他业务的连续性。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本专利技术实施例提供的集群系统的示意图;图2为本专利技术实施例提供的故障节点隔离方法的步骤流程示意图之一;图3为本专利技术实施例提供的检测访问存储故障的示意图;图4为本专利技术实施例提供的故障节点隔离方法的步骤流程示意图之二;图5为图2或图4中步骤S130的子步骤流程示意图。具体实施方式为使本专利技术实施例的目的、技术方案本文档来自技高网...
故障节点隔离方法及集群系统

【技术保护点】
一种故障节点隔离方法,其特征在于,应用于集群系统,所述方法包括:所述集群系统的各个节点检测所述集群系统中是否存在访问存储故障的故障节点;当存在故障节点时,所述故障节点向所述集群系统中的正常节点发送故障节点不能访问的集群文件系统的信息;所述故障节点将所述故障节点不能访问的集群文件系统进行解挂载。

【技术特征摘要】
1.一种故障节点隔离方法,其特征在于,应用于集群系统,所述方法包括:所述集群系统的各个节点检测所述集群系统中是否存在访问存储故障的故障节点;当存在故障节点时,所述故障节点向所述集群系统中的正常节点发送故障节点不能访问的集群文件系统的信息;所述故障节点将所述故障节点不能访问的集群文件系统进行解挂载。2.如权利要求1所述的方法,其特征在于,所述集群系统中节点上同时挂载的集群文件系统包括集群成员管理位图,集群成员管理位图的比特位与能访问该集群文件系统的各个节点对应,在所述故障节点向所述集群系统中的正常节点发送故障节点不能访问的集群文件系统的信息之后,所述方法还包括:所述正常节点在接收到所述信息后,将所述故障节点不能访问的集群文件系统的集群成员管理位图里与故障节点对应的比特位清零。3.如权利要求1或2所述的方法,其特征在于,所述集群系统的各个节点检测所述集群系统中是否存在访问故障的故障节点的步骤,包括:每个节点检测磁盘心跳能否在预设时间阈值内成功写入该节点在存储区域的指定心跳区域,若能成功写入,判定该节点为正常节点,若不能成功写入,判定该节点为故障节点。4.如权利要求3所述的方法,其特征在于,在将所述故障节点不能访问的集群文件系统的集群成员管理位图里与故障节点对应的比特位清零之后,所述方法还包括:所述正常节点发送消息到故障节点查询故障节点是否已经开始对所述故障节点不能访问的集群文件系统解挂载;在查询到故障节点还未开始解挂载时,所述正常节点通知所述故障节点进行解挂载处理。5.如权利要求4所述的方法,其特征在于,所述故障节点将所述故障节点不能访问的集群文件系统进行解挂载,包括:将所述集群系统中的节点分别划分到故障域和工作域,其中,每个故障域包括一个节点,所述工作域包括除故障域中节点之外的其他节点;所述工作域和故障域中的节点分别进行分布式锁管理处理。6.如权利要求5所述的方法,其特征在于,所述工作域和故障域中的节点分别进行分布式锁管理处理的步骤,包括:所述工作域的节点确定所述故障节点不能访问的集群文件系统中加锁对象的主节点;所述故障域中的节点禁用该节点对所述故障节点不能访问的集群文件系统中加锁对象的修改权限,并将所述故障节点不能访问的集群文件系统中加锁对象的主节点设置为所述故障域中的节点。7.如权利要求5所述的方法,其特征在于,将所述集群系统中的节点分别划分到故障域和工作域,包括:所述集群系统中各个节点通过读取其他节点的磁盘心跳将...

【专利技术属性】
技术研发人员:葛长伟
申请(专利权)人:新华三云计算技术有限公司
类型:发明
国别省市:四川,51

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

1