一种虚拟机资源调度方法和装置的制作方法

文档序号:6381401阅读:262来源:国知局
专利名称:一种虚拟机资源调度方法和装置的制作方法
技术领域
本发明涉及互联网技术领域,具体涉及一种虚拟机资源调度方法和装置。
背景技术
云计算是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在云计算系统中,虚拟机资源调度是其重要的组成部分,是实现高效使用共享资源的重要环节。目前,现有技术从两个角度处理云计算中虚拟机资源调度问题。第一,从面向应用的角度当某应用需要较多虚拟机资源时,系统会检查机房内所有满足需求的空闲物理资 源,并将一个完整的物理资源分配给该应用,使得在最短时间内让该应用对资源的需求得到满足;第二,从面向系统的角度当有多个应用同时需要分配虚拟机资源时,系统将这些应用分级,并且会快速的将优质的资源非配给需要及时处理的应用,同时延迟处理不需要及时处理的应用。但是,现有技术中的从两个角度处理云计算中虚拟机资源调度问题的方法有各自的局限性首先,从面向应用的角度,虽然可以使得应用对虚拟机资源的需求在最短的时间内得到满足,但是将一个完整的物理资源分配给应用,不仅牺牲了整个系统资源利用率,而且使得不可用的资源碎片越来越多;其次,从面向系统的角度,虽然优化了整个系统的资源利用率,但是此方法尚未在跨资源池的部署模式中应用,因为跨资源池的部署模式决定资源分配优先级是一个极为复杂的过程,不仅仅要考虑到本地机房资源池的利用情况,同时需要考虑异地机房资源池中的资源如何才能合理的被应用所使用。综上所述,现有技术的几种资源调度方式均没有考虑到跨本地共享资源池的虚拟机资源调度问题,只是局限在对本地资源的调度。

发明内容
为了实现跨本地共享资源池的虚拟机资源调度,本发明提供了一种虚拟机资源调度方法和装置。本发明提供了一种虚拟机资源调度方法,所述方法包括计算当前本地应用所需虚拟机资源量;根据物理资源列表,查找可以满足所述所需虚拟机资源量的可用物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况;将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配。优选地,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源,按照预设策略,为所述当前本地应用进行分配之前,还包括判断查找到的可用物理资源是否为本地物理资源;在判断结果为否的情况下,相应的,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配,具体为,依据局域网物理资源、城域网物理资源、网省级物理资源、广域网物理资源的顺序,确定可用目标物理资源;将确定的可用目标物理资源中的虚拟机资源按照预设策略,为所述本地应用进行分配。优选地,在判断查找到的可用物理资源是本地物理资源的情况下,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配,具体为,使用统一管理软件将查找到的所述可用物理资源中的虚拟机资源为所述当前本地应用进行分配。优选地,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配,具体为,根据所述可用目标物理资源中的虚拟机资源的使用情况、负载情况和能效情况,将查找到的可用目标物理资源中的虚拟机资源为所述当前本地应用进行分配。本发明还提供了一种虚拟机资源调度装置,其特征在于,所述装置包括计算模块,用于计算当前本地应用所需虚拟机资源量;查找模块,用于根据物理资源列表,查找可以满足所述所需虚拟机资源量的物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况;分配模块,用于将查找到的非本地和/或本地的可用物理资源中的虚拟机资源,按照预设策略,为所述当前本地应用进行分配。优选地,所述装置还包括判断模块,用于判断查找到的可用物理资源是否为本地物理资源;相应的,在所述判断模块结果为否时,所述分配模块,具体包括,确定子模块,用于依据局域网物理资源、城域网物理资源、网省级物理资源、广域网物理资源的顺序,确定可用目标物理资源;第一分配子模块,用于将所述确定子模块确定的目标物理资源中的虚拟机资源,按照预设策略,为所述本地应用进行分配。优选地,在所述判断模块结果为是时,所述分配模块,还包括,第二分配子模块,用于使用统一管理软件将查找到的所述可用物理资源中的虚拟机资源为所述当前本地应用进行分配。优选地,所述分配模块,具体包括获取子模块,用于获取所述可用目标物理资源中的虚拟机资源的使用情况、负载情况和能效情况;第三分配子模块,用于依据所述使用情况、负载情况和能效情况将查找到的可用目标物理资源中的虚拟机资源为所述当前本地应用进行分配。与现有技术相比,本发明预先设置了物理资源列表,该表不仅存储了本地物理资源使用情况,而且存储了非本地物理资源使用情况,在进行虚拟机资源调度时,达到跨本地资源调度的目的。同时,当确定了可用物理资源为非本地物理资源后,确定离本地应用物理距离最近的可用物理资源为目标物理资源,选择最佳虚拟资源调度策略,将目标物理资源中的虚拟机资源分配给当前本地应用,按照有效策略将虚拟机资源调度的过程,可以达到虚拟机资源的有效利用。综上所述,本发明不仅考虑了本地的可用虚拟机资源,而且考虑了跨本地的可用资源,这使得系统不会仅仅局限在对本地资源的调度,还可以选择对外市,甚至外省等非本地的资源进行调度。


为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本发明实施例一的虚拟机资源调度方法的流程图;图2为本发明实施例二的虚拟机资源调度方法的流程图;图3为本发明实施例三的虚拟机资源调度装置的结构图;图4为本发明实施例三的虚拟机资源调度装置的结构图;图5为本发明实施例三的虚拟机资源调度装置的第一分配子模块403的结构图。
具体实施例方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。实施例一、参考图1,图I为本发明提供的一种虚拟机资源调度方法实施例一的流程图,本实施例具体可以包括步骤101、计算当前本地应用所需虚拟机资源量。本实施例中,本地应用在运行时,需要占用一定量的虚拟机资源,在为本地应用分配虚拟机资源时,首先需要计算出本地应用所需要占用的虚拟机资源量。实际操作中,计算本地应用所需虚拟机资源量的方法很多,且已为公知技术,所以在此不再详细介绍。具体用来计算虚拟机资源量的方法不影响本方案的执行。步骤102、根据物理资源列表,查找可以满足所述所需虚拟机资源量的可用物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况。本实施例中,预先配置满足需求的物理资源列表,根据计算的本地应用所需的虚拟机资源量,在预先配置的物理资源列表中,查找到能够满足本地应用所需虚拟机资源量的可用物理资源。具体的,物理资源列表存储了地域信息与该地域信息所对应的可分配的物理资源,以及二者之间的对应关系。步骤103、将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配。由于物理资源可以通过虚拟机软件模拟成虚拟机资源,应用程序可以正常的在虚拟资源上存储以及运行。本实施例中,可能只查找到本地的可用物理资源,也可能只查找到非本地的可用物理资源,也可能本地的和非本地的可用物理资源都能查找到,在查找之后就需要将在物理资源列表中查找到的非本地和/或本地可用物理资源,模拟成虚拟机资源分配给当前本地应用。该分配过程可以按照一定的预先设置的分配策略为当前本地应用进行分配。具体的,分配策略可以是根据用户需求预先设置的,也可以是在现有技术中选择满足需求的分配策略。实际操作中,设置分配策略或者选择分配策略的原则可以遵循最大化利用虚拟机资源的原则。
本实施例预先设置了物理资源列表,该表不仅存储了本地物理资源使用情况,而且存储了非本地物理资源使用情况,在进行虚拟机资源调度时,可以考虑跨本地资源调度的方式。同时,选择最佳虚拟机资源调度的策略,将目标物理资源中的虚拟机资源合理的分配给当前本地应用,这种根据需求选择虚拟机资源分配的策略,可以达到虚拟机资源的有效利用。综上所述,本发明不仅考虑了本地的可用虚拟机资源,而且考虑了跨本地的可用虚拟机资源,这使得系统不会仅仅局限在对本地资源的调度,还可以选择对外市,甚至外省等非本地的资源进行调度。实施例二、参考图2,图2为本发明提供的一种云应用部署装置实施例四的装置结构图,本实施例具体可以包括步骤201、计算当前本地应用所需虚拟机资源量。步骤202、根据物理资源列表,查找可以满足所述所需虚拟机资源量的可用物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况; 由于实施例一中的步骤IOI和步骤102相当于本实例中的步骤201和步骤202,所以在此不再赘述。步骤203、判断查找到的可用物理资源是否为本地物理资源,如果是,则进入步骤204,否则,进入步骤205。由于物理资源列表中存储了地域信息与其对应的可分配的物理资源的关系,所以在物理资源列表中确定查找到的可用物理资源对应的地域信息为本地物理资源还是非本地物理资源。如果查找到的可用物理资源为本地物理资源,可以依据本地物理资源中的虚拟机资源的分配原则,为本地应用进行虚拟机资源的分配。相反的,如果查找到的可用物理资源为非本地物理资源,则选择一个适用于非本地物理资源中的虚拟机资源的分配原则,对本地应用进行虚拟机资源的分配。步骤204、使用统一管理软件将查找到的所述可用物理资源中的虚拟机资源为所述当前本地应用进行分配。本实施例中,当查找到的可用物理资源为本地物理资源时,可以使用统一的虚拟机资源管理软件,对本地应用进行虚拟机资源的分配。实际操作中,用户可以根据需求制定分配策略,根据自己制定的分配策略对当前本地应用进行虚拟机资源的分配。步骤205、依据局域网物理资源、城域网物理资源、网省级物理资源、广域网物理资源的顺序,确定可用目标物理资源,并进入步骤206 ;本实施例中,当查找到的可用物理资源为非本地物理资源时,依据预先根据地理位置划分的物理资源网顺序,确定查找到的可用物理资源处于预先划分的哪一个物理资源网,可以选择距当前本地应用物理位置最近的物理资源网中的可用物理资源作为可用目标物理资源。预先可以将非本地的物理位置划分为局域网物理资源、城域网物理资源、网省级物理资源和广域网物理资源,其中,局域网物理资源是在物理位置上离本地最近的可用物理资源,城域网物理资源次之,网省级物理资源又比城域网物理资源距离本地更远,而广域网物理资源是距当前本地应用物理位置最远的物理资源。那么,首先需要判断距本地应用物理位置最近的局域网中是否存在满足当前本地应用需求的可用物理资源,如果有,则直接将局域网物理资源确定为可用目标物理资源,如果没有,则继续判断城域网中是否存在·满足当前本地应用需求的可用物理资源,依此类推,当查找到距当前本地应用物理位置最近且可用的物理资源时,将其确定为可用目标物理资源。步骤206、将确定的可用目标物理资源中的虚拟机资源,根据所述可用目标物理资源中的虚拟机资源的使用情况、负载情况和能效情况,为所述本地应用进行分配。本实施例中,将确定的可用目标物理资源模拟成虚拟机资源分配给当前本地应用,具体可以采用一定的虚拟机资源分配策略为本地应用进行虚拟机资源的分配。实际操作中,可以综合考虑确定的可用目标物理资源的虚拟机资源使用情况、负载情况以及能效情况,从而进行虚拟机资源的分配。具体的,可以将确定的可用物理资源中的物理机使用情况分为三种状态,首先根据经验设置资源使用率上、下限值,当物理资源使用率低于资源使用下限时,定义资源充裕状态,此状态的物理机可以为当前本地应用分配资源。当物理资源使用率高于资源使用下限同时低于资源使用率上限时,定义资源正常状态,此状态的物理机也可以为当前本地应用分配资源。但是,当物理资源使用率高于资源使用率上限时,定义资源紧张状态,此状态的物理机不可以为当前本地应用分配资源。实际操作中,可以将资源使用率上、下限值分别设置为40%和60%,,当需要为占用70%资源的应用分配资源时,此时存在两台资源使用率为40%的物理机时,由于任意一台物理机都不能满足其要求,为了达到节约资源的目的,可以将其中一台物理机上的应用迁移到另一台物理机上,此时能节约出一台物理机用于为占用70%资源的应用分配资源。与实施例一相比,本实施例还包括将确定为非本地可用物理资源的虚拟机资源依据物理资源中的虚拟机资源的使用情况、负载情况和能效情况,为当前本地应用进行分配,综合考虑以上因素对虚拟机资源进行分配的方式,使得虚拟机资源能更充分的被利用。实施例三、参考图3,图3为本发明提供的一种虚拟机资源调度装置实施例三的装置结构图,本实施例具体可以包括计算模块301,用于计算当前本地应用所需虚拟机资源量;查找模块302,用于根据物理资源列表,查找可以满足所述所需虚拟机资源量的物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况;分配模块303,用于将查找到的非本地和/或本地的可用物理资源中的虚拟机资源,按照预设策略,为所述当前本地应用进行分配。本实施例预先设置了物理资源列表,该表不仅存储了本地物理资源使用情况,而且存储了非本地物理资源使用情况,在进行虚拟机资源调度时,达到跨本地资源调度的目的。同时,当确定了可用物理资源为非本地物理资源后,确定离本地应用物理距离最近的可用物理资源为目标物理资源,选择最佳虚拟资源调度策略,将目标物理资源中的虚拟机资源分配给当前本地应用,按照有效策略将虚拟机资源调度的过程,可以达到虚拟机资源的有效利用。综上所述,本实施例不仅考虑了本地的可用虚拟机资源,而且考虑了跨本地的可用资源,这使得系统不会仅仅局限在对本地资源的调度,还可以选择对外市,甚至外省等非本地的资源进行调度。 实施例四、参考图4,图4为本发明提供的一种虚拟机资源调度装置实施例四的装置结构图,本实施例具体可以包括计算模块301,用于计算当前本地应用所需虚拟机资源量;查找模块302,用于根据物理资源列表,查找可以满足所述所需虚拟机资源量的物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况;判断模块401,用于判断查找到的可用物理资源是否为本地物理资源;确定子模块402,用于在所述判断模块401结果为否时,依据局域网物理资源、城域网物理资源、网省级物理资源、广域网物理资源的顺序,确定可用目标物理资源;第一分配子模块403,用于将所述确定模块子确定的目标物理资源中的虚拟机资源,按照预设策略,为所述本地应用进行分配。参考图5,图5为所述第一分配子模块403的结构图,所述第一分配子模块403,可以包括获取子模块501,用于获取所述可用目标物理资源中的虚拟机资源的使用情况、负载情况和能效情况;第三分配子模块502,用于依据所述使用情况、负载情况和能效情况将查找到的可用目标物理资源中的虚拟机资源为所述当前本地应用进行分配。第二分配子模块404,用于在所述判断模块401结果为是时,使用统一管理软件将查找到的所述可用物理资源中的虚拟机资源为所述当前本地应用进行分配。本实施例不仅考虑了本地的可用虚拟机资源,而且考虑了跨本地的可用资源,这使得系统不会仅仅局限在对本地资源的调度,还可以选择对外市,甚至外省等非本地的资源进行调度。同时,本实施例将确定为非本地可用物理资源的虚拟机资源依据物理资源中的虚拟机资源的使用情况、负载情况和能效情况,为当前本地应用进行分配,综合考虑以上因素对虚拟机资源进行分配的方式,使得虚拟机资源能更充分的被利用。对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备
所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排
除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。以上对本发明实施例所提供的虚拟机资源调度方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思 想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种虚拟机资源调度方法,其特征在于,所述方法包括 计算当前本地应用所需虚拟机资源量; 根据物理资源列表,查找可以满足所述所需虚拟机资源量的可用物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况; 将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配。
2.根据权利要求I所述的方法,其特征在于,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源,按照预设策略,为所述当前本地应用进行分配之前,还包括 判断查找到的可用物理资源是否为本地物理资源;在判断结果为否的情况下,相应的,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配,具体为, 依据局域网物理资源、城域网物理资源、网省级物理资源、广域网物理资源的顺序,确定可用目标物理资源; 将确定的可用目标物理资源中的虚拟机资源按照预设策略,为所述本地应用进行分配。
3.根据权利要求2所述的方法,其特征在于,在判断查找到的可用物理资源是本地物理资源的情况下,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配,具体为, 使用统一管理软件将查找到的所述可用物理资源中的虚拟机资源为所述当前本地应用进行分配。
4.根据权利要求I所述的方法,其特征在于,所述将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配,具体为, 根据所述可用目标物理资源中的虚拟机资源的使用情况、负载情况和能效情况,将查找到的可用目标物理资源中的虚拟机资源为所述当前本地应用进行分配。
5.一种虚拟机资源调度装置,其特征在于,所述装置包括 计算模块,用于计算当前本地应用所需虚拟机资源量; 查找模块,用于根据物理资源列表,查找可以满足所述所需虚拟机资源量的物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况; 分配模块,用于将查找到的非本地和/或本地的可用物理资源中的虚拟机资源,按照预设策略,为所述当前本地应用进行分配。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括 判断模块,用于判断查找到的可用物理资源是否为本地物理资源; 相应的,在所述判断模块结果为否时,所述分配模块,具体包括, 确定子模块,用于依据局域网物理资源、城域网物理资源、网省级物理资源、广域网物理资源的顺序,确定可用目标物理资源; 第一分配子模块,用于将所述确定子模块确定的目标物理资源中的虚拟机资源,按照预设策略,为所述本地应用进行分配。
7.根据权利要求6所述的装置,其特征在于,在所述判断模块结果为是时,所述分配模块,还包括,第二分配子模块,用于使用统一管理软件将查找到的所述可用物理资源中的虚拟机资源为所述当前本地应用进行分配。
8.根据权利要求5所述的装置,其特征在于,所述分配模块,具体包括 获取子模块,用于获取所述可用目标物理资源中的虚拟机资源的使用情况、负载情况和能效情况; 第三分配子模块,用于依据所述使用情况、负载情况和能效情况将查找到的可用目标物理资源中的虚拟机资源为所述当前本地应用进行分配。
全文摘要
本发明实施例公开了一种虚拟机资源调度方法和装置,该方法具体为,计算当前本地应用所需虚拟机资源量;根据物理资源列表,查找可以满足所述所需虚拟机资源量的可用物理资源,所述物理资源列表为预先配置的本地和非本地分别对应的可用物理资源情况;将查找到的非本地和/或本地的可用物理资源中的虚拟机资源按照预设策略,为所述当前本地应用进行分配。本发明不仅考虑了本地的可用虚拟机资源,而且考虑了跨本地的可用资源,这使得系统不会仅仅局限在对本地资源的调度,还可以选择对外市,甚至外省等非本地的资源进行调度。
文档编号G06F9/50GK102945188SQ20121046068
公开日2013年2月27日 申请日期2012年11月15日 优先权日2012年11月15日
发明者徐宏志, 杨宁, 罗华永, 杨永艳, 张辉, 桂胜, 赵潇潇, 刘刚, 罗连杰 申请人:北京中电普华信息技术有限公司, 国家电网公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1