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

一种基于超融合的资源调度方法、装置、设备及可读介质与流程

2021-11-05 21:39:00 来源:中国专利 TAG:


1.本发明涉及资源调度技术领域,尤其涉及一种基于超融合的资源调度方法、装置、设备及可读介质。


背景技术:

2.在大数据时代,为了存储和处理海量数据,需要规模较大的服务器集群或者数据中心,一般来说,这些集群上运行着数量众多类型纷杂的应用程序和服务,目前大型厂商的集群节点数动辄几百节点、几千节点,近两年的云数据结合更是将大数据集群的节点数提高到了一个新的高度,部分国内领先的厂商已经在云上通过了数万节点的大数据集群认证。而超融合云上搭建大数据集群已成为近一两年的流行趋势,在超融合云上的大数据节点数较多且增长速度较快。
3.yarn是大数据集群主流的资源调度组件,采用了master/slave(主从)架构,master负责对各个节点上的资源进行统一的管理和调度,yarn的基本架构包含:resourcemanager(资源管理器)、applicationmaster(应用管理)、nodemanager(节点资源管理器)、container(资源分配单位)。resourcescheduler(资源调度器)是yarn最核心的组件之一,是rm中的一个插拔式服务组件。
4.现有技术中,资源调度器的调度方式主要有以下几种:fifo scheduler把应用按照提交的顺序排成一个队列,再按照队列顺序分配资源;capacity scheduler整个集群可以通过设置多个队列的方式给多个组织或单位提供服务,并且通过配置最大、最低资源参数来防止资源被过多地占用或无法占用;fair scheduler的设计目标是为所有的应用分配公平的资源,如何公平地分配则通过参数设置;标签调度为每个node节点和调度器中的队列设置若干标签,以限制该队列只能占用包含对应标签的资源节点,可以跟其他调度策略混合使用;资源抢占模型在资源调度器中设置一个最小资源量和一个最大资源量,资源调度器会将负载较低的队列的资源暂时分配给负载重的队列,负载较低的队列资源满足本身最小资源量,其他资源被暂时抢占使用。
5.然而,yarn的资源调度方面是无序调度,小作业情况下会选择在自己的jvm(java virtual machine,java虚拟机)中运行任务,大作业情况下根据任务的数据信息调度任务,分配给存储数据的节点。在进行任务信息评估时会消耗自身资源来运算,降低了整体的任务性能。在任务调度时根据资源分配单位所需资源选择合适的节点运行,此时分配的资源已经确定,只有在任务完成后采能释放,不能充分利用低优先级任务的资源算力。


技术实现要素:

6.有鉴于此,本发明实施例的目的在于提出一种基于超融合的资源调度方法、装置、设备及可读介质,在超融合架构下,优化任务资源分配和任务监控,将任务资源合理有序分配,减少分配运算时损耗资源。根据任务监控指标判定高并发阈值,对高并发任务做优先级划分,在不影响低优先级任务正常运行的情况下,将资源算力分配给高优先级任务,使高优
先级任务能够有效、快速执行。通过高并发模式的控制来实现任务调整,在有限的时间和资源情况下,提高整体运行效率,减少运行周期。
7.基于上述目的,本发明实施例的一方面提供了一种基于超融合的资源调度方法,包括以下步骤:创建超融合集群,将所述超融合集群中若干主机划分为多个主机群,并在每个所述主机群中创建多台虚拟机;响应于接收到队列任务请求,则基于所述主机群的队列标签数量和资源使用情况选择目标虚拟机,通过调度所述目标虚拟机执行所述队列任务请求,并在所述目标虚拟机上添加队列标签;检测全部所述主机群的队列标签数量总和,并基于所述主机群的资源使用情况判断是否进入高并发模式;以及若是进入高并发模式,则根据所述虚拟机上执行的所述队列任务请求的优先级对所述虚拟机的虚拟核粒度进行倍数增加。
8.在一些实施方式中,还包括:周期性检测全部所述主机群的队列标签数量总和,并基于所述主机群的资源使用情况判断是否退出高并发模式;若是退出高并发模式,则将进行虚拟核粒度调整的所述虚拟机设置为不接收新的队列任务请求加入状态;响应于将正在所述虚拟机上执行的所述队列任务请求执行完毕,则将所述虚拟机的虚拟核粒度恢复到初始配置,并设置为接收新的队列任务请求加入状态。
9.在一些实施方式中,还包括:响应于所述虚拟机执行所述队列任务请求完毕,则将对应的队列标签删除。
10.在一些实施方式中,还包括:根据提交所述队列任务请求的用户的优先级设置所述队列任务请求的优先级。
11.在一些实施方式中,基于所述主机群的队列标签数量和资源使用情况选择目标虚拟机包括:根据所述主机群的队列标签数量由小到大的顺序进行遍历,选择所述主机群中可用资源大于所述队列任务请求需要资源的虚拟机作为目标虚拟机。
12.在一些实施方式中,检测全部所述主机群的队列标签数量总和,并基于所述主机群的资源使用情况判断是否进入高并发模式包括:检测全部所述主机群的队列标签数量并做和以得到队列标签数量总和,判断所述队列标签数量总和是否超过预设数量;若所述队列标签数量总和超过预设数量,则进一步判断所述主机群的资源使用情况指数是否超过预设指数;若是所述主机群的资源使用情况指数超过预设指数,则确认进入高并发模式。
13.在一些实施方式中,根据所述虚拟机上执行的所述队列任务请求的优先级对所述虚拟机的虚拟核粒度进行倍数增加包括:判断是否存在低优先级的用户提交的队列任务请求;若是存在低优先级的用户提交的队列任务请求,则返回所述队列任务请求使用的虚拟机列表;基于所述优先级对所述虚拟机列表中虚拟机的虚拟核粒度进行倍数增加。
14.本发明实施例的另一方面,还提供了一种基于超融合的资源调度装置,包括:第一模块,配置用于创建超融合集群,将所述超融合集群中若干主机划分为多个主机群,并在每个所述主机群中创建多台虚拟机;第二模块,配置用于响应于接收到队列任务请求,则基于所述主机群的队列标签数量和资源使用情况选择目标虚拟机,通过调度所述目标虚拟机执行所述队列任务请求,并在所述目标虚拟机上添加队列标签;第三模块,配置用于检测全部所述主机群的队列标签数量总和,并基于所述主机群的资源使用情况判断是否进入高并发模式;以及第四模块,配置用于若是进入高并发模式,则根据所述虚拟机上执行的所述队列任务请求的优先级对所述虚拟机的虚拟核粒度进行倍数增加。
15.本发明实施例的再一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述方法的步骤。
16.本发明实施例的再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。
17.本发明具有以下有益技术效果:在超融合架构下,优化任务资源分配和任务监控,将任务资源合理有序分配,减少分配运算时损耗资源。根据任务监控指标判定高并发阈值,对高并发任务做优先级划分,在不影响低优先级任务正常运行的情况下,将资源算力分配给高优先级任务,使高优先级任务能够有效、快速执行。通过高并发模式的控制来实现任务调整,在有限的时间和资源情况下,提高整体运行效率,减少运行周期。
附图说明
18.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
19.图1为本发明提供的基于超融合的资源调度方法的实施例的示意图;
20.图2为本发明提供的基于超融合的资源调度装置的实施例的示意图;
21.图3为本发明提供的计算机设备的实施例的示意图;
22.图4为本发明提供的计算机可读存储介质的实施例的示意图。
具体实施方式
23.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
24.需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
25.基于上述目的,本发明实施例的第一个方面,提出了基于超融合的资源调度方法的实施例。图1示出的是本发明提供的基于超融合的资源调度方法的实施例的示意图。如图1所示,本发明实施例包括如下步骤:
26.s01、创建超融合集群,将超融合集群中若干主机划分为多个主机群,并在每个主机群中创建多台虚拟机;
27.s02、响应于接收到队列任务请求,则基于主机群的队列标签数量和资源使用情况选择目标虚拟机,通过调度目标虚拟机执行队列任务请求,并在目标虚拟机上添加队列标签;
28.s03、检测全部主机群的队列标签数量总和,并基于主机群的资源使用情况判断是否进入高并发模式;以及
29.s04、若是进入高并发模式,则根据虚拟机上执行的队列任务请求的优先级对虚拟机的虚拟核粒度进行倍数增加。
30.在本实施例中,通过添加虚拟机的队列标签,通过物理资源和任务请求资源情况合理调度队列。解决yarn调度器无序分配资源的问题。通过优化ics监控模块的检测功能,可以获取所有队列、任务的资源指标和详细信息,对所述指标信息进行判断,是否达到高并发任务的阈值。在高并发任务的情况下进行任务资源调度,在不改变任务的任务资源情况下将中等及以下优先级任务的cpu的算力资源调度到优先级高的任务中。解决高并发任务时运行效率低及运行周期长的问题。规划用户组种类,按照用户组优先级判断任务级别。在高并发模式下对级别低的任务执行虚拟化核粒度修改,将算力分配给优先级较高的任务。
31.在本实施例中,yarn超融合集群建立及队列生成设置包括:搭建超融合云上集群、部署超融合平台上的虚拟机;yarn队列虚拟机优先级预设。其中,搭建超融合云上集群包括:选择超融合一体机构建云平台,将超融合一体机转换为计算管理节点与计算节点;部署本地存储池、sds节点,将所有服务器节点的存储设备批量建立本地存储池,在超融合平台上每个服务器主机节点建立sds虚拟机保证数据互通,数据均衡。部署超融合平台上的虚拟机包括:在每台虚拟机上增加队列标签,队列标签由yarn队列下发时触发生效,相同队列组的虚拟机可在超融合云平台上被批量控制;yarn队列虚拟机优先级预设包括:将从属于不同主机的虚拟机划分为同一队列的优先级高于同一主机的vm划分为相同主机的虚拟机划分为同一队列的优先级。
32.在本发明的一些实施例中,还包括:周期性检测全部主机群的队列标签数量总和,并基于主机群的资源使用情况判断是否退出高并发模式;若是退出高并发模式,则将进行虚拟核粒度调整的虚拟机设置为不接收新的队列任务请求加入状态;响应于将正在虚拟机上执行的队列任务请求执行完毕,则将虚拟机的虚拟核粒度恢复到初始配置,并设置为接收新的队列任务请求加入状态。
33.在本实施例中,当检测到队列标签数量小于预设数量或资源使用指数小于预设指数时,退出高并发模式,进行虚拟核粒度调整的虚拟机执行本轮队列后暂不接收新队列加入,执行配置恢复,配置恢复后正常接收新的队列。
34.在本发明的一些实施例中,还包括:响应于虚拟机执行队列任务请求完毕,则将对应的队列标签删除。
35.在本发明的一些实施例中,还包括:根据提交队列任务请求的用户的优先级设置队列任务请求的优先级。
36.在本实施例中,建立用户组,为每个提交队列任务选择不同的用户,按照任务优先级分为高优先级、较高优先级、中优先级和低优先级。
37.在本发明的一些实施例中,基于主机群的队列标签数量和资源使用情况选择目标虚拟机包括:根据主机群的队列标签数量由小到大的顺序进行遍历,选择主机群中可用资源大于队列任务请求需要资源的虚拟机作为目标虚拟机。
38.在本实施例中,将超融合的n台物理服务器主机按实际需求划分为n的倍数台虚拟机,若每台物理服务器主机创建m台虚拟机,则虚拟机总数为m*n台,每台虚拟机分配的虚拟cpu资源为x。在启动队列后,将该队列资源优先利用一台虚拟机资源n1的m1。
39.当同一队列启动在n1的m1时,判断x与队列任务数的比值是否小于单任务需要的cpu资源,若是x与队列任务数的比值小于单任务需要的cpu资源,将优先发起在非n1的虚拟机上,例如调度n2的m1的虚拟机资源。
40.当新队列发起时,遍历n台主机的虚拟机的队列标签,优先发起在队列标签最少的主机上。
41.在本发明的一些实施例中,检测全部主机群的队列标签数量总和,并基于主机群的资源使用情况判断是否进入高并发模式包括:检测全部主机群的队列标签数量并做和以得到队列标签数量总和,判断队列标签数量总和是否超过预设数量;若队列标签数量总和超过预设数量,则进一步判断主机群的资源使用情况指数是否超过预设指数;若是主机群的资源使用情况指数超过预设指数,则确认进入高并发模式。
42.在本实施例中,通过ics的监控模块对所有虚拟机执行监控,获取调整队列所需指标信息。预设队列标签数量阈值为m,检测平台所有虚拟机上队列标签数量总和;当队列标签数量总和大于m时,开始检测每台物理服务器主机的cpu使用情况,内存使用情况;当cpu使用情况,内存使用情况超过阈值,判断进入高并发模式。
43.在本实施例中,当队列标签数量总和小于m时,轮巡监控模块不开启。资源供现有队列使用。
44.在本发明的一些实施例中,根据虚拟机上执行的队列任务请求的优先级对虚拟机的虚拟核粒度进行倍数增加包括:判断是否存在低优先级的用户提交的队列任务请求;若是存在低优先级的用户提交的队列任务请求,则返回队列任务请求使用的虚拟机列表;基于优先级对虚拟机列表中虚拟机的虚拟核粒度进行倍数增加。
45.在本实施例中,进入高并发模式后,判断是否存在低优先级用户提交的任务队列,若存在,则返回该队列所使用的虚拟机主机列表;对不同虚拟机的配置分组调整,对返回的虚拟机列表的相同队列作为一组,通过虚拟核技术调整,将虚拟核的虚拟粒度调整,中优先级队列所在虚拟机的虚拟粒度为初始虚拟粒度的2倍,低优先级队列所在虚拟机的虚拟粒度为初始粒度的3倍。虚拟核粒度配置生效,该虚拟机在队列中所使用的核数增加,部分该队列的虚拟机自动被释放出来。在保持队列不变动的情况下降低中、低优先级队列的算力。
46.在本发明的一些实施例中,还包括:将进行虚拟核粒度调整的虚拟机添加优化标识,在执行任务前不会再次被优化。
47.需要特别指出的是,上述基于超融合的资源调度方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于基于超融合的资源调度方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在实施例之上。
48.基于上述目的,本发明实施例的第二个方面,提出了一种基于超融合的资源调度装置。图2示出的是本发明提供的基于超融合的资源调度装置的实施例的示意图。如图2所示,本发明实施例包括如下模块:第一模块s11,配置用于创建超融合集群,将超融合集群中若干主机划分为多个主机群,并在每个主机群中创建多台虚拟机;第二模块s12,配置用于响应于接收到队列任务请求,则基于主机群的队列标签数量和资源使用情况选择目标虚拟机,通过调度目标虚拟机执行队列任务请求,并在目标虚拟机上添加队列标签;第三模块s13,配置用于检测全部主机群的队列标签数量总和,并基于主机群的资源使用情况判断是否进入高并发模式;以及第四模块s14,配置用于若是进入高并发模式,则根据虚拟机上执行的队列任务请求的优先级对虚拟机的虚拟核粒度进行倍数增加。
49.基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备。图3示出的
是本发明提供的计算机设备的实施例的示意图。如图3所示,本发明实施例包括如下装置:至少一个处理器s21;以及存储器s22,存储器s22存储有可在处理器上运行的计算机指令s23,指令由处理器执行时实现以上方法的步骤。
50.本发明还提供了一种计算机可读存储介质。图4示出的是本发明提供的计算机可读存储介质的实施例的示意图。如图4所示,计算机可读存储介质存储s31有被处理器执行时执行如上方法的计算机程序s32。
51.最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,基于超融合的资源调度方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(rom)或随机存储记忆体(ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
52.此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
53.此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
54.本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
55.在一个或多个示例性设计中,功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括ram、rom、eeprom、cd

rom或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(dsl)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、dsl或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(cd)、激光盘、光盘、数字多功能盘(dvd)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
56.以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例
的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
57.应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
58.上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
59.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
60.所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
再多了解一些

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

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

相关文献