一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种卷映射解除方法、装置、设备和存储介质与流程

2022-06-02 05:03:49 来源:中国专利 TAG:


1.本发明涉及存储设备技术领域,尤其是指一种卷映射解除方法、装置、设备和存储介质。


背景技术:

2.分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
3.scsi服务端程序在分布式场景下,一般采用多路径配置,多路径场景将配置保存在集群中,有一个主节点负责管理操作。对于创建修改卷映射等管理操作来说,只需要将配置更新至集群中,在客户端访问时更新配置即可。对于解映射操作来说需要同步通知到每个iscsi服务端程序去执行。普通场景下,解除卷映射需要在每个iscsi服务程序节点单独执行对应的解除卷映射命令。在节点个数较多的情况下,一是需要确定需要执行的操作的节点有哪些,二是顺序执行效率低。
4.因此,急需提出一种减少节点间资源竞争、可以实现多节点间并行解除卷映射的卷映射解除方法。


技术实现要素:

5.为了解决上述技术问题,本发明提供了一种卷映射解除方法、装置、设备和存储介质,可以实现多存储节点间并行执行卷映射解除操作,可以减少存储节点间的资源竞争,可以提升应用系统的易用性和可靠性。
6.为实现上述目的,本技术提出第一技术方案:
7.一种卷映射解除方法,应用于分布式块存系统,所述分布式块存系统包括客户端、iscsi服务端与存储设备,方法包括以下步骤:
8.步骤s1、通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;
9.步骤s2、确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;
10.步骤s3、所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点;
11.步骤s4、所述存储节点基于所述待删除请求,解除卷映射。
12.在本发明的一个实施例中,所述元数据对象发送待删除请求至所述待解除逻辑卷对应设置的存储节点包括:所述元数据对象发送待删除广播请求至存储进程;所述存储进程发送待删除请求至与所述待解除逻辑卷对应设置的存储节点。
13.在本发明的一个实施例中,所述存储节点基于所述待删除请求,解除卷映射前,还
包括:获取与所述待解除逻辑卷对应设置的存储节点,将与所述存储节点对应的逻辑卷设置为离线状态,并判断所述逻辑卷是否存在未返回的io请求;若所述逻辑卷存在未返回的io请求,则设置释放调用函数;若所述逻辑卷不存在未返回的io请求,则调用所述释放调用函数。
14.在本发明的一个实施例中,所述方法还包括:监听集群的状态,若所述集群处于稳定状态,则通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;若所述集群不处于稳定状态,则暂停通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,暂停确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象。
15.在本发明的一个实施例中,所述方法还包括:卷映射状态监测;所述卷映射状态监测包括:监测所述任一待解除逻辑卷是否已完成卷映射解除,若所述任一待解除逻辑卷已完成卷映射解除,则返回卷映射解除结果至所述客户端。
16.在本发明的一个实施例中,所述监测所述任一待解除逻辑卷是否已完成卷映射解除包括:基于所述元数据对象,检测所述元数据对象的地址信息、路径信息,检测不到所述元数据对象的地址信息、路径信息时,卷映射解除完成。
17.为实现上述目的,本技术还提出第二技术方案:
18.一种卷映射解除装置,应用于分布式块存系统,所述分布式块存系统包括客户端、iscsi服务端与存储设备,所述装置包括:初始化单元,以用于通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,以实现初始化逻辑卷资源;卷映射解除单元,所述卷映射解除单元与所述初始化单元通信连接,所述卷映射解除单元以用于确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象,基于所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点,所述存储节点基于所述待删除请求,解除卷映射。
19.在本发明的一个实施例中,所述装置还包括:控制单元,所述控制单元与所述卷映射解除单元通信连接,所述控制单元以用于获取与所书待解除逻辑卷对应设置的存储节点,将与所述存储节点对应的逻辑卷设置为离线状态;检测单元,所述检测单元与所述卷映射解除单元通信连接,所述检测单元以用于判断所述逻辑卷是否存在未返回的io请求;若所述逻辑卷存在未返回的io请求,则设置释放调用函数;若所述逻辑卷不存在未返回的io请求,则调用所述释放调用函数;监测单元,所述监测单元分别与所述初始化单元和所述卷映射解除单元通信连接,以用于监听集群的状态。
20.为实现上述目的,本技术提出第三技术方案:
21.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
22.步骤s1、通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;
23.步骤s2、确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;
24.步骤s3、所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点;
25.步骤s4、所述存储节点基于所述待删除请求,解除卷映射。
26.为实现上述目的,本技术提出第四技术方案:
27.一种计算机可读存储介质,所述计算机可读存储介质存储有程序,当所述程序被处理器执行时,使得所述处理器执行以下步骤:
28.步骤s1、通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;
29.步骤s2、确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;
30.步骤s3、所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点;
31.步骤s4、所述存储节点基于所述待删除请求,解除卷映射。
32.本发明的上述技术方案相比现有技术具有以下优点:
33.本发明所述的一种卷映射解除方法、装置、设备和存储介质,所述方法包括初始化逻辑卷资源和解除卷映射;所述初始化逻辑卷资源包括:通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;所述解除卷映射包括:确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点;所述存储节点基于所述待删除请求,解除卷映射。基于本技术所述的卷映射解除方法可以实现多存储节点间并行执行卷映射解除操作;一方面,本技术所述的卷映射解除方法的操作线程为系统的业务线程,具有减少资源竞争的有益效果;另一方面,本技术所述的卷映射解除方法的适用范围广,大部分的分布书块存系统均可与本技术所述的卷映射解除方法适配,基于本技术所述的卷映射解除方法可以有效地提高系统的易用性和可靠性。
附图说明
34.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
35.图1是一个实施例中的方法流程图;
36.图2是一个实施例中的方法流程图;
37.图3是一个实施例中的装置结构图;
38.图4为一个实施例中计算机设备的内部结构图。
具体实施方式
39.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
40.实施例一:
41.本实施例的卷映射解除方法,应用于分布式块存系统,方法包括以下步骤:初始化
逻辑卷资源和解除卷映射。初始化逻辑卷资源和解除卷映射均由主节点执行。需要理解的是,在创建卷映射的过程中,主节点基于任一存储节点将与任一存储节点对应的逻辑卷配置于集群。本技术所述的卷映射解除方法同样是基于主节点进行的。
42.在其中一个实施方式中,所述分布式块存系统包括客户端、iscsi服务端与存储设备。需要理解的是,本技术中所述的存储节点与存储设备是一一对应的关系,即在实际的分布式块存系统中,可以将存储设备看作为存储节点。
43.在其中一个实施方式中,所述初始化逻辑卷资源包括:通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;所述解除卷映射包括:获取逻辑卷元数据存储位置,向与逻辑卷元数据对应的存储进程发送消息通知,通知活动路径释放逻辑卷资源;待逻辑卷资源释放成功后,即连接信息为空的时候,删除路径配置信息。需要理解的是,本技术中所述的主节点和存储节点在整个系统中扮演着管理者和被管理者的角色,可以将主节点定义为超级机器,将任一存储节点定义为普通机器,任一存储节点的行为均由与其对应设置的主节点控制。
44.具体地,向与逻辑卷元数据对应的存储进程发送消息通知,通知活动路径释放逻辑卷资源包括:所述元数据对象发送待删除广播请求至存储进程;所述存储进程发送待删除请求至与所述待解除逻辑卷对应设置的存储节点。
45.在其中一个实施方式中,当活动路径收到释放逻辑卷资源信息时,逻辑卷资源释放动作基于对应逻辑卷所在的线程进行处理,且在处理过程中将对应的逻辑卷资源标注为不可以用状态,并检查逻辑卷是否存在未返回的io请求。
46.在其中一个实施方式中,若所述逻辑卷存在未返回的io请求,则设置释放调用函数,并基于所述io请求进行处理,若io请求已经处理完毕,则调用释放调用函数;若所述逻辑卷不存在未返回的io请求,则调用所述释放调用函数。所述释放调用函数即用于释放逻辑卷资源,本技术中所书的设置释放调用函数即为因所述逻辑卷存在未返回的io请求,因此设置释放调用函数即表示当所述逻辑卷不存在未返回的io请求时,再调用释放调用函数以释放逻辑卷资源。
47.在普通场景下,解除卷映射需要在iscsi服务端中对应任一存储节点单独执行对应的卷映射解除操作,首先要确认需要进行卷映射解除的存储节点有哪些,其次要基于上述存储节点顺序执行卷映射解除操作,其卷映射解除过程极为繁琐,在存储节点数量较多的情况下,不但执行效率低,而且会增加资源占用率。而本技术所述的卷映射解除方法可以实现多存储节点并行解除卷映射,并且本技术所述的卷映射解除方法是基于业务线程实现的,能够达到减少资源竞争的有益效果。
48.实施例二:
49.参照图1所示,图1为实施例二的方法流程图。
50.本实施例的卷映射解除方法,应用于分布式块存系统,所述分布式块存系统包括客户端、iscsi服务端与存储设备,本实施例的卷映射解除方法包括以下步骤:s1、初始化逻辑卷资源;s2、解除卷映射。
51.在其中一个实施方式中,所述初始化逻辑卷资源包括:通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷。所述解除卷映射包括:确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;所述元数据对象发送待删除请求
至与所述待解除逻辑卷对应设置的存储节点;所述存储节点基于所述待删除请求,解除卷映射。
52.在其中一个实施方式中,所述元数据对象发送待删除请求至所述待解除逻辑卷对应设置的存储节点包括:所述元数据对象发送待删除广播请求至存储进程;所述存储进程发送待删除请求至与所述待解除逻辑卷对应设置的存储节点。
53.在其中一个实施方式中,如图2所示,所述存储节点基于所述待删除请求,解除卷映射前,还包括:获取与所述待解除逻辑卷对应设置的存储节点,将与所述存储节点对应的逻辑卷设置为离线状态,并判断所述逻辑卷是否存在未返回的io请求;若所述逻辑卷存在未返回的io请求,则设置释放调用函数;若所述逻辑卷不存在未返回的io请求,则调用所述释放调用函数。
54.在其中一个实施方式中,所述方法还包括:监听集群的状态,若所述集群处于稳定状态,则通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;若所述集群不处于稳定状态,则暂停通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,暂停确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象。
55.在其中一个实施方式中,所述卷映射解除方法还包括:卷映射状态监测;所述卷映射状态监测包括:监测所述任一待解除逻辑卷是否已完成卷映射解除,若所述任一待解除逻辑卷已完成卷映射解除,则返回卷映射解除结果至所述客户端。
56.在其中一个实施方式中,所述监测所述任一待解除逻辑卷是否已完成卷映射解除包括:基于所述元数据对象,检测所述元数据对象的地址信息、路径信息,检测不到所述元数据对象的地址信息、路径信息时,卷映射解除完成。
57.应该理解的是,虽然图1-2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
58.实施例三:
59.参照图3所示,图3为实施例三的装置结构图。
60.本实施例的装置,应用于分布式块存系统,所述分布式块存系统包括客户端、iscsi服务端与存储设备,本实施例的装置包括:初始化单元,以用于通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,以实现初始化逻辑卷资源;卷映射解除单元,所述卷映射解除单元与所述初始化单元通信连接,所述卷映射解除单元以用于确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象,基于所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点,所述存储节点基于所述待删除请求,解除卷映射。
61.在其中一个实施方式中,装置还包括:控制单元,所述控制单元与所述卷映射解除单元通信连接,所述控制单元以用于获取与所书待解除逻辑卷对应设置的存储节点,将与
所述存储节点对应的逻辑卷设置为离线状态;检测单元,所述检测单元与所述卷映射解除单元通信连接,所述检测单元以用于判断所述逻辑卷是否存在未返回的io请求;若所述逻辑卷存在未返回的io请求,则设置释放调用函数;若所述逻辑卷不存在未返回的io请求,则调用所述释放调用函数。
62.在其中一个实施方式中,装置还包括:监测单元,所述监测单元分别与所述初始化单元和所述卷映射解除单元通信连接,以用于监听集群的状态。
63.关于卷映射解除装置的具体限定可以参见上文中对于卷映射解除方法的限定,在此不再赘述。上述卷映射解除装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
64.实施例四:
65.一种计算机设备,在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储已经解除了的卷映射数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现以下步骤:
66.步骤s1、通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;
67.步骤s2、确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;
68.步骤s3、所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点;
69.步骤s4、所述存储节点基于所述待删除请求,解除卷映射。
70.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
71.通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;所述元数据对象发送待删除广播请求至存储进程;所述存储进程发送待删除请求至与所述待解除逻辑卷对应设置的存储节点。
72.在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取与所述待解除逻辑卷对应设置的存储节点,将与所述存储节点对应的逻辑卷设置为离线状态,并判断所述逻辑卷是否存在未返回的io请求;若所述逻辑卷存在未返回的io请求,则设置释放调用函数;若所述逻辑卷不存在未返回的io请求,则调用所述释放调用函数。
73.在一个实施例中,处理器执行计算机程序时还实现以下步骤:监听集群的状态,若所述集群处于稳定状态,则通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;若所述集群不处于稳定状态,则暂停通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,暂停确定待解除逻辑卷,获取与所述待解除逻辑卷
关联的元数据对象。
74.在一个实施例中,处理器执行计算机程序时还实现以下步骤:监测所述任一待解除逻辑卷是否已完成卷映射解除,若所述任一待解除逻辑卷已完成卷映射解除,则返回卷映射解除结果至所述客户端。
75.在一个实施例中,处理器执行计算机程序时还实现以下步骤:基于所述元数据对象,检测所述元数据对象的地址信息、路径信息,检测不到所述元数据对象的地址信息、路径信息时,卷映射解除完成。
76.本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
77.实施例五:
78.本实施例提供一种计算机可读存储介质,计算机可读存储介质存储有程序,当程序被处理器执行时,实现以下步骤:
79.步骤s1、通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷;
80.步骤s2、确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;
81.步骤s3、所述元数据对象发送待删除请求至与所述待解除逻辑卷对应设置的存储节点;
82.步骤s4、所述存储节点基于所述待删除请求,解除卷映射。
83.在一个实施例中,当程序被处理器执行时,实现以下步骤:所述元数据对象发送待删除广播请求至存储进程;所述存储进程发送待删除请求至与所述待解除逻辑卷对应设置的存储节点。
84.在一个实施例中,当程序被处理器执行时,实现以下步骤:获取与所述待解除逻辑卷对应设置的存储节点,将与所述存储节点对应的逻辑卷设置为离线状态,并判断所述逻辑卷是否存在未返回的io请求;若所述逻辑卷存在未返回的io请求,则设置释放调用函数;若所述逻辑卷不存在未返回的io请求,则调用所述释放调用函数。
85.在一个实施例中,当程序被处理器执行时,实现以下步骤:监听集群的状态,若所述集群处于稳定状态,则通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象;若所述集群不处于稳定状态,则暂停通信连接所述客户端与所述iscsi服务端,并注册watcher于任一存储节点的逻辑卷,或,暂停确定待解除逻辑卷,获取与所述待解除逻辑卷关联的元数据对象。
86.在一个实施例中,当程序被处理器执行时,实现以下步骤:监测所述任一待解除逻辑卷是否已完成卷映射解除,若所述任一待解除逻辑卷已完成卷映射解除,则返回卷映射解除结果至所述客户端。
87.在一个实施例中,当程序被处理器执行时,实现以下步骤:基于所述元数据对象,检测所述元数据对象的地址信息、路径信息,检测不到所述元数据对象的地址信息、路径信息时,卷映射解除完成。
88.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以
通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
89.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
90.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献