CN103761147B - 一种云平台中计算实例的管理方法及*** - Google Patents
一种云平台中计算实例的管理方法及*** Download PDFInfo
- Publication number
- CN103761147B CN103761147B CN201410018237.2A CN201410018237A CN103761147B CN 103761147 B CN103761147 B CN 103761147B CN 201410018237 A CN201410018237 A CN 201410018237A CN 103761147 B CN103761147 B CN 103761147B
- Authority
- CN
- China
- Prior art keywords
- calculated examples
- job
- queue
- run
- reserved
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007726 management method Methods 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000004458 analytical method Methods 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 6
- 238000007599 discharging Methods 0.000 claims description 3
- 238000010977 unit operation Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 8
- 240000000543 Pentas lanceolata Species 0.000 description 6
- 238000009499 grossing Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000003442 weekly effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229920001971 elastomer Polymers 0.000 description 1
- 239000000806 elastomer Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008140 language development Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种云平台中计算实例的管理方法及***,所述方法包括:接收单元接收用户的作业请求,存放到作业队列中;并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留;资源管理单元为可运行的作业安排运行用的计算实例;所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态申请/释放计算实例。通过本发明提供了一种云平台中计算实例的管理方法及***,能够提高计算实例的利用率,降低作业等待时间。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种云平台中计算实例的管理方法及***。
背景技术
云计算平台具有诸多优点,如节省管理和维护成本,定期的硬件升级,云计算平台在经济上和用户体验上对于高性能计算用户具有强大的吸引力,高性能计算用户将它用作主要的计算平台在经济上和操作上也越来越具有可行性。
现有的高性能计算用户提交的作业大多是短作业,例如对美国圣地亚哥超算中心公开的Data Star***工作负载的统计显示:大约70%的作业是运行时间少于1小时的短作业。用户在云平台上运行这些短作业并不方便。一方面,现有云平台普遍按小时计费,这些短作业的计算实例利用率较低。另一方面,高性能计算用户使用云计算实例必须经过申请和***配置两个阶段,实践显示有5-10分钟的等待时间。为了提高利用率,降低等待时间,用户会考虑把几个短作业积累起来一起运行。然而这些短作业往往是用户在调试程序、试验算法,需要立即执行。总之,现有的云平台下,高性能计算用户的作业等待时间长,计算实例的利用率低,对于高性能计算用户运行并行作业并不合适。
发明内容
本发明提供了一种云平台中计算实例的管理方法及***,能够提高每个计算实例的利用率,降低作业等待时间。
一方面,本发明提供了一种云平台中计算实例的管理方法,所述方法包括:
接收单元接收用户的作业请求,存放到作业队列中;
并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留;
资源管理单元为可运行的作业安排运行用的计算实例;
所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态申请/释放计算实例。
进一步地,所述并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留,包括:
并行作业调度单元采用回填作业调度算法对所述作业队列中的作业进行管理,具体包括:动态计算每个作业的优先级,将所述作业在所述作业队列中排序,按照排序顺序安排作业运行,当作业没有足够的计算实例可以运行时,根据作业脚本中给出的运行时间估计给队首的至少一个不能立即运行的高优先级作业做计算实例预留,将低优先级的小作业回填到计算实例预留所形成的孔洞中;
所述回填作业调度算法由触发事件触发,所述触发事件包括:有新作业到达,有正在运行的作业完成,有申请的新计算实例就绪。
进一步地,所述并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留,包括:
并行作业调度单元预测队首作业不能在预设的时间门限内开始运行时,通知资源管理单元申请新的计算实例,为队首作业重新做计算实例预留。
进一步地,所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态进行申请计算实例,包括:
资源管理单元根据当前作业队列的等待状态和正在运行的作业的运行状态,利用一个预设的门限值把作业队列中的短作业与长作业分离开,计算长作业与短作业的计算实例的需求之和,根据所述计算实例的需求之和申请计算实例;和/或,
所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态进行释放计算实例,包括:释放剩余租用时间少于释放检查周期的空闲计算实例。
进一步地,所述方法还包括:
日志单元记录***日志;
工作负载预测单元分析所述***日志,预测计算实例的需求;
所述资源管理单元根据所述工作负载预测单元预测的计算实例的需求申请/释放计算实例。
另一方面,本发明提供了一种云平台中计算实例的管理***,所述***包括:
接收单元,用于接收用户的作业请求,存放到作业队列中;
并行作业调度单元,用于查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留;
资源管理单元,用于为可运行的作业安排运行用的计算实例,并根据作业队列中的等待状态和正在运行的作业的运行状态申请/释放计算实例。
进一步地,所述并行作业调度单元,用于采用回填作业调度算法对所述作业队列中的作业进行管理,具体包括:动态计算每个作业的优先级,将所述作业在所述作业队列中排序,按照排序顺序安排作业运行,当作业没有足够的计算实例可以运行时,根据作业脚本中给出的运行时间估计给队首的至少一个不能立即运行的高优先级作业做计算实例预留,将低优先级的小作业回填到计算实例预留所形成的孔洞中;
所述回填作业调度算法由触发事件触发,所述触发事件包括:有新作业到达,有正在运行的作业完成,有申请的新计算实例就绪。
进一步地,所述并行作业调度单元,用于预测队首作业不能在预设的时间门限内开始运行时,通知资源管理单元申请新的计算实例,为队首作业重新做计算实例预留。
进一步地,资源管理单元,用于根据当前作业队列的等待状态和正在运行的作业的运行状态,利用一个预设的门限值把作业队列中的短作业与长作业分离开,计算长作业与短作业的计算实例的需求之和,根据所述计算实例的需求之和申请计算实例;和/或,
所述资源管理单元,用于释放剩余租用时间少于释放检查周期的空闲计算实例。
进一步地,所述***还包括:
日志单元,工作负载预测单元;
所述日志单元,用于记录***日志;
所述工作负载预测单元,用于分析所述***日志,预测计算实例的需求;
所述资源管理单元,还用于根据所述工作负载预测单元预测的计算实例的需求申请/释放计算实例。
通过本发明提供了一种云平台中计算实例的选择方法及***,能够通过对作业队列的管理来为作业分配计算实例资源,根据***日志来预测计算实例的需求,并根据该需求申请/释放计算实例,防止预留过多的计算实例造成资源浪费,通过该方法能够提高每个计算实例的利用率,降低作业等待时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种云平台中计算实例的选择方法流程图;
图2是本发明实施例提供的一种云平台中计算实例的选择***结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种云平台中计算实例的管理方法,参见图1,该方法包括:
步骤101:接收单元接收用户的作业请求,存放到作业队列中;
步骤102:并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留;
步骤103:资源管理单元为可运行的作业安排运行用的计算实例;
步骤104:所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态申请/释放计算实例。
通过本发明实施例提供了一种云平台中计算实例的管理方法,能够通过对作业队列的管理来为作业分配计算实例资源,根据***日志来预测计算实例的需求,并根据该需求申请/释放计算实例,防止预留过多的计算实例造成资源浪费,通过该方法能够提高每个计算实例的利用率,降低作业等待时间。
其中,优选地,步骤102,包括:
并行作业调度单元采用回填作业调度算法对所述作业队列中的作业进行管理,具体包括:动态计算每个作业的优先级,将所述作业在所述作业队列中排序,按照排序顺序安排作业运行,当作业没有足够的计算实例可以运行时,根据作业脚本中给出的运行时间估计给队首的至少一个不能立即运行的高优先级作业做计算实例预留,将低优先级的小作业回填到计算实例预留所形成的孔洞中;
所述回填作业调度算法由触发事件触发,所述触发事件包括:有新作业到达,有正在运行的作业完成,有申请的新计算实例就绪。
优选地,步骤102,包括:
并行作业调度单元预测队首作业不能在预设的时间门限内开始运行时,通知资源管理单元申请新的计算实例,为队首作业重新做计算实例预留。
优选地,所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态进行申请计算实例,包括:
资源管理单元根据当前作业队列的等待状态和正在运行的作业的运行状态,利用一个预设的门限值把作业队列中的短作业与长作业分离开,计算长作业与短作业的计算实例的需求之和,根据所述计算实例的需求之和申请计算实例;和/或,
所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态进行释放计算实例,包括:释放剩余租用时间少于释放检查周期的空闲计算实例。
其中,资源管理单元按照释放检查周期检查空闲计算实例。
优选地,日志单元记录***日志;
工作负载预测单元分析所述***日志,预测计算实例的需求;
所述资源管理单元根据所述工作负载预测单元预测的计算实例的需求申请/释放计算实例。
通过在申请新的计算实例前对计算实例的需求进行预测,能够避免申请过多的新的计算实例,进而节约计算实例资源,提高计算实例的利用率。
优选地,所述工作负载预测单元分析***日志,预测计算实例的需求,包括:
工作负载预测单元采用扩展的三阶Holt指数平滑方法预测计算实例的需求。
其中,并行作业调度器当且仅当下面条件符合任意一个时,申请新的计算实例:
1、队首作业的大小超过了当前用于计算的虚拟集群的计算容量;
2、队首作业的预计等待时间超过了预设的时间门限。
其中,预设的时间门限可设置为5分钟。
具体地,资源管理单元根据所述作业队列中的等待状态申请计算实例,有三种策略决定需要申请的新计算实例的数量:
a、策略一:只根据当前队首作业计算资源需求。采用这种策略时,低优先级作业的等待时间不再受限于预设的时间门限,因为它可能需要几次作业调度过程才能移动到队首。然而,相对较低的预设的时间门限值使得在多数时间呈现了一个较短的作业队列,因而只有很少作业会受到影响。
b、策略二:所有队列等待作业的资源需求之和。这种情况下,所有等待作业都会在预设的时间门限之前得到运行。显然,其代价是可能申请了过多的资源,导致使用成本增加。
c、策略三:根据当前作业队列状态计算得到一个优化的资源需求,可以看作前两个策略的混合方法。本策略使用一个门限值把队列中的短作业与长作业分离开,然后,根据策略一计算长作业的资源需求,根据策略二计算短作业的资源需求,将两项资源需求之和作为本策略的资源需求。这样设计的策略是,现在的高性能计算***中短作业非常多,而这些短作业有较多的机会利用现有计算实例的剩余资源。实际上,策略一与策略二也可以看作策略三的特例。
当为队列中的一个并行作业做资源分配或资源预留时,可以采用如下策略分配计算实例资源给并行作业:
a、在空闲计算实例中随机选择;
b、在空闲计算实例中根据剩余租用时间逆序选择,优先选择那些剩余租用时间较多的计算实例;
c、在空闲计算实例中根据剩余租用时间顺序选择,优先选择那些剩余租用时间较少的计算实例;
d、在空闲计算实例中根据空闲时间逆序选择,优先选择那些空闲时间较多的计算实例;
e、在空闲计算实例中根据空闲时间顺序选择,优先选择那些空闲时间较少的计算实例。
工作负载预测单元分析***日志,预测计算实例的需求,具体包括:
采用经典的指数平滑方法预测长期实例需求。该方法是一种用于处理非稳态噪声信号的相对简单同时又很健壮的预测方法,并广泛应用于企业的库存需求预测。与简单的移动平均方法相比,该方法考虑所有过去的历史,而不只是一个时间段的历史。同时,它的预测性能可以与很多复杂算法相媲美。
具体说,本发明采用扩展的三阶Holt指数平滑方法进行估计:
dk=αmk+(1-α)(dk-1+vk-1+ak-1/2)
vk=β(dk-dk-1)+(1-β)(vk-1+ak-1)
ak=γ(vk-vk-1)+(1-γ)ak-1
其中,dk、vk和ak是k时刻的估计值,α、β和γ是相应的平滑因子。这些平滑因子的值在0与1之间,决定了最近采样值的变化与历史数据之间的相对权重。这些平滑因子可以采用动态估计平滑因子方法估计,即定义平滑因子为平滑误差与平滑绝对误差的比值的绝对值。
其中,计算实例包括:按需实例、预留实例。所述按需实例为按照使用时间计费,所述预留实例为通过缴纳一个预付费用获得有效期内一定比例的价格折扣。
为了减少计算的复杂性和降低负载短期波动对配置决策的影响,本发明此处的实现以一周为配置决策时间间隔。在每周结束时,根据这一周采集的新数据预测未来的实例需求,并根据这些预测数据动态决策是否申请新的预留实例。具体讲,使用一个贪心算法调整它的预留实例,具体工作步骤如下:
步骤1:删除那些上周已经过期的预留实例,并更新当前的预留实例的库存。
步骤2:使用前面描述的长期预留实例需求预测算法预测未来几个月每周的实例需求。预测的时间跨度等于公共云平台提供预留实例的最长预留有效期。
步骤3:基于步骤2预测的计算实例需求,应用下面描述的贪心预留实例配置算法,得到新的预留实例需求。首先,逐个计算每个实例在不同预留时间(如1年期和3年期)内的利用率水平。然后,根据这个利用率结果,从最大折扣的预留实例开始,逐个检查所有的预留实例价格类型,并把第一个达到其最小利用率水平的预留实例价格类型作为预估的需求。在检查完下一个时间段(一周)所需的所有实例后,就有了一个预留实例需求。
步骤4:根据步骤3的结果购买预留实例,并更新预留实例的库存。
该预测算法根据新的采样值不断调整它的预测,上述在线预留实例配置算法具有有限的自我纠错能力。
以亚马逊EC2(Elastic Compute Cloud,弹性计算云)云平台为例,说明本发明实施例提供的方法的实现细节。此处的实现方式基于一个开源的Linux集群资源管理***SLURM(Simple Linux Utility for Resource Management,简易Linux资源管理工具)和开源的云平台虚拟集群工具StarCluster(一个MIT开发的计算实例管理工具)。***开发人员采用Python(一种面向对象动态编程语言)语言开发一个软件模块,作为SLURM的调度器插件,实现前面所述的作业调度算法和资源管理策略,并通过StarCluster实现EC2云平台上虚拟集群的管理。该模块是由事件驱动的,有四种基本输入事件:作业到达、作业运行完成、集群重新配置和各种定时事件。其运行过程简述如下:
当集群初始化时,该软件模块收集所有计算实例的信息,包括:计算实例名称、申请时间、计费周期、计算实例运行状态、IP地址、是否主节点等。
当作业到达或结束时,该软件模块会同步修改相应节点的状态,并试图调度队列中的作业。
当申请资源条件满足时,该软件模块通过调用StarCluster从EC2云中申请新计算实例。
当释放资源条件满足时,该软件模块通过调用StarCluster释放指定的空闲计算实例。
当新节点申请就绪,或空闲节点释放完成,或虚拟集群重新配置时,该软件模块更新所有节点的信息。所有上述***状态的改变都由该软件模块记录在***日志文件中。在每个周结束时,该软件模块根据***日志预测各种类型的预留实例需求,并根据当时的预留实例库存情况决定是否购买新的预留实例。当条件满足或已有预留实例过期时,该软件模块通过EC2云的API(Application Programming Interface,应用程序接口)接口函数购买新的预留实例。
StarCluster在申请/释放新计算实例时,增加/删除实例以及对计算实例的配置过程是串行进行的。计算实例的配置过程包括:设置计算节点名,更新hosts文件,配置文件***,创建用户,增加节点到SLURM分区等。这样在申请多个节点时,资源配置过程非常长。本发明重写了这个配置过程,改造成了完全并行的程序,缩减了配置时间。
为了保护用户隐私、数据安全和方便使用,本发明的***改造了StarCluster原有的虚拟机映像,设置了用户帐户,并安装了NFS(Network File System,网络文件***)文件***。当新计算节点就绪时,本发明的***配置新节点并让文件***工作在新节点上。用户的私有程序和重要数据存储在亚马逊EBS(Elastic Block Store,弹性块存储)或S3(Simple Storage Service,简单存储服务)上。用户的临时数据存储在计算实例的本地存储上,当作业完成后这些临时数据将被抹掉以保护用户的数据安全。
本发明实施例还提供了一种云平台中计算实例的管理***,参见图2,所述***包括:
接收单元201,用于接收用户的作业请求,存放到作业队列中;
并行作业调度单元202,用于查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留;
资源管理单元203,用于为可运行的作业安排运行用的计算实例,并根据作业队列中的等待状态和正在运行的作业的运行状态申请/释放计算实例。
其中,所述并行作业调度单元202,用于采用回填作业调度算法对所述作业队列中的作业进行管理,具体包括:动态计算每个作业的优先级,将所述作业在所述作业队列中排序,按照排序顺序安排作业运行,当作业没有足够的计算实例可以运行时,根据作业脚本中给出的运行时间估计给队首的至少一个不能立即运行的高优先级作业做计算实例预留,将低优先级的小作业回填到计算实例预留所形成的孔洞中;
所述回填作业调度算法由触发事件触发,所述触发事件包括:有新作业到达,有正在运行的作业完成,有申请的新计算实例就绪。
所述并行作业调度单元202,用于预测队首作业不能在预设的时间门限内开始运行时,通知资源管理单元申请新的计算实例,为队首作业重新做计算实例预留。
资源管理单元203,用于根据当前作业队列的等待状态和正在运行的作业的运行状态,利用一个预设的门限值把作业队列中的短作业与长作业分离开,计算长作业与短作业的计算实例的需求之和,根据所述计算实例的需求之和申请计算实例;和/或,
所述资源管理单元203,用于释放剩余租用时间少于释放检查周期的空闲计算实例。
所述***还包括:
日志单元,工作负载预测单元;
所述日志单元,用于记录***日志;
所述工作负载预测单元,用于分析所述***日志,预测计算实例的需求;
所述资源管理单元,还用于根据所述工作负载预测单元预测的计算实例的需求申请/释放计算实例。
优选地,所述工作负载预测单元204,用于采用扩展的三阶Holt指数平滑方法进行预测计算实例的需求。
本发明实施例中提供的***可以通过虚拟集群来实现,该***接受用户的作业请求并根据当前的计算节点状态和作业队列状态控制***的计算容量,提高计算资源的利用率,所述集群管理***分析***日志文件并动态调整不同类型预留实例的数量以提高长期的成本效益。
另外,本发明实施例提供的方法和***聚合了个人高性能计算用户的计算需求,可以在云计算平台上采用“团购模式”获得较低的使用费用。而且,每个预留实例可以获得更高的利用率,使购买的预留实例体现更多的使用价值。使用并行作业调度和资源管理***根据作业队列和作业提交历史可以动态调节虚拟集群的计算容量,并合理规划不同价格类型预留实例的数量配置。在多个用户之间共享计算实例可以更有效地利用由于公共云平台计费粒度造成的资源剩余,作为资源池可以降低申请计算实例所需的启动延迟时间。
上述设备内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种云平台中计算实例的管理方法,其特征在于,所述方法包括:
接收单元接收用户的作业请求,存放到作业队列中;
并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留;
资源管理单元为可运行的作业安排运行用的计算实例;
所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态申请/释放计算实例,
其中,所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态进行申请计算实例,包括:
资源管理单元根据当前作业队列的等待状态和正在运行的作业的运行状态,利用一个预设的门限值把作业队列中的短作业与长作业分离开,计算长作业与短作业的计算实例的需求之和,根据所述计算实例的需求之和申请计算实例;
所述方法还包括:
日志单元记录***日志;
工作负载预测单元分析所述***日志,预测计算实例的需求;
所述资源管理单元根据所述工作负载预测单元预测的计算实例的需求申请/释放计算实例。
2.根据权利要求1所述的方法,其特征在于,所述并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留,包括:
并行作业调度单元采用回填作业调度算法对所述作业队列中的作业进行管理,具体包括:动态计算每个作业的优先级,将所述作业在所述作业队列中排序,按照排序顺序安排作业运行,当作业没有足够的计算实例可以运行时,根据作业脚本中给出的运行时间估计给队首的至少一个不能立即运行的高优先级作业做计算实例预留,将低优先级的小作业回填到计算实例预留所形成的孔洞中;
所述回填作业调度算法由触发事件触发,所述触发事件包括:有新作业到达,有正在运行的作业完成,有申请的新计算实例就绪。
3.根据权利要求1或2所述的方法,其特征在于,所述并行作业调度单元查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留,包括:
并行作业调度单元预测队首作业不能在预设的时间门限内开始运行时,通知资源管理单元申请新的计算实例,为队首作业重新做计算实例预留。
4.根据权利要求1所述的方法,其特征在于,
所述资源管理单元根据作业队列中的等待状态和正在运行的作业的运行状态进行释放计算实例,包括:释放剩余租用时间少于释放检查周期的空闲计算实例。
5.一种云平台中计算实例的管理***,其特征在于,所述***包括:
接收单元,用于接收用户的作业请求,存放到作业队列中;
并行作业调度单元,用于查询和管理所述作业队列中的作业,安排所述作业运行,并为不能运行的作业做计算实例预留;
资源管理单元,用于为可运行的作业安排运行用的计算实例,并根据作业队列中的等待状态和正在运行的作业的运行状态申请/释放计算实例,
所述资源管理单元,还用于根据当前作业队列的等待状态和正在运行的作业的运行状态,利用一个预设的门限值把作业队列中的短作业与长作业分离开,计算长作业与短作业的计算实例的需求之和,根据所述计算实例的需求之和申请计算实例;
所述***还包括:
日志单元,工作负载预测单元;
所述日志单元,用于记录***日志;
所述工作负载预测单元,用于分析所述***日志,预测计算实例的需求;
所述资源管理单元,还用于根据所述工作负载预测单元预测的计算实例的需求申请/释放计算实例。
6.根据权利要求5所述的***,其特征在于,
所述并行作业调度单元,用于采用回填作业调度算法对所述作业队列中的作业进行管理,具体包括:动态计算每个作业的优先级,将所述作业在所述作业队列中排序,按照排序顺序安排作业运行,当作业没有足够的计算实例可以运行时,根据作业脚本中给出的运行时间估计给队首的至少一个不能立即运行的高优先级作业做计算实例预留,将低优先级的小作业回填到计算实例预留所形成的孔洞中;
所述回填作业调度算法由触发事件触发,所述触发事件包括:有新作业到达,有正在运行的作业完成,有申请的新计算实例就绪。
7.根据权利要求5或6所述的***,其特征在于,所述并行作业调度单元,用于预测队首作业不能在预设的时间门限内开始运行时,通知资源管理单元申请新的计算实例,为队首作业重新做计算实例预留。
8.根据权利要求5所述的***,其特征在于,
所述资源管理单元,用于释放剩余租用时间少于释放检查周期的空闲计算实例。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410018237.2A CN103761147B (zh) | 2014-01-15 | 2014-01-15 | 一种云平台中计算实例的管理方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410018237.2A CN103761147B (zh) | 2014-01-15 | 2014-01-15 | 一种云平台中计算实例的管理方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103761147A CN103761147A (zh) | 2014-04-30 |
CN103761147B true CN103761147B (zh) | 2017-11-21 |
Family
ID=50528390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410018237.2A Active CN103761147B (zh) | 2014-01-15 | 2014-01-15 | 一种云平台中计算实例的管理方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103761147B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10341194B2 (en) * | 2015-10-05 | 2019-07-02 | Fugue, Inc. | System and method for building, optimizing, and enforcing infrastructure on a cloud based computing environment |
CN106686158A (zh) * | 2017-02-19 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种实现服务期间互信通信的方法及其装置 |
CN107341041B (zh) * | 2017-06-27 | 2020-08-11 | 南京邮电大学 | 基于优先队列的云任务多维约束回填调度方法 |
CN109408220A (zh) * | 2017-08-17 | 2019-03-01 | 北京国双科技有限公司 | 一种任务处理方法及装置 |
CN107862042B (zh) * | 2017-11-06 | 2020-12-18 | 中国银行股份有限公司 | 一种数据库并行度的控制方法及装置 |
CN107885589B (zh) * | 2017-11-22 | 2021-02-12 | 贝壳找房(北京)科技有限公司 | 一种作业调度方法及装置 |
CN108334409B (zh) * | 2018-01-15 | 2020-10-09 | 北京大学 | 一种细粒度的高性能云资源管理调度方法 |
CN110197368B (zh) * | 2018-03-21 | 2024-02-13 | 腾讯科技(深圳)有限公司 | 一种云资源处理方法、装置及存储介质 |
CN109189563B (zh) * | 2018-07-25 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 资源调度方法、装置、计算设备及存储介质 |
CN111240811A (zh) * | 2018-11-28 | 2020-06-05 | 阿里巴巴集团控股有限公司 | 集群调度方法、装置和***以及电子设备 |
CN109859012B (zh) * | 2019-01-31 | 2021-03-12 | 山东大学 | 基于IaaS的不确定性需求服务预购实例分时共享方法与*** |
CN111061553B (zh) * | 2019-12-17 | 2023-10-10 | 湖南大学 | 一种用于超级计算中心的并行任务调度方法和*** |
CN111343288B (zh) * | 2020-05-21 | 2020-09-01 | 北京并行科技股份有限公司 | 作业调度方法、***及计算设备 |
CN111882134B (zh) * | 2020-08-04 | 2024-06-21 | 山东大学 | 一种云计算服务调度方法、***、介质及电子设备 |
CN112950284B (zh) * | 2021-03-29 | 2024-06-18 | 湖南快乐阳光互动娱乐传媒有限公司 | 预留实例预估方法、***、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102117468A (zh) * | 2011-04-07 | 2011-07-06 | 上海兆民云计算科技有限公司 | 一种基于云计算的租借实例的方法 |
CN103002044A (zh) * | 2012-12-18 | 2013-03-27 | 武汉大学 | 一种提高多平台智能终端处理能力的方法 |
CN103065221A (zh) * | 2012-12-27 | 2013-04-24 | 北京仿真中心 | 基于bpel的多学科协同优化流程建模与调度的方法和*** |
-
2014
- 2014-01-15 CN CN201410018237.2A patent/CN103761147B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102117468A (zh) * | 2011-04-07 | 2011-07-06 | 上海兆民云计算科技有限公司 | 一种基于云计算的租借实例的方法 |
CN103002044A (zh) * | 2012-12-18 | 2013-03-27 | 武汉大学 | 一种提高多平台智能终端处理能力的方法 |
CN103065221A (zh) * | 2012-12-27 | 2013-04-24 | 北京仿真中心 | 基于bpel的多学科协同优化流程建模与调度的方法和*** |
Non-Patent Citations (2)
Title |
---|
Characterization of Backfilling Strategies for Parallel Job Scheduling;Srividya Srinivasan Rajkumar et al.;《Proceedings of the International Conference on Parallel Processing Workshops》;20021231;全文 * |
Scheduling Jobs in the Cloud Using On-Demand and Reserved Instances;Siqi Shen et al.;《Euro-Par》;20131231;第246页第3.3节、第248页第4.2节 * |
Also Published As
Publication number | Publication date |
---|---|
CN103761147A (zh) | 2014-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103761147B (zh) | 一种云平台中计算实例的管理方法及*** | |
Van den Bossche et al. | Online cost-efficient scheduling of deadline-constrained workloads on hybrid clouds | |
Mao et al. | Scaling and scheduling to maximize application performance within budget constraints in cloud workflows | |
CN107395733B (zh) | 地理分布交互服务云资源协同优化方法 | |
US9705820B2 (en) | Reallocating resource capacity among resource pools in a cloud computing environment | |
Mao et al. | Auto-scaling to minimize cost and meet application deadlines in cloud workflows | |
US8458011B2 (en) | Dynamic pricing of a resource | |
Suleiman et al. | On understanding the economics and elasticity challenges of deploying business applications on public cloud infrastructure | |
CN104239141B (zh) | 数据中心中基于工作流关键路径的任务优化调度方法 | |
KR101865318B1 (ko) | 버스트 모드 제어 | |
JP2015511341A (ja) | 仮想マシンプールにおけるリソースの価格設定 | |
US8880671B2 (en) | Releasing computing infrastructure components in a networked computing environment | |
CN103064744B (zh) | 一种基于SLA的面向多层Web应用的资源优化方法 | |
Ghorbani et al. | Prediction and control of bursty cloud workloads: a fractal framework | |
Hoseinyfarahabady et al. | Handling uncertainty: Pareto-efficient bot scheduling on hybrid clouds | |
Venugopal et al. | A deadline and budget constrained scheduling algorithm for eScience applications on data grids | |
Ghasemzadeh et al. | Deadline-budget constrained scheduling algorithm for scientific workflows in a cloud environment | |
CN110196773B (zh) | 统一调度计算资源的多时间尺度安全校核***及方法 | |
US8548881B1 (en) | Credit optimization to minimize latency | |
Wei et al. | Adaptive resource management for service workflows in cloud environments | |
Yuan et al. | An algorithm for finding the minimum cost of storing and regenerating datasets in multiple clouds | |
US20100082528A1 (en) | Method and Apparatus For Optimizing Lead Time For Service Provisioning | |
CN116962532A (zh) | 集群任务调度方法、装置、计算机设备及存储介质 | |
Birkenheuer et al. | The gain of overbooking | |
Nesmachnow et al. | List scheduling heuristics for virtual machine mapping in cloud systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |