SCST存储系统中保持数据一致性的方法及应用技术方案

技术编号:30766143 阅读:14 留言:0更新日期:2021-11-10 12:25
本发明专利技术公开一种SCST存储系统中保持数据一致性的方法及应用,该方法包括以下步骤:当前节点登录后,通过zookeeper查询系统是否存在异常或其它节点登录;若是,当前节点中止I/O以清除悬挂I/O,以供其它节点执行I/O。该SCST存储系统中保持数据一致性的方法能够根据zookeeper查询到系统存在异常,并且触发清除悬挂的I/O操作,保证后续其他节点访问时不会出现脑裂,造成数据不一致的现象,确保数据一致性。致性。致性。

【技术实现步骤摘要】
SCST存储系统中保持数据一致性的方法及应用


[0001]本专利技术是关于计算机领域,特别是关于一种SCST存储系统中保持数据一致性的方法及应用。

技术介绍

[0002]随着计算机技术的快速发展和进步,数据增长速度的不断加快,要求在某个节点因硬件、软件发生故障时,另一个节点能够自动、快速地向外提供服务。随着网络存储技术的发展,网络存储被越来越多地投入应用,这就为业务连续性和数据可用性提供比较强力的支持。
[0003]公开于该
技术介绍
部分的信息仅仅旨在增加对本专利技术的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。

技术实现思路

[0004]本专利技术的目的在于提供一种SCST存储系统中保持数据一致性的方法及应用,其能够根据zookeeper查询到系统存在异常,并且触发清除悬挂的I/O操作,保证后续其他节点访问时不会出现脑裂,造成数据不一致的现象,确保数据一致性。
[0005]为实现上述目的,本专利技术的实施例提供了一种SCST存储系统中保持数据一致性的方法。
[0006]在本专利技术的一个或多个实施方式中,当前节点登录后,通过zookeeper查询系统是否存在异常或其它节点登录;若是,所述当前节点中止I/O以清除悬挂I/O,以供其它节点执行I/O。
[0007]在本专利技术的一个或多个实施方式中,所述当前节点判断中止I/O时长是否大于设定时长;若是,则所述当前节点重启SCST服务或执行节点重启。
[0008]在本专利技术的一个或多个实施方式中,所述当前节点在登录时检测zookeeper中是否存在其它节点的I/O信息;若是,所述当前节点执行断开连接。
[0009]在本专利技术的一个或多个实施方式中,所述当前节点在登录时通过zookeeper对所有节点I/O添加有效标签,以及通知共享存储更新所述有效标签,以完成登录。
[0010]在本专利技术的另一个方面当中,提供了一种SCST存储系统中保持数据一致性的方法。
[0011]在本专利技术的一个或多个实施方式中,共享存储接收当前登录节点的I/O写入请求;所述共享存储对所述I/O写入请求添加有效标签,并写入所述当前登录节点的I/O。
[0012]在本专利技术的一个或多个实施方式中,在所述共享存储对所述I/O写入请求添加有效标签后,丢弃未更新标签的I/O。
[0013]在本专利技术的另一个方面当中,提供了一种SCST存储系统中保持数据一致性的装置,其包括判断模块和执行模块。
[0014]判断模块用于在当前节点登录后,通过zookeeper查询系统是否存在异常或其它
节点登录。
[0015]执行模块用于所述当前节点中止I/O以清除悬挂I/O,以供其它节点执行I/O。
[0016]在本专利技术的一个或多个实施方式中,所述判断模块还用于,所述当前节点判断中止I/O时长是否大于设定时长;若是,则所述当前节点重启SCST服务或执行节点重启。
[0017]在本专利技术的一个或多个实施方式中,所述判断模块还用于,所述当前节点在登录时检测zookeeper中是否存在其它节点的I/O信息;若是,所述当前节点执行断开连接。
[0018]在本专利技术的一个或多个实施方式中,所述执行模块还用于,所述当前节点在登录时通过zookeeper对所有节点I/O添加有效标签,以及通知共享存储更新所述有效标签,以完成登录。
[0019]在本专利技术的另一个方面当中,提供了一种SCST存储系统中保持数据一致性的装置,其包括存储模块和写入模块。
[0020]存储模块用于供共享存储接收当前登录节点的I/O写入请求。
[0021]写入模块用于供所述共享存储对所述I/O写入请求添加标签信息,并写入所述当前登录节点的I/O。
[0022]在本专利技术的一个或多个实施方式中,所述存储模块还用于,在所述共享存储对所述I/O写入请求添加有效标签后,丢弃未更新标签的I/O。
[0023]在本专利技术的另一个方面当中,提供了一种电子设备,包括:至少一个处理器;以及存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的SCST存储系统中保持数据一致性方法。
[0024]在本专利技术的另一个方面当中,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的SCST存储系统中保持数据一致性方法的步骤。
[0025]与现有技术相比,根据本专利技术实施方式的SCST存储系统中保持数据一致性的方法及应用,能够通过zookeeper主动查询到系统存在异常,及时清除当前节点的I/O,并且能够保证在规定时间内清除所有异常I/O,避免存在多个节点的I/O写入共享存储进行资源争抢。通过设置共享存储能够缩短清除I/O的时间,保证I/O可控,进而确保系统的数据一致性。
附图说明
[0026]图1是根据本专利技术一实施方式的SCST存储系统中保持数据一致性方法的示意图;
[0027]图2是根据本专利技术一实施方式的SCST存储系统中保持数据一致性方法的结构图;
[0028]图3是根据本专利技术一实施方式的SCST存储系统中保持数据一致性方法的系统图;
[0029]图4是根据本专利技术一实施方式的SCST存储系统中保持数据一致性方法的扩展流程图;
[0030]图5是根据本专利技术一实施方式的SCST存储系统中保持数据一致性方法的节点结构图;
[0031]图6是根据本专利技术一实施方式的SCST存储系统中保持数据一致性方法的时序图;
[0032]图7是根据本专利技术一实施方式的SCST存储系统中保持数据一致性方法的改进流程图;
[0033]图8是根据本专利技术一实施方式的SCST存储系统中保持数据一致性装置的结构图;
[0034]图9是根据本专利技术一实施方式的SCST存储系统中保持数据一致性计算设备的硬件结构图。
具体实施方式
[0035]下面结合附图,对本专利技术的具体实施方式进行详细描述,但应当理解本专利技术的保护范围并不受具体实施方式的限制。
[0036]除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
[0037]一个典型的SCST存储系统通常由4部分组成,即客户端、VIP、SCST和共享存储。
[0038]客户端是iSCSI接口的客户端组件,主要通过该进程对整个系统资源进行访问。
[0039]VIP为客户端选择使用哪个节点的资源,当被选择的节点出现故障时,VIP会提供另外一个节点供客户端连接使用。
[0040]SCST是Linux系统通用的SCSI目标子系统,提供Linux内核之间的处理和SCSI目标驱动程序的统一的接口,同时提供Linux内核与存储后端句柄连接,连接真实或模拟的存储后端与目标驱动程序。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种SCST存储系统中保持数据一致性的方法,其特征在于,包括以下步骤:当前节点登录后,通过zookeeper查询系统是否存在异常或其它节点登录;若是,所述当前节点中止I/O以清除悬挂I/O,以供其它节点执行I/O。2.如权利要求1所述的SCST存储系统中保持数据一致性的方法,其特征在于,所述方法还包括:所述当前节点判断中止I/O时长是否大于设定时长;若是,则所述当前节点重启SCST服务或执行节点重启。3.如权利要求1所述的SCST存储系统中保持数据一致性的方法,其特征在于,所述方法还包括:所述当前节点在登录时检测zookeeper中是否存在其它节点的I/O信息;若是,所述当前节点执行断开连接。4.如权利要求1所述的SCST存储系统中保持数据一致性的方法,其特征在于,所述方法还包括:所述当前节点在登录时通过zookeeper对所有节点I/O添加有效标签,以及通知共享存储更新所述有效标签,以完成登录。5.一种SCST存储系统中保持数据一致性的方法,特征在于,包括:共享存储接收当前登录节点的I/O写入请求;所述共享存储对所述I/O写入请求添加有效标签,并写入所述当前登录节点的I/O。6.如权利要求5所述的SCST存...

【专利技术属性】
技术研发人员:申江伟陈铎方敏
申请(专利权)人:安超云软件有限公司
类型:发明
国别省市:

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

1