主机资源分配的方法、装置及计算机可读存储介质制造方法及图纸

技术编号:19857104 阅读:33 留言:0更新日期:2018-12-22 11:36
本发明专利技术公开了一种主机资源分配的方法,包括:获取主机群的可用资源信息,获取用户的优先级和请求的主机资源大小,依次确定各个所述用户在所述主机群的可用资源信息约束下的资源分配方案,从第n个用户在所述主机群的可用资源信息约束下的资源分配方案中确定第n个用户的目标主机资源分配方案并获取前n‑1个用户的资源分配方案,以得到n个用户的目标主机资源分配方案。本发明专利技术还公开了一种主机资源分配的装置和计算机可读存储介质。本发明专利技术通过依次确定多个用户中每个用户在主机群的可用资源信息约束下的资源分配方案,并在分配中考虑用户请求的优先级,从而在整体上提高对物理主机资源的利用率。

【技术实现步骤摘要】
主机资源分配的方法、装置及计算机可读存储介质
本专利技术涉及计算机
,尤其涉及一种主机资源分配的方法、主机资源分配的装置及计算机可读存储介质。
技术介绍
在云计算IaaS模式中,云计算服务提供商以虚拟机(Virtualmachine,VM)作为服务提供单元,向用户提供计算、网络、存储等基础设施资源。具体而言,云计算服务提供商提供各种虚拟机类型以供用户进行自由选择,虚拟机类型包含了不同的计算、网络、存储等资源的搭配组合;云计算平台根据用户选择的虚拟机类型,在其数据中心的物理主机上创建符合用户资源需求的虚拟机,并将其提供给用户使用。当面临大量的用户虚拟机创建请求时,云计算数据中心需要解决如何在物理主机之间分配用户的虚拟机创建请求的调度问题。现有的云计算服务系统对物理主机资源的分配主要有两种分配方式。一种是FIFO(先进先出)算法,即按照用户资源请求到来的先后顺序进行资源分配;另一种是公平分配方式,即通过求解一个满足资源约束且以用户请求数的对数之和最大化为目标的数学模型得到资源分配方案。这两种分配方式均无法根据用户请求的优先级进行主机资源的分配,无法在整体上提高对物理主机资源的利用率。上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
本专利技术的主要目的在于提供一种主机资源分配的方法、主机资源分配的装置和计算机可读存储介质,旨在解决现有技术中无法根据用户请求的优先级进行主机资源的分配,从而无法在整体上提高对物理主机资源的利用率的技术问题。为实现上述目的,本专利技术提供一种主机资源分配的方法,所述主机资源分配的方法包括如下步骤:获取主机群的可用资源信息,其中,所述主机群的可用资源信息包括主机数目和各个所述主机的可用资源大小;获取用户的优先级和请求的主机资源大小;依次确定各个所述用户在所述主机群的可用资源信息约束下的资源分配方案,其中,总共有n个用户,当确定所述n个用户中第j个用户的资源分配方案时,前j-1个用户的资源分配方案已经确定,并且所述主机群中的各个主机的分配的资源大小小于或等于各个所述主机的可用资源大小;从第n个用户在所述主机群的可用资源信息约束下的资源分配方案中确定第n个用户的目标主机资源分配方案并获取前n-1个用户的资源分配方案,以得到n个用户的目标主机资源分配方案,其中,在所述第n个用户的目标主机资源分配方案中,所述主机群中各个主机的分配的资源大小取最大值。优选地,所述依次确定各个所述用户在所述主机群的可用资源信息约束下的资源分配方案的步骤包括:对各个所述用户进行排序,生成用户队列,依次确定所述用户队列中每个用户在所述主机群的可用资源信息约束下的资源分配方案,在确定每个用户即第j个用户的资源分配方案时,获取前j-1个用户的各个资源分配方案并依次执行以下步骤:获取前j-1个用户的第一资源分配方案对应的所述j-1个用户中请求被满足的用户的第一优先级累加值;遍历所述主机群中的各个主机的剩余可用资源大小,当所述主机群中的第i台主机的剩余可用资源大小大于或等于所述第j个用户请求的资源大小时,根据所述第一优先级累加值和所述第j个用户的优先级计算对应的所述j个用户中请求被满足的用户的第二优先级累加值;根据所述前j-1个用户的第一资源分配方案中所述主机群中各个主机的资源分配大小和所述第j个用户请求的资源大小判断是否存在对应的前j-1个用户的第二资源分配方案,存在时则获取对应的所述j-1个用户中请求被满足的用户的第三优先级累加值;当所述第二优先级累加值大于所述第三优先级累加值时,确定所述第j个用户的资源分配方案为所述第j个用户的请求被所述第i台主机满足。优选地,所述在确定每个用户即第j个用户的资源分配方案时,获取前j-1个用户的资源分配方案并执行以下步骤的步骤之前还包括:获取j个用户请求的主机资源大小Wi,i=1,2,……,j,其中,每个所述用户的主机资源分配取值为Wi或0;根据j个所述用户的资源分配取值的任意组合进行求和得到对应的所述j个用户的资源分配累加值集合Sj,其中,所述主机群中的各个所述主机的资源分配取值来自Sj,以标识Sj对应的所述主机群中第m种资源分配方案;将所述主机群的资源分配方案为时第j个用户的请求的资源满足情况以表示并初始化为零;将所述主机群的资源分配方案为时j个用户中请求被满足的用户优先级累加值以CVm表示并初始化为零;根据j-1个所述用户的资源分配取值的任意组合进行求和得到对应的所述j-1个用户的资源分配累加值集合Sj-1,其中以标识Sj-1对应的所述主机群中第m种资源分配方案。优选地,所述遍历所述主机群中的各个主机的剩余可用资源大小,当所述主机群中的第i台主机的剩余可用资源大小大于或等于所述第j个用户请求的资源大小时,根据所述第一优先级累加值和所述第j个用户的优先级计算对应的所述j个用户中请求被满足的用户的第二优先级累加值的步骤包括:获取所述Sj-1中主机群的第m种资源分配方案对应的CVm,其中所述CVm为所述第一优先级累加值;当所述主机群中的第i台主机的剩余可用资源大小大于或等于所述第j个用户请求的资源大小时,将所述CVm与所述第j个用户的优先级Vj的进行求和得到第二优先级累加值;在根据所述CVm和所述第j个用户请求的资源大小Wj判断存在对应的Sj-1中所述主机群的资源分配方案并获取对应的CVm′,所述CVm′为所述第三优先级累加值;判断不等式CVm,<CVm+Vj是否成立;当所述不等式成立时判定在所述第m′种资源分配方案下用户j的请求被第i台主机满足,并执行以下赋值:优选地,所述对各个所述用户进行排序,生成用户队列,依次确定所述用户队列中每个用户在所述主机群的可用资源信息约束下的资源分配方案,在处理每个用户即第j个用户的资源分配方案时,获取前j-1个用户的各个资源分配方案并依次执行以下步骤的步骤包括:将所述Sj-1中主机群的各种资源分配方案按照所述主机群中各个主机分配的资源大小从大到小的顺序进行排序;对排序后的各种所述主机群的资源分配方案依次执行获取和对应的所述j-1个用户中请求被满足的用户的第一优先级累加值的步骤。优选地,所述对各个所述用户进行排序,生成用户队列,依次确定所述用户队列中每个用户在所述主机群的可用资源信息约束下的资源分配方案的步骤之后还包括:对于所述主机群的每种资源分配方案判断是否存在中各个主机分配的资源大小取值比中各个主机分配的资源大小取值小,并且不等式CVm≤CVm′成立;当判定存在确定第j个用户的请求在第m种所述主机群的资源分配时不被满足,并执行以下赋值将Ij置成负值,当从第n个用户在所述主机群的可用资源信息约束下的资源分配方案中确定第n个用户的目标主机资源分配方案并获取前n-1个用户的资源分配方案时,丢弃用户的请求资源满足情况为负值的对应的资源分配方案:优选地,所述从第n个用户在所述主机群的可用资源信息约束下的资源分配方案中确定第n个用户的目标主机资源分配方案并获取前n-1个用户的资源分配方案,以得到n个用户的目标主机资源分配方案的步骤包括:从n个用户的资源分配累加值集合Sn中确定第m种主机群资源分配方案为候选主机群资源分配方案,所述中各个主机分配的资源大小取值为最大;获取所述候选主机群资源分配方案对应的本文档来自技高网...

【技术保护点】
1.一种主机资源分配的方法,其特征在于,所述主机资源分配的方法包括以下步骤:获取主机群的可用资源信息,其中,所述主机群的可用资源信息包括主机数目和各个所述主机的可用资源大小;获取用户的优先级和请求的主机资源大小;依次确定各个所述用户在所述主机群的可用资源信息约束下的资源分配方案,其中,总共有n个用户,当确定所述n个用户中第j个用户的资源分配方案时,前j‑1个用户的资源分配方案已经确定,并且所述主机群中的各个主机的分配的资源大小小于或等于各个所述主机的可用资源大小;从第n个用户在所述主机群的可用资源信息约束下的资源分配方案中确定第n个用户的目标主机资源分配方案并获取前n‑1个用户的资源分配方案,以得到n个用户的目标主机资源分配方案,其中,在所述第n个用户的目标主机资源分配方案中,所述主机群中各个主机的分配的资源大小取最大值。

【技术特征摘要】
1.一种主机资源分配的方法,其特征在于,所述主机资源分配的方法包括以下步骤:获取主机群的可用资源信息,其中,所述主机群的可用资源信息包括主机数目和各个所述主机的可用资源大小;获取用户的优先级和请求的主机资源大小;依次确定各个所述用户在所述主机群的可用资源信息约束下的资源分配方案,其中,总共有n个用户,当确定所述n个用户中第j个用户的资源分配方案时,前j-1个用户的资源分配方案已经确定,并且所述主机群中的各个主机的分配的资源大小小于或等于各个所述主机的可用资源大小;从第n个用户在所述主机群的可用资源信息约束下的资源分配方案中确定第n个用户的目标主机资源分配方案并获取前n-1个用户的资源分配方案,以得到n个用户的目标主机资源分配方案,其中,在所述第n个用户的目标主机资源分配方案中,所述主机群中各个主机的分配的资源大小取最大值。2.如权利要求1所述的主机资源分配的方法,其特征在于,所述依次确定各个所述用户在所述主机群的可用资源信息约束下的资源分配方案的步骤包括:对各个所述用户进行排序,生成用户队列,依次确定所述用户队列中每个用户在所述主机群的可用资源信息约束下的资源分配方案,在确定每个用户即第j个用户的资源分配方案时,获取前j-1个用户的各个资源分配方案并依次执行以下步骤:获取前j-1个用户的第一资源分配方案对应的所述j-1个用户中请求被满足的用户的第一优先级累加值;遍历所述主机群中的各个主机的剩余可用资源大小,当所述主机群中的第i台主机的剩余可用资源大小大于或等于所述第j个用户请求的资源大小时,根据所述第一优先级累加值和所述第j个用户的优先级计算对应的所述j个用户中请求被满足的用户的第二优先级累加值;根据所述前j-1个用户的第一资源分配方案中所述主机群中各个主机的资源分配大小和所述第j个用户请求的资源大小判断是否存在对应的前j-1个用户的第二资源分配方案,存在时则获取对应的所述j-1个用户中请求被满足的用户的第三优先级累加值;当所述第二优先级累加值大于所述第三优先级累加值时,确定所述第j个用户的资源分配方案为所述第j个用户的请求被所述第i台主机满足。3.如权利要求2所述的主机资源分配的方法,其特征在于,所述在确定每个用户即第j个用户的资源分配方案时,获取前j-1个用户的资源分配方案并执行以下步骤的步骤之前还包括:获取j个用户请求的主机资源大小Wi,i=1,2,……,j,其中,每个所述用户的主机资源分配取值为Wi或0;根据j个所述用户的资源分配取值的任意组合进行求和得到对应的所述j个用户的资源分配累加值集合Sj,其中,所述主机群中的各个所述主机的资源分配取值来自Sj,以标识Sj对应的所述主机群中第m种资源分配方案;将所述主机群的资源分配方案为时第j个用户的请求的资源满足情况以表示并初始化为零;将所述主机群的资源分配方案为时j个用户中请求被满足的用户优先级累加值以CVm表示并初始化为零;根据j-1个所述用户的资源分配取值的任意组合进行求和得到对应的所述j-1个用户的资源分配累加值集合Sj-1,其中以标识Sj-1对应的所述主机群中第m种资源分配方案。4.如权利要求3所述的主机资源分配的方法,其特征在于,所述遍历所述主机群中的各个主机的剩余可用资源大小,当所述主机群中的第i台主机的剩余可用资源大小大于或等于所述第j个用户请求的资源大小时,根据所述第一优先级累加值和所述第j个用户的优先级计算对应的所述j个用户中请求被满足的用户的第二优先级累加值的步骤包括:获取所述Sj-1中主机群的第m种资源分配方案对应的CVm,其中所述CVm为所述第一优先级累加值;当所述主机群中的第i台主机的...

【专利技术属性】
技术研发人员:黄国伟陈建刚孔令晶邬可可
申请(专利权)人:深圳信息职业技术学院
类型:发明
国别省市:广东,44

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

1