云盘调度方法、系统、电子设备及存储介质技术方案

技术编号:38204517 阅读:7 留言:0更新日期:2023-07-21 16:50
本申请提供了一种云盘调度方法、系统、电子设备及存储介质,涉及分布式存储技术领域。方法包括:基于动态更新的故障域,确定云盘分片的目标存储节点;其中,故障域包括云盘分片故障域,在第一时间间隔内云盘分片故障域中分片域存储节点的数量上限为第一数量阈值;将云盘分片调度至目标存储节点。根据本申请的技术方案,通过构建动态更新的故障域,从而在时间维度和空间维度实现对调度目的地的范围进行动态限制,可以在存在未知异常云盘分片的情况下,防止异常云盘分片的调度所导致的级联故障,有效避免大规模故障的发生,防止集群雪崩,又能实现云盘分片的正常调度。又能实现云盘分片的正常调度。又能实现云盘分片的正常调度。

【技术实现步骤摘要】
云盘调度方法、系统、电子设备及存储介质


[0001]本申请涉及分布式存储
,尤其涉及一种云盘调度方法、系统、电子设备及存储介质。

技术介绍

[0002]在基于分布式文件系统构建的分布式块存储系统,其中云盘会按逻辑区域进行分片,管控服务器的一个主要工作就是对云盘及分片进行调度。在分布式块存储的应用场景下,如果云盘或其分片出现问题,会将其调度到其他存储节点上,就会导致异常故障扩散产生级联故障,从而导致大规模存储节点异常进而系统雪崩的问题。

技术实现思路

[0003]本申请实施例提供一种云盘调度方法、系统、电子设备及存储介质,以有效避免异常云盘导致的级联故障。
[0004]第一方面,本申请实施例提供了一种云盘调度方法,包括:基于动态更新的故障域,确定云盘分片的目标存储节点;其中,所述故障域包括云盘分片故障域,在第一时间间隔内所述云盘分片故障域中分片域存储节点的数量上限为第一数量阈值;将所述云盘分片调度至所述目标存储节点。
[0005]第二方面,本申请实施例提供了一种云盘调度系统,包括:多个存储节点;管控服务器,用于执行本申请任一实施例提供的方法,以将云盘分片调度至目标存储节点上;客户端,从所述管控服务器获取所述目标存储节点的信息,并基于所述目标存储节点对所述云盘分片进行写/读操作。
[0006]第三方面,本申请实施例提供一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,处理器在执行计算机程序时实现本申请任一实施例提供的方法。
[0007]第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本申请任一实施例提供的方法。
[0008]与现有技术相比,本申请实施例的技术方案具有如下优点:
[0009]通过构建动态更新的故障域,从而在时间维度和空间维度实现对调度目的地的范围进行动态限制,一方面可以在存在未知异常云盘分片的情况下,防止异常云盘分片的调度所导致的级联故障,有效避免大规模故障的发生,防止集群雪崩;另一方面,云盘分片故障域中的存储节点动态更新,云盘分片的调度目的地可以根据其调度类型不同,从云盘分片故障域、全局故障域中或全局故障域外的存储节点中进行选择,从而在存在未知异常云盘分片的情况下,进行任一调度类型的正常云盘调度。
[0010]进一步地,前述的故障域均可以看作是划定了一个隔离区,通过云盘分片的异常调度,将疑似问题的云盘分片圈定在了一个动态范围内,然后进一步筛选异常云盘分片,定位故障源,进而对其进行故障处理,从而精确筛选定位异常云盘分片进行精准防控。
[0011]上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述
的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。
附图说明
[0012]在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
[0013]图1示出本申请实施例提供的云盘调度系统的架构图;
[0014]图2示出本申请实施例一提供的云盘调度方法的流程图;
[0015]图3示出本申请实施例一提供的令牌桶滑动窗口算法的示意图;
[0016]图4示出本申请实施例一中构建云盘故障域的示意图;
[0017]图5示出本申请实施例一中构建全局故障域的示意图;
[0018]图6示出本申请实施例二提供的云盘调度方法的流程图;
[0019]图7示出本申请实施例二中均衡调度的示意图;
[0020]图8示出本申请实施例二中容灾操作的示意图;
[0021]图9示出本申请实施例三提供的云盘调度方法的流程图;
[0022]图10示出本申请实施例三中筛选异常云盘分片的示意图;
[0023]图11示出本申请实施例五提供的电子设备的框图。
具体实施方式
[0024]在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
[0025]为便于理解本申请实施例的技术方案,以下对本申请实施例的相关技术进行说明,以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。
[0026]应用场景
[0027]图1示出本申请实施例提供的云盘调度系统的架构图。如图1所示,该云盘调度系统包括客户端(Client)、管控服务器(Block Master)和多个存储节点(Block Server,也叫做块存储服务器,简称BS)。本申请实施例中,云盘调度系统是一套分布式系统,可以基于公有云块存储为用户提供云盘服务,即本申请实施例的云盘调度系统可以应用于分布式块存储场景中。
[0028]示例性地,云盘(device)按逻辑空间进行分片,记为云盘分片(Segment,简称Seg),通常为固定大小的分片,即各云盘分片大小相同。管控服务器负责对云盘进行调度,通过云盘调度算法将该云盘的云盘分片调度到多个存储节点上,例如将云盘分片Seg1、Seg2、Seg3分别调度到不同的存储节点上。客户端通过跟管控服务器交互得到云盘分片所在的位置,即云盘分片所在的存储节点的信息,进而跟该存储节点建立连接,并向该存储节点请求对云盘分片进行的写/读(Input/Output,也可以叫做输入/输出,简称I/O)操作,实现云盘调度。
[0029]基于云盘调度的目的不同,云盘分片的调度类型可以包括:异常调度、均衡调度和其他调度。其中,其他调度即为非异常调度和均衡调度的调度。示例性地,异常调度用于故障处理,例如在分布式存储系统中,存储节点可能出现失效或宕机等故障情况,也可能出现网络消息可能丢失或延迟等故障情况,面对这些故障情况,云盘调度需要尽可能快速完成,以便于恢复云盘的正常I/O操作。均衡调度用于各存储节点之间的负载均衡,从而提高服务质量。除了异常调度和均衡调度,还可能有其他调度,如为了运维需求或其他原因,需要对存储节点进行升级、下线或隔离等操作,进而需要主动将该存储节点上的云盘分片调度到其他存储节点上,避免后续影响该存储节点上云盘分片的I/O操作。
[0030]级联故障是由于正反馈循环而随时间增加的故障类型。初期由单个存储节点或子系统故障触发,然后它会将负载分散到系统的其他存储节点上,反过来又进一步增加系统其他存储节点故障的可能性,从而导致恶性循环或滚雪球效应。在分布式块存储应用场景下,主要面临如下两类级联故障场景:1)云盘分片在存储节点上进行I/O处理时,会因为代码问题(bug)导致存储节点核心转储(core dump)或者把存储节点的线程挂起(Hang)住等故障情况,从而触发云盘分本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种云盘调度方法,包括:基于动态更新的故障域,确定云盘分片的目标存储节点;其中,所述故障域包括云盘分片故障域,在第一时间间隔内所述云盘分片故障域中分片域存储节点的数量上限为第一数量阈值;将所述云盘分片调度至所述目标存储节点。2.根据权利要求1所述的方法,其中,所述云盘分片对应有域令牌,用于提供所述目标存储节点加入所述云盘分片故障域的入域权限;所述域令牌的数量上限为所述第一数量阈值;每隔第二时间间隔,所述域令牌的数量增加一个。3.根据权利要求2所述的方法,其中,在所述云盘分片的域令牌的数量为1的情况下,确定的目标存储节点需要与所述云盘分片已有的分片域存储节点之间至少跨越两个交换机。4.根据权利要求1所述的方法,还包括:响应于所述云盘分片满足入域条件,将所述目标存储节点作为所述云盘分片的分片域存储节点加入所述云盘分片的云盘分片故障域;其中,所述入域条件包括以下任一者:所述云盘分片的调度类型为异常调度且所述云盘分片的分片域存储节点的数量未达到所述第一数量阈值;所述云盘分片的调度类型为均衡调度,且所述云盘分片的分片域存储节点的数量达到预设门限值但未达到所述第一数量阈值;或者,响应于所述云盘分片满足出域条件,从所述云盘分片故障域中选择分片域存储节点退出所述云盘分片故障域;其中,所述出域条件包括以下任一者:对所述云盘分片的安全检查通过;收到对所述云盘分片故障域的解除指令;所述云盘分片的域令牌数量大于所述云盘分片故障域中分片域存储节点的数量。5.根据权利要求1所述的方法,其中,所述故障域还包括云盘故障域,所述方法还包括:针对任一云盘,按照分片域存储节点所加入的云盘分片故障域的数量从多到少,对多个分片域存储节点进行排序;并选择前N个分片域存储节点加入所述云盘故障域;其中,N等于第二数量阈值。6.根据权利要求1所述的方法,其中,所述故障域还包括全局故障域,所述方法还包括:将最先达到第三数量阈值的云盘故障域作为所述全局故障域。7.根据权利要求6所述的方法,还包括:响应于所述全局故障域中各存储节点所承载的云盘分片的总数量超过第四数量阈值,重新确定所述全局故障域;其中,所述第四数量阈值基于全局存储节点所承载的云盘分片的数量平均值而确定。8.根据权利要求1至7任一项所述的方法,基于动态更新的故障域,确定云盘分片的目标存储节点,包括:根据所述云盘分片的调度类型,从待选存储节点中确定所述目标存储节点;其中,所述待选存储节点包括所述云盘分片的分片域存储节点、全局故障域中的第一存储节点以及所述全局故障域外的第二存储节点中的至少一种,所述全局故障域基于多个云盘分...

【专利技术属性】
技术研发人员:王银虎吴东
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

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

1