当前位置: 首页 > 专利查询>中山大学专利>正文

一种基于云簇的虚拟机借调方法技术

技术编号:24682359 阅读:374 留言:0更新日期:2020-06-27 07:43
本发明专利技术涉及计算机技术领域,是基于云簇的虚拟机借调方法,包括步骤:微云接收终端计算机的任务请求,将任务请求转化为一定数量和规格的虚拟机申请;微云在本地资源充足时,直接服务任务请求;在本地资源不足时,计算每个邻居微云可提供的虚拟机数量以及任务成本;微云根据跨微云虚拟机借调算法生成虚拟机借调方案;依据虚拟机借调方案,微云向租借方案列表中的邻居微云进行虚拟机借调。本发明专利技术支持在本地微云本地资源不足时,按照跨微云的虚拟机调度算法,从空闲微云处进行虚拟机借调,满足本地的用户任务需求,达到了在微云之间共享闲置资源的目的。

A method of virtual machine secondment based on cloud cluster

【技术实现步骤摘要】
一种基于云簇的虚拟机借调方法
本专利技术涉及计算机
,尤其涉及一种基于云簇的跨微云虚拟机借调方法。
技术介绍
随着云计算技术的发展,越来越多的用户选择将自身的应用和业务迁移到云上。云用户可以选择使用云服务运营商提供的即付即用、按需的、可弹性配置的公有云服务,也可以选择根据自身需求构建私有云设施。对于云服务运营商而言,云计算服务的弹性扩展是通过配置多个数据中心集群实现的。私有云的构建是按照用户的使用需求来定制。考虑到要在高峰期时也能正常运行,私有云数据中心的规模需要按照用户的使用峰值进行配置。这样的配置方式存在以下问题:首先,业务的需求信息难以准确预测。通过历史信息对高峰期进行准确无误的估计是不现实的,预测误差是必然存在的,这将导致较低标准的配置出现无法满足峰值需求,而较高标准的配置造成资源的闲置。其次,随着用户自身业务规模的发展,其资源需求会发生改变。与公有云通常能在数分钟内完成扩容相比,私有云的扩容涉及设备的采购和安装,其过程按天或者周计,无法即时满足需求。另一方面,私有云在非高峰期时会有大量的资源闲置,造成资源浪费。因此,需要一套支持在不同私有云(下称微云)之间进行虚拟机借调的解决方案,使得:(1)处于运行高峰期的微云可以通过向其它微云租赁虚拟机来缓解即时资源不足的情况;(2)低负荷运行的微云可以通过出租虚拟机获取额外的收益,减少资源的闲置。
技术实现思路
为了解决个体微云在运行高峰期时资源紧缺,低负载运行时资源闲置无法被充分利用的问题,本专利技术提出了一种基于云簇的跨微云虚拟机借调方法。本专利技术方法采用如下技术方案来实现:基于云簇的虚拟机借调方法,包括以下步骤:S1、微云接收终端计算机的任务请求,将任务请求转化为一定数量和规格的虚拟机申请;S2、微云在本地资源充足时,直接服务任务请求;在本地资源不足时,计算每个邻居微云可提供的虚拟机数量以及任务成本;S3、微云根据跨微云虚拟机借调算法生成虚拟机借调方案;S4、依据虚拟机借调方案,微云向租借方案列表中的邻居微云进行虚拟机借调。优选地,在步骤S3中,跨微云虚拟机借调算法为:按照每个邻居微云的任务成本进行排序,优先选择任务成本最小的邻居微云添加入借调方案中,然后在剩余的邻居微云继续重复这一步骤,直至满足任务要求的虚拟机数量或者是没有可供选择的剩余邻居微云,最终获得本次的借调方案。获得的借调方案中包括了一个或者若干个优选出来的邻居微云以及向该邻居微云借调的虚拟机数量;如果虚拟机借调算法运行正常结束,所有邻居微云借调的虚拟机数量总和等于任务请求需要借调的虚拟机数量;当虚拟机借调算法还没有运行正常结束而邻居微云列表为空时,不存在可供选择的剩余邻居微云,代表着邻居微云的资源无法满足借调要求,此时生成的借调方案为空。本专利技术方法通过在云簇管理中心服务器上部署云簇管理系统,在微云服务器上部署云簇管理接口模块,由本地微云或者相邻微云满足本地终端计算机的任务需求。本专利技术设计了实现以上方法的详细体系结构、核心算法与满足服务的流程,支持在本地微云本地资源不足时,按照跨微云的虚拟机调度算法,从空闲微云处进行虚拟机借调,满足本地的用户任务需求,达到了在微云之间共享闲置资源的目的。与现有技术相比,本专利技术取得了如下技术效果:1、本专利技术采用虚拟机借调的方式,在本地微云资源不足以满足任务需求时,根据资源调度策略,向邻居微云申请资源借调,使得任务仍然可以正常执行,且充分利用了空闲微云的闲置资源。2、资源调度策略考虑了传输成本、使用成本和服务质量成本,在降低租借成本的同时,最大限度地降低了任务在邻居微云上执行与在本地执行的差异,提升了用户体验,降低任务的拒绝率。3、采用负载预测技术,为本地微云预留了在下一个时间段可能到来的任务资源,在预测结果的基础上,向邻居微云通报剩余的可出租资源,减少了微云之间交叉租借的情况的发生。4、本专利技术利用云计算资源统一共享理念、跨微云资源调度策略,为微云资源瓶颈提供了有效、低成本的解决方案,空闲微云也可以从闲置资源中获得了额外的收益,提高了整个系统中资源的利用率。附图说明图1是本专利技术基于云簇的跨微云虚拟机借调系统框架图;图2是本专利技术的系统中各模块位置和数量关系图;图3是本专利技术的一种基于云簇的跨微云虚拟机借调方法的流程图;图4是本专利技术的计算跨微云虚拟机借调方案的算法流程图,其中(a)为虚拟机借调方案的总体流程图,(b)为借调方案中对邻居微云列表中是否有可用微云的判断流程图;图5是本专利技术的跨微云的虚拟机借调流程的流程图;图6是微云加入云簇系统的工作时序图;图7是微云进行负载预测的工作时序图;图8是微云维护邻居微云资源列表的工作时序图。具体实施方式下面结合附图及实施例对本专利技术作进一步详细的描述,但本专利技术的实施方式不限于此。实施例如图1所示,本专利技术借调方法建立在基于云簇的跨微云资源借调系统上,系统的物理框架主要包括微云服务器(简称微云)、云簇管理中心服务器以及终端计算机。多个在地理位置上分散分布的、有可能由不同运营商运行的微云构建云簇系统;云簇的管理由一个独立运行的云簇管理系统和在各个微云的云簇管理接口模块共同组成。云簇管理中心服务器中部署了云簇管理系统,在整个云簇架构中处于中心位置,居中协调各微云服务器的信息沟通,统筹管理整个云簇的资源;微云服务器中部署了云簇管理接口模块,负责与云簇管理中心以及邻居微云的通信。微云分散部署在靠近用户和任务的一侧,可与云簇管理系统直接通信,从云簇管理系统中获知其它微云的信息,从而与其它微云通信。也就是说,微云是在地理位置上分散分布的、有可能由不同运营商运行的相对独立的云计算平台,拥有自己的管理系统和本地的虚拟机资源池,接收本地用户(即终端计算机)的任务请求,为其提供任务要求的虚拟机。微云系统按照其设定通信时延阈值要求、带宽要求及相邻微云系统的资源确定其邻居微云集合。一个微云系统的邻居微云集合是指满足其设定要求、在网络层直接相连、并可按需提供借调服务资源的所有微云。一个微云可以直接与其邻居微云进行通信,以实现对虚拟机的借调。也就是说,系统的逻辑架构包括部署在云簇管理中心服务器上的云簇管理系统,云簇管理系统上设有中心管理模块,部署在微云上的微云管理系统和虚拟机资源池,微云管理系统包括资源管理模块、资源预测模块、云簇管理接口模块、资源调度模块、任务管理模块及监控模块。任务管理模块负责接收用户在终端计算机上提交的任务请求,解析成满足任务所需的一定数量和规格的虚拟机请求,然后向资源调度模块进行申请。资源调度模块优先使用本地微云的虚拟机资源池来创建虚拟机,当本地资源无法满足全部申请时,用本地的剩余资源提供部分虚拟机,欠缺部分的虚拟机向邻居微云借调,最终在本地或者是邻居微云上生成相应的虚拟机。终端计算机(用户)通过远程桌面协议连接到这些虚拟机。微云包括教育行业或企业搭建的云环境中的旧式或新型服务器,终端计算本文档来自技高网...

【技术保护点】
1.一种基于云簇的虚拟机借调方法,其特征在于,包括以下步骤:/nS1、微云接收终端计算机的任务请求,将任务请求转化为一定数量和规格的虚拟机申请;/nS2、微云在本地资源充足时,直接服务任务请求;在本地资源不足时,计算每个邻居微云可提供的虚拟机数量以及任务成本;/nS3、微云根据跨微云虚拟机借调算法生成虚拟机借调方案;/nS4、依据虚拟机借调方案,微云向租借方案列表中的邻居微云进行虚拟机借调。/n

【技术特征摘要】
1.一种基于云簇的虚拟机借调方法,其特征在于,包括以下步骤:
S1、微云接收终端计算机的任务请求,将任务请求转化为一定数量和规格的虚拟机申请;
S2、微云在本地资源充足时,直接服务任务请求;在本地资源不足时,计算每个邻居微云可提供的虚拟机数量以及任务成本;
S3、微云根据跨微云虚拟机借调算法生成虚拟机借调方案;
S4、依据虚拟机借调方案,微云向租借方案列表中的邻居微云进行虚拟机借调。


2.根据权利要求1所述的基于云簇的虚拟机借调方法,其特征在于,在步骤S3中,跨微云虚拟机借调算法为:按照每个邻居微云的任务成本进行排序,优先选择任务成本最小的邻居微云添加入借调方案中,然后在剩余的邻居微云继续重复这一步骤,直至满足任务要求的虚拟机数量或者是没有可供选择的剩余邻居微云,最终获得本次的借调方案。


3.根据权利要求2所述的基于云簇的虚拟机借调方法,其特征在于,获得的借调方案中包括了一个或者若干个优选出来的邻居微云以及向该邻居微云借调的虚拟机数量;如果虚拟机借调算法运行正常结束,所有邻居微云借调的虚拟机数量总和等于任务请求需要借调的虚拟机数量;当虚拟机借调算法还没有运行正常结束而邻居微云列表为空时,不存在可供选择的剩余邻居微云,代表着邻居微云的资源无法满足借调要求,此时生成的借调方案为空。


4.根据权利要求1所述的基于云簇的虚拟机借调方法,其特征在于,步骤S3包括:
S31、获取邻居微云列表和本次借调所需的虚拟机数量,邻居微云列表包含步骤S2中计算得出的每个邻居微云的可借用虚拟机数量和任务成本,将每个邻居微云可借调的虚拟机数量以及任务成本作为结果添加入候选列表中;
S32、计算借调方案列表,将候选列表中的微云按任务成本大小进行升序排序;
S33、优先选择任务成本最小的邻居微云添加入借调方案列表中,同时记录对应的借调数量;
S34、在剩余的邻居微云中重复步骤S33,直至满足任务要求的虚拟机数量或者邻居微云列表中无可供选择的邻居微云;若邻居微云列表中无可供选择的邻居微云且任务要求的虚拟机数量没有满足,则将借调方案列表清空。
S35、返回借调方案列表,若借调方案列表为空,则表示无可用的虚拟机借调方案;若不为空,则表示有可用的虚拟机借调方案。


5.根据权利要求1所述的基于云簇的虚拟机借调方法,其特征在于,步骤S2包括:
S21、微云的资源调度模块收到虚拟机申请后,优先使用本地微云的虚拟机资源池来创建虚拟机;当本地资源无法满足全部虚拟机申请时,用本地的剩余资源提供部分虚拟机,欠缺部分的虚拟机向邻居微云借调;
S22、邻居微云的可借用资源信息保存在邻居微云资源列表中,由微云的资源调度模块负责更新和维护;本地微云的资源调度模块通过云簇管理接口模块定时与邻居微云通信,获取邻居微云的可借用资源信息;
S23、计算邻居微云可提供的虚拟机数量,计算方式为:
(1)分别计算邻居微云的各项剩余资源指标除以虚拟机规格中对应指标的结果;
(2)然后取这些结果中的最小值作为该邻居微云可提供的虚拟机数量:



其中total_cpu指邻居微云可供借调的cpu资源,total_ram指邻居微云可供借调的内存资源,total_disk指邻居微云可供借调的硬盘资源,total_bandwidth指邻居微云可供借调的带宽资源,vm_cpu指虚拟机规格要求的cpu资源,vm_ram指虚拟机规格要求的内存资源,vm_disk指虚拟机规格要求的硬盘资源,vm_bandwidth指虚拟机规格要求的带宽资源;
S24、计算邻居微云的任务成本,邻居微云的任务成本等于传输成本、运行成本和服务质量成本的加权和:
cost_task=w1*cost_trans+w2*cost_use+w3*cost_qos
其中,w1、w2及w3是权重,w1+w2+w3=1,cost_task是任务成本...

【专利技术属性】
技术研发人员:温武少张朗淇
申请(专利权)人:中山大学
类型:发明
国别省市:广东;44

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

1