一种云资源调度方法及装置与流程

文档序号:12786205阅读:482来源:国知局
一种云资源调度方法及装置与流程

本发明涉及云服务技术领域,特别是涉及一种云资源调度方法及装置。



背景技术:

目前,随着计算机技术的蓬勃发展和互联网技术的飞速进步,新一代大规模互联网应用迅猛发展使得用户通过网络共享计算机资源成为了可能,云计算这一新的计算和商业模式应运而生。它创新的计算模式使用户通过互联网随时获得近乎无限的计算能力和丰富多样的信息服务,它创新的商业模式使用户对计算资源和服务随时可得、易于扩展、按需计费。云计算技术的不断成熟,使得数据中心变得越来越重要和复杂。云数据中心已经成为了一个高性能计算机的集中地,涉及成千上万规模的物理服务器和网络设备,资源量大,异构性强,对资源动态弹性管理、服务质量、按需服务等各方面的需求更加突出。但是云数据中心目前面临着高成本、低效率、高能耗等问题。由于用户需求的多样、动态变化以及服务器的资源异构性会导致数据中心出现负载不均衡的情况,致使一部分物理机的负载过重,效率降低,而另一些则负载较轻处于空闲状态。以上这些问题直接影响云数据中心资源的高效利用,造成云资源大量的浪费和损失,因此如何平衡物理机之间的负载以提高云数据中心资源利用率是亟待解决的问题。



技术实现要素:

本发明的目的是提供一种云资源调度方法及装置,以实现提高资源利用率。

为解决上述技术问题,本发明提供一种云资源调度方法,该方法包括:

利用虚拟化技术将云数据中心的基础物理资源构建成动态资源池;

对于云数据中心的每个物理机,依据CPU需求及内存需求在物理机上部署至少一个虚拟机;

依据物理机的资源利用率对物理机上的虚拟机进行迁移。

优选的,依据CPU需求及内存需求在物理机上部署至少一个虚拟机之后,还包括:

将用户的资源请求封装在虚拟机中。

优选的,在将用户的资源请求封装在虚拟机中之后,还包括:

将虚拟机之间的数据进行隔离。

优选的,依据物理机的资源利用率对物理机上的虚拟机进行迁移,包括:

若物理机上有多个虚拟机且物理机的资源利用率大于第一预设阈值,则将物理机上内存最小的虚拟机迁移到另一个具有资源碎片的物理机上;

若物理机上有一个虚拟机且物理机的资源利用率小于第二预设阈值,将物理机上的虚拟机迁移到另一个具有资源碎片的物理机上;第二预设阈值小于第一预设阈值。

本发明还提供一种云资源调度装置,用于实现所述云资源调度方法,该装置包括:

构建模块,用于利用虚拟化技术将云数据中心的基础物理资源构建成动态资源池;

部署模块,用于对于云数据中心的每个物理机,依据CPU需求及内存需求在物理机上部署至少一个虚拟机;

迁移模块,用于依据物理机的资源利用率对物理机上的虚拟机进行迁移。

优选的,所述部署模块还包括:

封装单元,用于将用户的资源请求封装在虚拟机中。

优选的,所述部署模块还包括:

隔离单元,用于将虚拟机之间的数据进行隔离。

优选的,所述迁移模块包括:

第一迁移单元,用于若物理机上有多个虚拟机且物理机的资源利用率大于第一预设阈值,则将物理机上内存最小的虚拟机迁移到另一个具有资源碎片的物理机上;

第二迁移单元,用于若物理机上有一个虚拟机且物理机的资源利用率小于第二预设阈值,将物理机上的虚拟机迁移到另一个具有资源碎片的物理机上;第二预设阈值小于第一预设阈值。

本发明所提供的一种云资源调度方法及装置,利用虚拟化技术将云数据中心的基础物理资源构建成动态资源池;对于云数据中心的每个物理机,依据CPU需求及内存需求在物理机上部署至少一个虚拟机;依据物理机的资源利用率对物理机上的虚拟机进行迁移。可见,由于构建动态资源池,则资源能够迁移即能够对虚拟机进行迁移,且依据物理机的资源利用率对物理机上的虚拟机进行迁移,如此利用虚拟机迁移使物理机内部资源得到整合,提高了整个云数据中心的整体资源利用率,减少了资源的浪费。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明所提供的一种云资源调度方法的流程图;

图2为云数据中心体系结构图;

图3为云数据中心资源模型图;

图4为虚拟机部署场景示意图;

图5为负载调整之前内存利用率情况示意图;

图6为负载调整之后内存利用率情况示意图;

图7为本发明所提供的一种云资源调度装置的结构示意图。

具体实施方式

本发明的核心是提供一种云资源调度方法及装置,以实现提高资源利用率。

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明所提供的一种云资源调度方法的流程图,该方法包括:

S11:利用虚拟化技术将云数据中心的基础物理资源构建成动态资源池;

S12:对于云数据中心的每个物理机,依据CPU需求及内存需求在物理机上部署至少一个虚拟机;

S13:依据物理机的资源利用率对物理机上的虚拟机进行迁移。

可见,该方法中,由于构建动态资源池,则资源能够迁移即能够对虚拟机进行迁移,且依据物理机的资源利用率对物理机上的虚拟机进行迁移,如此利用虚拟机迁移使物理机内部资源得到整合,提高了整个云数据中心的整体资源利用率,减少了资源的浪费。

基于上述方法,进一步的,步骤S12中,依据CPU需求及内存需求在物理机上部署至少一个虚拟机之后,还包括:将用户的资源请求封装在虚拟机中。

其中,在将用户的资源请求封装在虚拟机中之后,还包括:将虚拟机之间的数据进行隔离。

进一步的,步骤S13的过程具体包括:若物理机上有多个虚拟机且物理机的资源利用率大于第一预设阈值,则将物理机上内存最小的虚拟机迁移到另一个具有资源碎片的物理机上;若物理机上有一个虚拟机且物理机的资源利用率小于第二预设阈值,将物理机上的虚拟机迁移到另一个具有资源碎片的物理机上;第二预设阈值小于第一预设阈值。

该方法是在云环境下通过合理的资源调度来平衡物理机之间的负载以提高云数据中心资源利用率和整体性能,改善当前云数据中心资源浪费的现象,减少云基础设施的成本投入。

云环境下的数据中心是一个包含了大量物理服务器、虚拟机、存储设备、网络设备的场所,是实现云计算应用的服务平台。如图2所示,云数据中心利用虚拟化技术对基础物理资源进行抽象形成动态资源池,用户的资源请求被封装在一个或多个虚拟机中提供给用户,并且虚拟机对于用户来讲,几乎与物理机没有任何区别,用户可以在虚拟机上灵活的安装任何软件。同时,虚拟机之间的数据时隔离的,确保用户的数据安全。虚拟机运行在数据中心物理机或由众多的物理机通过网络组成的物理机集群之上。云数据中心允许用户通过网络动态地申请或释放资源,按需计费。

参考图3,云数据中心资源包括提供给用户使用的软件和硬件资源(包括计算、存储、网络等),中间件以及应用服务等。云服务提供商可以动态配置同一数据中心或多个数据中心的设施来满足用户需求。如图3所示,云数据中心基础设施资源主要包括:物理机、物理机集群、虚拟机、虚拟机集群、数据中心以及网络和存储资源。其中,物理机是构成云数据中心的物理计算设备,每个物理机可以通过虚拟化技术提供多个虚拟机;物理机集群是由多个物理机和必要的网络及存储设备构成的物理机集合;虚拟机是在物理机的基础之上通过虚拟化软件生成的具有完整硬件系统功能的计算机系统;虚拟机集群是由多个虚拟服务器和必要的网络以及存储设施构成的虚拟服务器组;数据中心是云计算资源的集中之地,是IaaS服务提供商提供给用户的最大资源单位。

云数据中心体系结构针对资源调度,对复杂的云数据中心结构进行了简化整合,降低了云数据中心结构的复杂度;云数据中心资源模型是从云服务提供商的角度出发,定义了云数据中心的资源,便于提供商对云数据中心的资源进行整合与调度。云数据中心体系结构能够提高云数据中心的物理资源利用率,减少数据中心资源浪费。在云数据中心体系结构的基础上,从云服务提供商的角度,提出一种云数据中心资源模型,对云数据中心的主要资源进行了明确的定义和详细的描述,作为云资源调度的对象。

其中,虚拟机的部署是以提高资源的利用率为优化目标,根据不同虚拟机请求上对多维资源的消耗,对虚拟机在物理机上的部署进行优化调度。针对虚拟机与物理机之间的部署映射问题,提出了虚拟机部署方式,能够实现数据中心基础设施资源的高效且均衡分配。虚拟机的迁移是通过对已部署的虚拟机进行动态迁移,提高云数据中心内资源利用率和实现云数据中心负载均衡。利用虚拟机迁移可以使物理机内部资源得到整合,提高了整个云数据中心的整体资源利用率,减少了资源的浪费,解决了云数据中心内资源利用率不高和系统负载不均衡的问题。

详细的,用户的资源请求以虚拟机的方式部署在云数据中心物理机之上,每个虚拟机对资源的需求是不同且多样,这不仅使不同物理机间的负载不易均衡,而且同一物理机内资源难得到充分利用。针对虚拟机与物理机之间的映射问题,以提高资源的利用率为优化目标,虚拟机部署有改进,部署场景如图4所示,假设云数据中心对k个用户资源请求进行处理,由于IaaS提供商将用户请求封装为虚拟机形式进行资源分配,因此资源请求也称为虚拟机请求。

在图4的场景下,仅考虑CPU需求和内存需求的虚拟机部署,假设数据中心一台物理机拥有CPU12核、内存15G,现在有4个虚拟机请求,其配置分别为虚拟机1(6核5G)、虚拟机2(5核3G)、虚拟机3(4核6G)、虚拟机4(2核5G)。基于先进先出策略的虚拟机部署方法将虚拟机请求集合看作为有序队列,将虚拟机1和虚拟机2部署后,由于CPU资源的限制,不能继续部署更多的虚拟机,最后资源调度结果为CPU利用率93%,内存利用率为53%。本方法采用的部署方式考虑不同的资源需求特性,结合物理机的状态将虚拟机部署进行新的组合,将虚拟机2、虚拟机3、虚拟机4部署到物理机上。通过合理地以资源需求为切入点进行虚拟机协作调度,资源调度结果为CPU利用率92%,内存利用率为93%。通过与传统的方式对比,本发明的部署方式能够提高云数据中心多维资源的利用率,实现基础设施资源的高效利用和均衡分配。

详细的,虚拟机迁移可以使物理机内部资源得到整合,提高了整个云数据中心的整体资源利用率,减少了资源的浪费。同时通过虚拟机迁移技术将超负荷运行的物理机上面运行的虚拟机迁移到合适的低负荷的物理机上,从而提高了系统的运行效率。虚拟机动态迁移技术则是在虚拟机运行过程中,将整个虚拟机的运行状态完整、快速的从原来所在的宿主物理机迁移到新的物理机上。在整个迁移的过程中是平滑的,用户几乎感觉不到任何的差异,并且可以支持原宿主物理机和目标宿主物理机硬件平台的异构性。因此基于虚拟机动态迁移技术,本方法提高云数据中心内资源利用率和实现云数据中心负载均衡为优化目标。

在具有大规模服务器的云环境下,用户资源需求的动态变化,因此云数据中心的物理机的负载随着时间动态的变化,任何时刻物理机的负载都是起伏不定的。物理机负载允许存在一定的差异,但是当太多物理机的资源利用率过低或各个物理机之间的负载差异很大,就会造成一些问题。如图5所示,以内存为例,一些物理机,如图5中的物理机m3、m4的资源利用率非常低,造成了许多资源的浪费,资源没有得到充分利用;而另外一些物理机,如图5中物理机m2的负载过高,影响了上层应用的性能。通过虚拟机动态迁移进行调整,图6为调度之后的结果,使负载过高的物理机m2上的虚拟机vm4迁移到负载较低的物理机m4上,物理机m3上的虚拟机vm7迁移到物理机m4上,消除了物理机m4的资源碎片,提高了利用率,同时将空闲的物理机m3关闭以减少资源浪费。因此经过虚拟机的调整迁移,使得所有的物理机在整体负载均衡,提高了资源利用率。

本方法能够灵活的管理云数据中心资源,实现资源优化配置,极大地提高云资源的利用率,改善当前云数据中心资源浪费的现象,减少云基础设施升级所需的大量投资,提高了用户的使用体验。

请参考图7,图7为本发明所提供的一种云资源调度装置的结构示意图,该装置用于实现上述云资源调度装置方法,该装置包括:

构建模块101,用于利用虚拟化技术将云数据中心的基础物理资源构建成动态资源池;

部署模块102,用于对于云数据中心的每个物理机,依据CPU需求及内存需求在物理机上部署至少一个虚拟机;

迁移模块103,用于依据物理机的资源利用率对物理机上的虚拟机进行迁移。

可见,该装置中,由于构建动态资源池,则资源能够迁移即能够对虚拟机进行迁移,且依据物理机的资源利用率对物理机上的虚拟机进行迁移,如此利用虚拟机迁移使物理机内部资源得到整合,提高了整个云数据中心的整体资源利用率,减少了资源的浪费。

基于上述装置,进一步的,部署模块还包括:封装单元,用于将用户的资源请求封装在虚拟机中。

进一步的,部署模块还包括:隔离单元,用于将虚拟机之间的数据进行隔离。

进一步的,迁移模块包括:

第一迁移单元,用于若物理机上有多个虚拟机且物理机的资源利用率大于第一预设阈值,则将物理机上内存最小的虚拟机迁移到另一个具有资源碎片的物理机上;

第二迁移单元,用于若物理机上有一个虚拟机且物理机的资源利用率小于第二预设阈值,将物理机上的虚拟机迁移到另一个具有资源碎片的物理机上;第二预设阈值小于第一预设阈值因此如何通过合适的资源调度算法来平衡物理机之间的负载。

以上对本发明所提供的一种云资源调度方法及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1