调度权限获取方法、设备、系统及存储介质技术方案

技术编号:37701578 阅读:14 留言:0更新日期:2023-06-01 23:46
本申请实施例提供一种调度权限获取方法、设备、系统及存储介质。在本申请实施例中,多个管控节点可通过访问存储服务节点,争抢更新存储服务节点存储的租约信息的权限成为主节点,以主节点身份拥有对存储集群的数据的调度权限,实现了多个管控节点的选主。这种抢主方式相较于分布式锁方式无需等待分布式锁失效,有助于提高主备节点切换效率。助于提高主备节点切换效率。助于提高主备节点切换效率。

【技术实现步骤摘要】
调度权限获取方法、设备、系统及存储介质


[0001]本申请涉及数据存储
,尤其涉及一种调度权限获取方法、设备、系统及存储介质。

技术介绍

[0002]为了解决海量数据的管理问题,引入了数据按分区(Partition)管理的方案,该方案使用管控节点管理分区的数据,并负责将分区调度到多个存储节点。为了提高系统稳健性,数据存储管理系统一般部署有多个管控节点。为了防止数据存储系统脑裂,多个管控节点需要选择出主节点,由主节点负责分区调度,从而保持存储节点之间的数据一致性。因此,如何进行多个管控节点之间的选主,成为本领域亟待解决的技术问题。

技术实现思路

[0003]本申请的多个方面提供一种调度权限获取方法、设备、系统及存储介质,用以解决多个管控节点选主问题。
[0004]本申请实施例提供一种调度权限获取方法,适用于管控节点,包括:
[0005]通过访问存储服务节点,与其它管控节点争抢对所述存储服务节点存储的租约信息的更新权限;所述存储服务节点具有保障存储集群的数据一致性的功能;
[0006]若争抢到对所述存储服务节点存储的租约信息的更新权限,将所述管控节点的节点状态设置为主节点状态,以使所述管控节点获取对所述存储集群的调度权限。
[0007]本申请实施例还提供一种调度权限获取方法,适用于存储服务节点,所述存储服务节点具有保障存储集群的数据一致性的功能,并存储有多个管控节点中主节点的租约信息;
[0008]所述方法包括:
[0009]获取所述管控节点发出的租约更新请求;所述租约更新请求为所述管控节点争抢对所述存储服务节点存储的租约信息的更新权限而发出;
[0010]从所述租约更新请求中,获取所述租约更新请求携带的目标租约信息;
[0011]在所述目标租约信息和所述存储服务节点当前存储的租约信息一致的情况下,更新所述存储服务节点存储的租约信息,以使所述管控节点获取对所述存储服务节点存储的租约信息的更新权限;
[0012]将租约更新成功消息返回给所述管控节点,以供所述管控节点响应所述租约更新成功消息将节点状态设置为主节点状态以获取所述存储集群的调度权限。
[0013]本申请实施例还提供一种数据存储系统,包括:多个管控节点和存储集群的存储服务节点;
[0014]所述存储服务节点,具有保障所述存储集群的数据一致性的功能,并存储有所述多个管控节点中主节点的租约信息;所述主节点对所述存储集群具有调度权限;
[0015]所述管控节点,用于执行上述由管控节点执行的调度权限获取方法中的步骤;
[0016]所述存储服务节点,用于执行由存储服务节点执行的调度权限获取方法中的步骤。
[0017]本申请实施例还提供一种计算设备,包括:存储器、处理器和通信组件;所述存储器,用于存储计算机程序;
[0018]所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行上述管控节点执行的调度权限获取方法,和/或存储服务节点执行的调度权限获取方法中的步骤。
[0019]本申请实施例还提供一种存储有计算机指令的计算机可读存储介质,当所述计算机指令被一个或多个处理器执行时,致使所述一个或多个处理器执行上述管控节点执行的调度权限获取方法,和/或存储服务节点执行的调度权限获取方法中的步骤。
[0020]在本申请实施例中,多个管控节点可通过争抢更新存储服务节点存储的租约信息的权限成为主节点,以主节点身份拥有对存储集群的数据的调度权限,实现了多个管控节点的选主。这种抢主方式相较于分布式锁方式无需等待分布式锁失效,有助于提高主备节点切换效率。
附图说明
[0021]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0022]图1为本申请实施例提供的存储管理系统的结构示意图;
[0023]图2为本申请实施例提供的多管控节点选主的过程示意图;
[0024]图3为本申请实施例提供的主节点进行选主的过程示意图;
[0025]图4为本申请实施例提供的备节点进行选主的过程示意图;
[0026]图5为本申请实施例提供的管控节点的节点状态切换过程示意图;
[0027]图6为本申请实施例提供的管控节点对存储集群进行数据调度的过程示意图;
[0028]图7

图9为本申请实施例提供的调度权限获取方法的流程示意图;
[0029]图10为本申请实施例提供的计算设备的结构示意图。
具体实施方式
[0030]为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0031]在本申请一些实施例中,为了实现多管控节点选主,多个管控节点可通过访问存储服务节点,争抢更新存储服务节点存储的租约信息的权限成为主节点,以主节点身份拥有对存储集群的数据的调度权限,实现了多个管控节点的选主。这种抢主方式相较于分布式锁方式无需等待分布式锁失效,有助于提高主备节点切换效率。
[0032]以下结合附图,详细说明本申请各实施例提供的技术方案。
[0033]应注意到:相同的标号在下面的附图以及实施例中表示同一物体,因此,一旦某一物体在一个附图或实施例中被定义,则在随后的附图和实施例中不需要对其进行进一步讨论。
[0034]图1为本申请实施例提供的存储管理系统的结构示意图。如图1所示,存储管理系统S10是指对存储集群30进行存储管理的系统。该系统S10主要包括:多个管控节点10和存储服务节点20。在本申请各实施例中,“多个”是指不止一个,即2个或2个以上。
[0035]在本实施例中,存储服务节点20可提供数据存储相关的服务功能,如保障存储集群30的数据一致性的功能。存储服务节点20可基于分布式的一致性协议(如raft协议)来保障存储集群30的数据一致性。当然,存储服务节点20除了具有保障存储集群30的数据一致性功能之外,还可具有其它数据存储相关的服务功能,如存储事务处理等。
[0036]存储服务节点20可实现为具有提供保障存储集群30的数据一致性服务的设备、装置、虚拟机(Virtual Machine,VM)、容器或软件功能模块等。提供数据一致性服务的设备可以为单一服务器设备,也可以云化的服务器阵列。另外,提供数据一致性服务的设备也可以指具备相应服务能力的其他计算设备,例如电脑等终端设备(运行服务程序)等。在本实施例中,存储服务节点20可部署于云端,例如边缘云系统的中心云中。当然,存储服务节点20也可与存储集群30中的存储节点301部署于同一物理机。
[0037]上述存储集群30是指用于存储数据的集群,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种调度权限获取方法,适用于管控节点,所述方法包括:通过访问存储服务节点,与其它管控节点争抢对所述存储服务节点存储的租约信息的更新权限;所述存储服务节点具有保障存储集群的数据一致性的功能;若争抢到对所述存储服务节点存储的租约信息的更新权限,将所述管控节点的节点状态设置为主节点状态,以使所述管控节点获取对所述存储集群的调度权限。2.根据权利要求1所述的方法,所述通过访问存储服务节点,与其它管控节点争抢对所述存储服务节点存储的租约信息的更新权限,包括:获取目标租约信息;所述目标租约信息为所述管控节点本地存储的租约信息或获取的所述存储服务节点存储的第一租约信息;将携带有目标租约信息的租约更新请求提供给所述存储服务节点,以供所述存储服务节点在所述目标租约信息与所述存储服务节点当前存储的第二租约信息一致的情况下,更新所述第二租约信息,以得到更新后的租约信息,并返回租约更新成功消息;在接收到所述租约更新成功消息的情况下,确定争抢到对所述存储服务节点存储的租约信息的更新权限;所述方法还包括:响应于所述租约更新成功消息,将本地存储的租约信息修改为所述更新后的租约信息。3.根据权利要求2所述的方法,所述存储服务节点在所述目标租约信息和所述存储服务节点存储的租约信息不一致的情况下,向所述管控节点返回租约更新失败消息;所述方法还包括:在接收到所述租约更新失败消息的情况下,确定未争抢到对所述存储服务节点存储的租约信息的更新权限;响应于所述租约更新失败消息,将所述管控节点的节点状态设置为备节点状态;处于备节点状态的管控节点对所述存储集群无调度权限。4.根据权利要求2或3所述的方法,在将携带有目标租约信息的租约更新请求提供给所述存储服务节点时,所述管控节点处于主节点状态;所述获取目标租约信息,包括:获取本地存储的租约信息,作为所述目标租约信息;所述方法还包括:以所述本地存储的租约信息为前置条件,生成包含该前置条件的原子式的租约更新请求。5.根据权利要求4所述的方法,所述存储服务节点,存储有第一输入/输出IO屏障信息;处于主节点状态的管控节点存储有第二IO屏障信息;所述方法还包括:以所述第二IO屏障信息为前置条件,生成针对所述存储集群的数据调度请求;将所述数据调度请求提供给所述存储服务节点,以供所述存储服务节点在所述第一IO屏障信息与所述第二IO屏障信息一致的情况下,允许所述处于主节点的管控节点对所述存储集群进行数据调度;根据预设的数据调度策略,对所述存储集群进行数据调度。6.根据权利要求2或3所述的方法,在将携带有目标租约信息的租约更新请求提供给所
述存储服务节点时,所述管控节点处于备节点状态;所述获取目标租约信息,包括:从所述存储服务节点,获取所述存储服务节点存储的所述第一租约信息;在所述第一租约信息与所述管控节点本地存储的租约信息一致的情况下,将所述第一租约信息作为所述目标租约信息;所述方法还包括:以所述第一租约信息为前置条件,生成包含该前置条件的原子式的租约更新请求。7.根据权利要求6所述的方法,还包括:在所述第一租约信息与所述管控节点本地存储的租约信息不一致的情况下,将所述管控节点的节点状态保持为备节点状态;并将所述本地存储的租约信息更新为所述第一租约信息;其中,处于备节点状态的管控节点对所述存...

【专利技术属性】
技术研发人员:裴晓辉李文兆周文翠龚晓峰胡康达杨生鹏邹忠郁黄建
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

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

1