一种预防集群节点间文件脑裂的方法及计算机可读介质技术

技术编号:26970145 阅读:28 留言:0更新日期:2021-01-05 23:59
本发明专利技术提供了一种预防集群节点间文件脑裂的方法及计算机可读介质,该方法包括运行于至少配置两个作为服务端的节点中的集群中,在向任意一个节点执行文件操作时,仅对待操作文件的片段添加分布式锁;根据文件操作所对应的文件属性值和/或节点间的心跳检测结果确定文件操作是否成功;将文件操作失败所对应的待操作文件的片段参比源文件执行修复。通过本发明专利技术,提高了由客户端向服务端执行文件操作时确保各个服务端的数据一致性,有效地避免了集群节点间发生文件脑裂,并提高了存储系统及其基于该存储系统的计算机集群的可靠性与对待修复文件所执行的修复操作的稳定性。

【技术实现步骤摘要】
一种预防集群节点间文件脑裂的方法及计算机可读介质
本专利技术涉及计算机
,尤其涉及一种预防集群节点间文件脑裂的方法及计算机可读介质。
技术介绍
GlusterFS(GlusterFileSystem)是开源的分布式文件系统,属于软件定义存储,采用堆栈式设计,具有强大的横向扩展能力,可扩展至数PB(PetaByte)数据及数千个客户端。GlusterFS分布式文件系统将单一的物理存储资源通过TCP/IP或InfiniBandRDMA聚集在一起,使用统一的命名空间(Namespace)对数据进行管理。文件脑裂是指文件的副本在计算机集群不同节点上的数据不一致,从而导致客户端在对文件进行读写时,不能识别哪个节点上的副本是正确的数据,这时客户端会认为这个文件为脑裂文件,出现数据损坏,不能进行正常的读写,这种现象称为文件脑裂。文件脑裂出现的原因主要是客户端在写数据到不同副本上时,因网络或GlusterFS进程出现问题导致在一个服务端写数据成功,实例该成功服务端为A,在另一个服务端写数据失败,实例该失败服务端为B。在文件未修复完成的情况下,数据本文档来自技高网...

【技术保护点】
1.一种预防集群节点间文件脑裂的方法,其特征在于,包括:/n运行于至少配置两个作为服务端的节点中的集群中,在向任意一个节点执行文件操作时,仅对待操作文件的片段添加分布式锁;/n根据文件操作所对应的文件属性值和/或节点间的心跳检测结果确定文件操作是否成功;/n将文件操作失败所对应的待操作文件的片段参比源文件执行修复。/n

【技术特征摘要】
1.一种预防集群节点间文件脑裂的方法,其特征在于,包括:
运行于至少配置两个作为服务端的节点中的集群中,在向任意一个节点执行文件操作时,仅对待操作文件的片段添加分布式锁;
根据文件操作所对应的文件属性值和/或节点间的心跳检测结果确定文件操作是否成功;
将文件操作失败所对应的待操作文件的片段参比源文件执行修复。


2.根据权利要求1所述的预防集群节点间文件脑裂的方法,其特征在于,所述预防集群节点间文件脑裂的方法运行于GlusterFS分布式文件系统中,所述GlusterFS分布式文件系统连接至少一个客户端及至少两个作为服务端的节点,并在至少两个节点之间建立心跳检测。


3.根据权利要求2所述的预防集群节点间文件脑裂的方法,其特征在于,还包括:对文件操作成功所对应的待操作文件的片段释放分布式锁;
至少两个节点之间建立心跳检测的超时时间阈值设置为2~10ms。


4.根据权利要求3所述的预防集群节点间文件脑裂的方法,其特征在于,还包括:将文件操作失败所对应的待操作文件的片段加入待修复队列,并在将文件操作失败所对应的待操作文件的片段参比源文件执行修复完成后,将文件操作失败所对应的待操作文件的片段移出待修复队列,所述待修复队列运行于GlusterFS分布式文件系统;
其中,所述操作成功的文件所对应的文件属性值为0,文件操作失败的文件所对应的文件属性值为1。


5.根据权利要求4所述的预防集群节点间文件脑裂的方法,其特征在于,还包括:主动扫描或者被动扫描以确定源文件;其中
主动扫描以确定源文件具体为:人工在客户端向服务端发起扫描是否存在操作成功的文件,以将操作成功的文件定义为源文件;
被动扫描以确定源文件具体为:服务端定时扫描本地节点及异地节点,以确定是否存在操作成功的文件,以将操作成功的文件定义为源文件,其中,被动扫描的时间设置为5~10秒。


6.根据权利要求5所述的预防集群节点间文件脑裂的方法,其特征在于,还包括:将源文件的节点信息更新至操作成功的文件的属性中,以响应后续将文件操作失败所对应的待操作文件的片段参比源文件所执行的修复操作,并根据所述源文件的节点信息确定源文件的引用路径。


7.根据权利要求4所述的预防集群节点间文件脑裂的方法,其特征在于,所述将文件操作失败所对应的待操作文件的片段参比源文件执行修复包括以下子步骤:
S11、判断待操作文件的片段是否加入待修复队列;
S12、将源文件添加分布式锁;
S13、对已经加入待修复队列的待操作文件的片段确定待执行修复操作所参比的源文件所在的节点是否可以连接,
若否,则等待修复操作,
若是,则对所述待操作文件的片段参比源文件执行修复;...

【专利技术属性】
技术研发人员:张军
申请(专利权)人:华云数据控股集团有限公司
类型:发明
国别省市:江苏;32

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

1