CN105872114A - 一种视频监控云平台资源调度方法及装置 - Google Patents
一种视频监控云平台资源调度方法及装置 Download PDFInfo
- Publication number
- CN105872114A CN105872114A CN201610461197.8A CN201610461197A CN105872114A CN 105872114 A CN105872114 A CN 105872114A CN 201610461197 A CN201610461197 A CN 201610461197A CN 105872114 A CN105872114 A CN 105872114A
- Authority
- CN
- China
- Prior art keywords
- resource
- server
- virtual machine
- resources
- demand
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1012—Server selection for load balancing based on compliance of requirements or conditions with available server resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种视频监控云平台资源调度方法及装置,根据待调度资源的虚拟机请求的每种资源的需求量,以及每台服务器的每种资源的剩余量,确定服务器集群中满足虚拟机资源需求量的服务器;计算虚拟机请求的每种资源的需求量,与服务器集群的该种资源剩余总量的比值;将最大比值对应的资源,确定为虚拟机的主导资源;计算每种资源的剩余量,与服务器集群的该种资源剩余总量的比值;将每台服务器的最大比值对应的资源,确定为该每台服务器的主导资源;根据第一预设规则,将与虚拟机主导资源相同的服务器中的一台服务器的资源调度给虚拟机,应用本发明实施例,可减少资源碎片的产生,从而提高服务器的资源利用率。
Description
技术领域
本发明涉及计算机领域,特别涉及一种视频监控云平台资源调度方法及装置。
背景技术
在日常的生活和工作中,视频监控系统是安全保障不可或缺的一部分,而在视频监控系统的工作中需要对大量的视频数据进行处理,进而需要消耗大量的计算资源。传统的依靠单机处理的集中式方式已经无法满足需要,因此,一种视频监控即服务的全新计算模式即视频监控云应允而生,视频监控云通过利用云计算技术,将大规模集群物理资源抽象成广阔的资源池,实现了物理资源的统一管理,并通过合适的资源调度策略,为不同的视频处理服务按需分配资源。
虚拟机的运行是多种资源共同协作的结果,例如有CPU、内存、网络带宽等资源,每种类型的资源都发挥着不可替代的作用。服务器资源和虚拟机的需求资源均存在异构性,所谓异构性是指不同资源之间所呈现的不平衡关系。服务器资源的异构性是由服务器的更新换代、不同服务器的异步升级,以及资源的不断分配等所造成的;虚拟机的需求资源的异构性是由虚拟机上运行的任务的特性所决定的,因为不同任务需求的资源存在很大差异,比如车牌识别任务,需要对视频数据进行逐帧处理,因此,会消耗大量的CPU资源,而监控视频转发任务,则需要对某一路摄像视频向多个目的地点转发,就会对网络资源有大的需求。
由于资源的多维性,虚拟机需求资源的异构性和服务器资源的异构性,为虚拟机调度资源时,如果调度方法不合理,更易导致资源分配不合理,如将具有某种资源较少的服务器的资源调度给需求该种资源较多的虚拟机,虽然都满足了资源需求量要求,但是这样分配更易使得该服务器的该资源使用率高达100%,而另些资源的使用率又极低,这种短板问题,即我们常说的“木桶定律”,最终会使得该服务器无法再分配资源,造成资源碎片的产生,导致极大的资源浪费,降低资源利用率。
目前的视频监控云平台中使用的资源调度算法主要有首次适应算法,循环首次适应算法以及最佳适应算法。首次适应算法是将集群中的服务器按照一定规则组成链表,当有虚拟机请求到来时,从链表头节点开始,判断服务器是否满足虚拟机的资源请求,如果满足则进行资源分配,一次分配过程结束,如果不满足,则依次遍历服务器链表,直到找到第一个满足资源请求的服务器为止。循环首次适应算法在一次分配结束后,下一次分配不再从头部节点进行查找,而是从上次分配结束之后的下一个节点进行查找。最佳适应算法首先将集群中的服务器链表按照资源量的多少由小到大排序,然后按照首次适应算法或者循环首次适应算法进行资源调度,保证每次资源分配后,服务器中剩余的资源量最少。
应用上述算法进行调度资源时,都没有考虑资源的多维性和异构性,容易在分配资源时产生资源碎片,从而降低资源利用率。
发明内容
本发明实施例的目的在于提供一种视频监控云平台资源调度方法及装置,以减少服务器的资源碎片的产生,提高服务器的资源利用率。
为达到上述目的,本发明实施例公开了一种视频监控云平台资源调度方法及装置。技术方案如下:
第一方面,本发明实施例提供的一种视频监控云平台资源调度方法,所述方法包括:
根据待调度资源的虚拟机请求的每种资源的需求量,以及服务器集群中的每台服务器的每种资源的剩余量,确定所述服务器集群中满足所述虚拟机资源需求量的服务器;
针对每种资源,计算所述虚拟机请求的该种资源的需求量,与所述服务器集群的该种资源剩余总量的比值;将最大比值对应的资源,确定为所述虚拟机的主导资源;
针对每台满足所述虚拟机资源需求量的服务器以及该每台服务器的每种资源,计算该每种资源的剩余量,与所述服务器集群的该种资源剩余总量的比值;将每台所述服务器的最大比值对应的资源,确定为该每台所述服务器的主导资源;
根据第一预设规则,将与所述虚拟机主导资源相同的服务器中的一台服务器的资源调度给所述虚拟机。
优选的,所述根据第一预设规则,将与所述虚拟机主导资源相同的服务器中的一台服务器的资源调度给所述虚拟机,包括:
计算所述虚拟机和每台与所述虚拟机主导资源相同的服务器的匹配程度;
将最匹配的服务器的资源调度给所述虚拟机。
优选的,所述计算所述虚拟机和每台与所述虚拟机主导资源相同的服务器的匹配程度,包括:
针对每台与所述虚拟机主导资源相同的服务器,根据公式:
计算所述虚拟机与该每台服务器的匹配距离;其中,Dj为所述虚拟机与标识信息为j的服务器的匹配距离,该值越小代表越匹配;为所述虚拟机的第k种资源的需求量,与所述服务器集群的第k种资源剩余总量的比值;为标识信息为j的服务器的第k种资源的剩余量,与所述服务器集群的第k种资源剩余总量的比值;n为所述虚拟机需求的资源种类数量。
优选的,所述方法还包括:
在所述服务器集群中不存在满足所述虚拟机资源需求量的服务器的情况下,向用户展示用于提示当前没有服务器满足所述虚拟机资源需求的信息。
优选的,所述方法还包括:
在所有满足所述虚拟机资源需求量的服务器中,不存在与所述虚拟机主导资源相同的服务器的情况下,根据第二预设规则,将满足所述虚拟机资源需求量的服务器中的一台服务器的资源调度给所述虚拟机。
第二方面,本发明实施例提供的一种视频监控云平台资源调度装置,所述装置包括:
第一确定模块,用于根据待调度资源的虚拟机请求的每种资源的需求量,以及所述服务器集群中的每台服务器的每种资源的剩余量,确定所述服务器集群中满足所述虚拟机资源需求量的服务器;
第一处理模块,包括第一计算单元和第一确定单元;
所述第一计算单元,用于针对每种资源,计算所述虚拟机请求的该种资源的需求量,与所述服务器集群的该种资源剩余总量的比值;
所述第一确定单元,用于将所述第一计算单元计算的比值中最大比值对应的资源,确定为所述虚拟机的主导资源;
第二处理模块,包括第二计算单元和第二确定单元;
所述第二计算单元,用于针对每台满足所述虚拟机资源需求量的服务器以及该每台服务器的每种资源,计算该每种资源的剩余量,与所述服务器集群的该种资源剩余总量的比值;
所述第二确定单元,用于针对每台满足所述虚拟机资源需求量的服务器,将所述第二计算单元针对该每台服务器计算的比值中最大比值对应的资源,确定为该每台所述服务器的主导资源;
第一调度模块,用于根据第一预设规则,将与所述虚拟机主导资源相同的服务器中的一台服务器的资源调度给所述虚拟机。
优选的,所述第一调度模块,具体包括:
第三计算单元,用于计算所述虚拟机和每台与所述虚拟机主导资源相同的服务器的匹配程度;
调度单元,用于将最匹配的服务器的资源调度给所述虚拟机。
优选的,所述第三计算单元,具体用于:
针对每台与所述虚拟机主导资源相同的服务器,根据公式:
计算所述虚拟机与该每台服务器的匹配距离;其中,Dj为所述虚拟机与标识信息为j的服务器的,该值越小代表越匹配,该值越小代表越匹配;为所述虚拟机的第k种资源的需求量,与所述服务器集群的第k种资源剩余总量的比值;为标识信息为j的服务器的第k种资源的剩余量,与所述服务器集群的第k种资源剩余总量的比值;n为所述虚拟机需求的资源种类数量。
优选的,所述装置还包括:
提示模块,用于在所述服务器集群中不存在满足所述虚拟机资源需求量的服务器的情况下,向用户展示用于提示当前没有服务器满足所述虚拟机资源需求的信息。
优选的,所述装置还包括:
第二调度模块,用于在所有满足所述虚拟机资源需求量的服务器中,不存在与所述虚拟机主导资源相同的服务器的情况下,根据第二预设规则,将满足所述虚拟机资源需求量的服务器中的一台服务器的资源调度给所述虚拟机。
应用本发明实施例提供的技术方案,根据虚拟机的资源需求量与每个服务器的资源剩余量,选出所有满足虚拟机资源需求量的服务器。再从所有满足虚拟机资源需求量的服务器中确定出与虚拟机的主导资源相同的服务器,主导资源相同可以避免调度具有虚拟机主导资源较少的服务器给虚拟机,这样可以降低调度资源后的服务器中,与虚拟机主导资源相同的资源的使用率较高甚至达到百分之百,以及服务器主导资源使用率较低的可能性,以使服务器中减少资源碎片的产生,从而提高服务器的资源利用率,最终根据第一预设规则,将符合要求的服务器的资源调度给虚拟机,优化资源分配,进一步提高资源利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种视频监控云平台资源调度方法的流程示意图;
图2为本发明实施例提供的一种视频监控云平台资源调度装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的一种视频监控云平台资源调度方法及装置,主要应用于视频监控云平台的资源管理器中,在资源分配时,资源管理器根据本发明实施例进行资源调度;当然,也可以用于其他类似的资源调度场景中。
每次开始调度资源时,根据先进先出原则(FIFO)在虚拟机请求队列中取出一个待调度资源的虚拟机请求,并采用本发明实施例为该待调度资源的虚拟机调度资源。
首先对本发明实施例提供的一种视频监控云平台资源调度方法进行说明,如图1所示,图1为本发明实施例提供的一种视频监控云平台资源调度方法的流程示意图,该方法包括:
S101、根据待调度资源的虚拟机请求的每种资源的需求量,以及服务器集群中的每台服务器的每种资源的剩余量,确定服务器集群中满足该虚拟机资源需求量的服务器。
在视频监控云平台中,创建启用虚拟机时,需要先为虚拟机分配资源,具体地,本发明实施例中,启用虚拟机是为了在其上运行视频服务,因此,主要是根据视频服务来决定虚拟机需要的资源量,运行不同视频服务资源需求量不同。假设虚拟机需求的资源有预设数量种,这里所确定的满足该虚拟机资源需求量的服务器,是指针对这预设数量种资源需要同时满足虚拟机的资源需求量的服务器。例如,虚拟机请求的资源包括:CPU1核,内存512M,如果某台服务器剩余的CPU为2核,剩余的内存为2G,该服务器的这两种资源的剩余量分别大于虚拟机请求的资源需求量,即该服务器为满足该虚拟机资源需求量的服务器。
本步骤具体实施时,针对每种资源,判断虚拟机需求的资源量,与每台服务器的该种资源剩余量的大小,以获知该每台服务器是否满足虚拟机资源需求量,从而确定出全部的满足该虚拟机资源需求量的服务器。
需要说明的是,本步骤中以及下文所提到的服务器集群是指平台中可用于分配资源的所有服务器,即被抽象成广阔资源池的所有服务器。
S102、针对每种资源,计算该虚拟机请求的该种资源的需求量,与服务器集群的该种资源剩余总量的比值;将最大比值对应的资源,确定为该虚拟机的主导资源。
服务器集群的该种资源剩余总量是由服务器集群中的每台服务器的该种资源剩余量相加所获得的剩余量。本步骤中所确定的虚拟机的主导资源,考虑服务器集群整体可用资源,不是单纯的考虑虚拟机需求的不同资源量之间绝对大小关系,例如,虚拟机需要CPU和内存两种资源,虚拟机的CPU需求是1核,内存是1G;服务器集群的CPU剩余总量为100核,内存剩余总量为50G,计算CPU所对应的比值为1/100,而内存所对应的比值为1/50,比较这两个比值,确定内存为该虚拟机的主导资源。
基于服务器集群整体可分配的资源,虚拟机的主导资源相对于虚拟机其他需求的资源,相对需求较多。
S103、针对每台满足该虚拟机资源需求量的服务器以及该每台服务器的每种资源,计算该每种资源的剩余量,与服务器集群的该种资源剩余总量的比值;将每台服务器的最大比值对应的资源,确定为该每台服务器的主导资源。
确定每台满足该虚拟机资源需求量的服务器的主导资源,考虑了服务器集群整体可用资源,不是单纯的考虑服务器剩余的不同资源量之间绝对大小关系,例如,虚拟机需要CPU和内存两种资源,针对这两种资源,某台服务器剩余CPU为2核,剩余内存为2G;服务器集群的CPU剩余总量为100核,内存剩余总量为50G,计算CPU所对应的比值为1/50,而内存所对应的比值为2/50,比较这两个比值,确定内存为该服务器的主导资源。
基于服务器集群整体剩余的资源来说,某台服务器的主导资源相对于该台服务器的虚拟机需求的其他资源,相对剩余较多。
资源调度是一个动态的过程,服务器集群的剩余资源总量会随着资源分配过程的进行而变化,因此,步骤S102中,不同时间的虚拟机请求,即使需要的资源种类和对应的需求量均相同,也可能确定出不同的主导资源,同理,步骤S103中,在某台服务器剩余的资源种类相同,且对应的剩余量也相同的情况下,若时间不同,可能确定出的主导资源也不相同。
S104、根据第一预设规则,将与该虚拟机主导资源相同的服务器中的一台服务器的资源调度给该虚拟机。
由于虚拟机的主导资源相对于虚拟机需求的其他资源,某台服务器的主导资源相对于该台服务器的虚拟机需求的其他资源,基于服务器集群整体可分配的资源来说,都是相对剩余较多的资源,因此,将与虚拟机主导资源相同的服务器的资源调度给虚拟机,可以优先根据相对剩余较多的资源来分配,这样可以一定程度地避免调度资源后,对应服务器的某种资源使用率达到百分之百,而另一资源使用率极低的问题。从而减少资源碎片的产生,提高资源利用率。在第一预设规则的条件下,从与该虚拟机主导资源相同的服务器中的选择最符合要求一台服务器,并把该服务器的资源调度给该虚拟机。
可以理解的是,图1所示的实施例是按照步骤S101、S102、S103、S104的顺序依次执行的,而在其他实施例中,可以不按照这种顺序执行,具体地,只要保证步骤S101先于步骤S103,而步骤S104在最后一步执行即可。
应用本发明图1所示的实施例,根据虚拟机的资源需求量与每个服务器的资源剩余量,选出所有满足虚拟机资源需求量的服务器。再从所有满足虚拟机资源需求量的服务器中确定出与虚拟机的主导资源相同的服务器,主导资源相同可以避免调度具有虚拟机主导资源较少的服务器给虚拟机,这样可以降低调度资源后的服务器中,与虚拟机主导资源相同的资源的使用率较高甚至达到百分之百,以及服务器主导资源使用率较低的可能性,以使服务器中减少资源碎片的产生,从而提高服务器的资源利用率,最终根据第一预设规则,将符合要求的服务器的资源调度给虚拟机,优化资源分配,提高资源利用率。
本实施例中,根据第一预设规则,将与该虚拟机主导资源相同的服务器中的一台服务器的资源调度给该虚拟机,包括:
首先,计算该虚拟机和每台与该虚拟机主导资源相同的服务器的匹配程度。
再次,将最匹配的服务器的资源调度给所述虚拟机。
具体地,其中,计算该虚拟机和每台与该虚拟机主导资源相同的服务器的匹配程度,包括:
针对每台与该虚拟机主导资源相同的服务器,根据公式:
计算该虚拟机与该每台服务器的匹配距离;其中,Dj为该虚拟机与标识信息为j的服务器的匹配距离,该值越小代表越匹配;为该虚拟机的第k种资源的需求量,与服务器集群的第k种资源剩余总量的比值;为标识信息为j的服务器的第k种资源的剩余量,与服务器集群的第k种资源剩余总量的比值;n为虚拟机需求的资源种类数量。
基于主导资源的概念,从集群整体的角度进行决策,优先选择具有相同主导资源类型的虚拟机与服务器进行匹配,并且采用多维资源匹配标准,选择出最优的物理机进行资源分配。
这里采用的计算欧式距离作为匹配距离Dj,采用匹配距离Dj表示匹配程度,该值越小代表越匹配,将最匹配的服务器的资源调度给虚拟机,即调度最小Dj值对应的服务器的资源。如果Dj等于0,说明虚拟机的资源请求和服务器的资源情况完全符合,调度这台服务器的资源给虚拟机,则该台服务器的资源利用率将达到百分之百,因而也提高了整体服务器的资源利用率。
综上所述,实现了既从虚拟机需求资源的异构性和服务器资源的异构性,以及资源的多维性的角度考虑分配,又把握整体资源的特征,从整个服务器集群的角度考虑分配,能够提高资源利用率。
一种实施例中,该方法还包括:
在服务器集群中不存在满足该虚拟机资源需求量的服务器的情况下,向用户展示用于提示当前没有服务器满足所述虚拟机资源需求的信息。
如果服务器集群中不存在满足该虚拟机资源需求量的服务器,则无法给该虚拟机分配资源,这时具体可通过抛出异常来提示当前没有服务器满足该虚拟机资源需求。
另一种实施例中,该方法还包括:
在所有满足该虚拟机资源需求量的服务器中,不存在与该虚拟机主导资源相同的服务器的情况下,根据第二预设规则,将满足所述虚拟机资源需求量的服务器中的一台服务器的资源调度给所述虚拟机。
虽然不存在与该虚拟机主导资源相同的服务器,但是存在在步骤S101中确定的满足该虚拟机资源需求量的服务器,这些服务器相对于该虚拟机来说是可用的,当不能通过主导资源匹配确定服务器时,可以退而求其次选择一台满足该虚拟机资源需求量的服务器,并将该服务器的资源调度给该虚拟机。具体地,可以是随机的选择,也可以结合现有技术来选择,例如,先将上一次被分配的服务器剔除,然后将剩下的这些满足该虚拟机资源需求量的服务器按资源量多少来排序,选择剩余较少的服务器并调度。
下面针对本发明实施例提供的一种视频监控云平台资源调度装置来说明,如图2所示,图2所示的本发明实施例提供的一种视频监控云平台资源调度装置的结构示意图。该装置包括:
第一确定模块21,用于根据待调度资源的虚拟机请求的每种资源的需求量,以及服务器集群中的每台服务器的每种资源的剩余量,确定服务器集群中满足该虚拟机资源需求量的服务器;
第一处理模块22,包括第一计算单元和第一确定单元。
其中,第一计算单元,用于针对每种资源,计算该虚拟机请求的该种资源的需求量,与服务器集群的该种资源剩余总量的比值;
第一确定单元,用于将第一计算单元计算的比值中最大比值对应的资源,确定为该虚拟机的主导资源。
第二处理模块23,包括第二计算单元和第二确定单元。
其中,第二计算单元,用于针对每台满足该虚拟机资源需求量的服务器以及该每台服务器的每种资源,计算该每种资源的剩余量,与服务器集群的该种资源剩余总量的比值;
第二确定单元,用于针对每台满足该虚拟机资源需求量的服务器,将该第二计算单元针对该每台服务器计算的比值中最大比值对应的资源,确定为该每台服务器的主导资源。
第一调度模块24,用于根据第一预设规则,将与该虚拟机主导资源相同的服务器中的一台服务器的资源调度给该虚拟机。
通过第一确定模块21、第一处理模块22、第二处理模块23和第一调度模块24之间的配合工作,根据虚拟机的资源需求量与每个服务器的资源剩余量,选出所有满足虚拟机资源需求量的服务器。再从所有满足虚拟机资源需求量的服务器中确定出与虚拟机的主导资源相同的服务器,主导资源相同可以避免调度具有虚拟机主导资源较少的服务器给虚拟机,这样可以降低调度资源后的服务器中,与虚拟机主导资源相同的资源的使用率较高甚至达到百分之百,以及服务器主导资源使用率较低的可能性,以使服务器中减少资源碎片的产生,从而提高服务器的资源利用率,最终根据第一预设规则,将符合要求的服务器的资源调度给虚拟机,优化资源分配。
参阅图2,上述结构中,第一调度模块24,具体包括:
第三计算单元,用于计算该虚拟机和每台与该虚拟机主导资源相同的服务器的匹配程度;
调度单元,用于将最匹配的服务器的资源调度给该虚拟机。
本实施例中,第三计算单元,具体用于:
针对每台与该虚拟机主导资源相同的服务器,根据公式:
计算该虚拟机与该每台服务器的匹配距离;其中,Dj为该虚拟机与标识信息为j的服务器的匹配程度,该值越小代表越匹配;为该虚拟机的第k种资源的需求量,与服务器集群的第k种资源剩余总量的比值;为标识信息为j的服务器的第k种资源的剩余量,与服务器集群的第k种资源剩余总量的比值;n为该虚拟机需求的资源种类数量。
通过计算的匹配距离Dj,表示匹配程度,该值越小代表越匹配,将最匹配的服务器的资源调度给虚拟机,即调度最小Dj值对应的服务器的资源。如果Dj等于0,说明虚拟机的资源请求和服务器的资源情况完全符合,调度这台服务器的资源给虚拟机,则该台服务器的资源利用率将达到百分之百,因而也提高了整体服务器的资源利用率。
一种实施例中,该装置还包括:
提示模块(图中未示出),用于在服务器集群中不存在满足该虚拟机资源需求量的服务器的情况下,向用户展示用于提示当前没有服务器满足该虚拟机资源需求的信息。
另一种实施例中,该装置还包括:
第二调度模块(图中未示出),用于在所有满足所述虚拟机资源需求量的服务器中,不存在与该虚拟机主导资源相同的服务器的情况下,根据第二预设规则,将满足该虚拟机资源需求量的服务器中的一台服务器的资源调度给该虚拟机。
应用本发明图2所示的实施例,实现既从虚拟机需求资源的异构性和服务器资源的异构性,以及资源的多维性的角度考虑分配,又从整个所述服务器集群的角度进行考虑分配,最终,不仅能够提高资源利用率,而且还能够实现资源分配的均衡。
另外,本发明实施例提供的一种视频监控云平台资源调度方法及装置,在具体实施前,可以先将涉及到的和资源调度相关的内容以及属性进行数值化表示,例如,用一个向量如V=(v1,v2,...,vN)表示虚拟机所需求的资源量,V中的每个元素vi代表虚拟机需求的第i种资源的需求量。类似的,每台服务器的多种资源的剩余量等也可以采用向量表示,这样整个方法中可以采用向量的方式进行计算。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种视频监控云平台资源调度方法,其特征在于,所述方法包括:
根据待调度资源的虚拟机请求的每种资源的需求量,以及服务器集群中的每台服务器的每种资源的剩余量,确定所述服务器集群中满足所述虚拟机资源需求量的服务器;
针对每种资源,计算所述虚拟机请求的该种资源的需求量,与所述服务器集群的该种资源剩余总量的比值;将最大比值对应的资源,确定为所述虚拟机的主导资源;
针对每台满足所述虚拟机资源需求量的服务器以及该每台服务器的每种资源,计算该每种资源的剩余量,与所述服务器集群的该种资源剩余总量的比值;将每台所述服务器的最大比值对应的资源,确定为该每台所述服务器的主导资源;
根据第一预设规则,将与所述虚拟机主导资源相同的服务器中的一台服务器的资源调度给所述虚拟机。
2.根据权利要求1所述的方法,其特征在于,所述根据第一预设规则,将与所述虚拟机主导资源相同的服务器中的一台服务器的资源调度给所述虚拟机,包括:
计算所述虚拟机和每台与所述虚拟机主导资源相同的服务器的匹配程度;
将最匹配的服务器的资源调度给所述虚拟机。
3.根据权利要求2所述的方法,其特征在于,所述计算所述虚拟机和每台与所述虚拟机主导资源相同的服务器的匹配程度,包括:
针对每台与所述虚拟机主导资源相同的服务器,根据公式:
计算所述虚拟机与该每台服务器的匹配距离;其中,Dj为所述虚拟机与标识信息为j的服务器的匹配距离,该值越小代表越匹配;为所述虚拟机的第k种资源的需求量,与所述服务器集群的第k种资源剩余总量的比值;为标识信息为j的服务器的第k种资源的剩余量,与所述服务器集群的第k种资源剩余总量的比值;n为所述虚拟机需求的资源种类数量。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述服务器集群中不存在满足所述虚拟机资源需求量的服务器的情况下,向用户展示用于提示当前没有服务器满足所述虚拟机资源需求的信息。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所有满足所述虚拟机资源需求量的服务器中,不存在与所述虚拟机主导资源相同的服务器的情况下,根据第二预设规则,将满足所述虚拟机资源需求量的服务器中的一台服务器的资源调度给所述虚拟机。
6.一种视频监控云平台资源调度装置,其特征在于,所述装置包括:
第一确定模块,用于根据待调度资源的虚拟机请求的每种资源的需求量,以及所述服务器集群中的每台服务器的每种资源的剩余量,确定所述服务器集群中满足所述虚拟机资源需求量的服务器;
第一处理模块,包括第一计算单元和第一确定单元;
所述第一计算单元,用于针对每种资源,计算所述虚拟机请求的该种资源的需求量,与所述服务器集群的该种资源剩余总量的比值;
所述第一确定单元,用于将所述第一计算单元计算的比值中最大比值对应的资源,确定为所述虚拟机的主导资源;
第二处理模块,包括第二计算单元和第二确定单元;
所述第二计算单元,用于针对每台满足所述虚拟机资源需求量的服务器以及该每台服务器的每种资源,计算该每种资源的剩余量,与所述服务器集群的该种资源剩余总量的比值;
所述第二确定单元,用于针对每台满足所述虚拟机资源需求量的服务器,将所述第二计算单元针对该每台服务器计算的比值中最大比值对应的资源,确定为该每台所述服务器的主导资源;
第一调度模块,用于根据第一预设规则,将与所述虚拟机主导资源相同的服务器中的一台服务器的资源调度给所述虚拟机。
7.根据权利要求6所述的装置,其特征在于,所述第一调度模块,具体包括:
第三计算单元,用于计算所述虚拟机和每台与所述虚拟机主导资源相同的服务器的匹配程度;
调度单元,用于将最匹配的服务器的资源调度给所述虚拟机。
8.根据权利要求7所述的装置,其特征在于,所述第三计算单元,具体用于:
针对每台与所述虚拟机主导资源相同的服务器,根据公式:
计算所述虚拟机与该每台服务器的匹配距离;其中,Dj为所述虚拟机与标识信息为j的服务器的匹配距离,该值越小代表越匹配;为所述虚拟机的第k种资源的需求量,与所述服务器集群的第k种资源剩余总量的比值;为标识信息为j的服务器的第k种资源的剩余量,与所述服务器集群的第k种资源剩余总量的比值;n为所述虚拟机需求的资源种类数量。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
提示模块,用于在所述服务器集群中不存在满足所述虚拟机资源需求量的服务器的情况下,向用户展示用于提示当前没有服务器满足所述虚拟机资源需求的信息。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二调度模块,用于在所有满足所述虚拟机资源需求量的服务器中,不存在与所述虚拟机主导资源相同的服务器的情况下,根据第二预设规则,将满足所述虚拟机资源需求量的服务器中的一台服务器的资源调度给所述虚拟机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610461197.8A CN105872114A (zh) | 2016-06-22 | 2016-06-22 | 一种视频监控云平台资源调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610461197.8A CN105872114A (zh) | 2016-06-22 | 2016-06-22 | 一种视频监控云平台资源调度方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105872114A true CN105872114A (zh) | 2016-08-17 |
Family
ID=56650014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610461197.8A Pending CN105872114A (zh) | 2016-06-22 | 2016-06-22 | 一种视频监控云平台资源调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105872114A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106686081A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇虎科技有限公司 | 一种数据库服务系统的资源分配方法和装置 |
CN106790368A (zh) * | 2016-11-17 | 2017-05-31 | 北京奇艺世纪科技有限公司 | 一种分布式系统中的资源调度方法和装置 |
CN107071014A (zh) * | 2017-03-30 | 2017-08-18 | 北京奇艺世纪科技有限公司 | 一种资源调整方法及装置 |
CN108184149A (zh) * | 2017-12-29 | 2018-06-19 | 北京奇艺世纪科技有限公司 | 一种视频cdn调度优化方法及装置 |
CN108268318A (zh) * | 2016-12-30 | 2018-07-10 | 华为技术有限公司 | 一种分布式系统任务分配的方法和装置 |
CN109753353A (zh) * | 2017-11-07 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 虚拟机资源分配方法、装置及电子设备 |
EP3553656A4 (en) * | 2016-12-30 | 2019-11-27 | Huawei Technologies Co., Ltd. | METHOD AND DEVICE FOR PLANNING RESOURCES |
CN110858161A (zh) * | 2018-08-24 | 2020-03-03 | 阿里巴巴集团控股有限公司 | 资源分配方法、装置、系统、设备和介质 |
CN110888733A (zh) * | 2018-09-11 | 2020-03-17 | 北京奇虎科技有限公司 | 集群资源使用情况处理方法、装置及电子设备 |
CN111796933A (zh) * | 2020-06-28 | 2020-10-20 | 北京小米松果电子有限公司 | 资源调度方法、装置、存储介质和电子设备 |
CN115202871A (zh) * | 2022-06-30 | 2022-10-18 | 中国电信股份有限公司 | 一种协同空间划分方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446115A (zh) * | 2012-01-09 | 2012-05-09 | 浙江大学 | 一种虚拟机的动态部署方法 |
US8671407B2 (en) * | 2011-07-06 | 2014-03-11 | Microsoft Corporation | Offering network performance guarantees in multi-tenant datacenters |
CN104536832A (zh) * | 2015-01-21 | 2015-04-22 | 北京邮电大学 | 一种虚拟机部署方法 |
CN104572302A (zh) * | 2015-01-04 | 2015-04-29 | 中国联合网络通信集团有限公司 | 一种实现资源分配的方法及装置 |
CN104572301A (zh) * | 2015-01-04 | 2015-04-29 | 中国联合网络通信集团有限公司 | 一种资源分配方法和系统 |
-
2016
- 2016-06-22 CN CN201610461197.8A patent/CN105872114A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8671407B2 (en) * | 2011-07-06 | 2014-03-11 | Microsoft Corporation | Offering network performance guarantees in multi-tenant datacenters |
CN102446115A (zh) * | 2012-01-09 | 2012-05-09 | 浙江大学 | 一种虚拟机的动态部署方法 |
CN104572302A (zh) * | 2015-01-04 | 2015-04-29 | 中国联合网络通信集团有限公司 | 一种实现资源分配的方法及装置 |
CN104572301A (zh) * | 2015-01-04 | 2015-04-29 | 中国联合网络通信集团有限公司 | 一种资源分配方法和系统 |
CN104536832A (zh) * | 2015-01-21 | 2015-04-22 | 北京邮电大学 | 一种虚拟机部署方法 |
Non-Patent Citations (1)
Title |
---|
XIANDA YANG 等: ""Multi-resource Allocation for Virtual Machine Placement in Video Surveillance Cloud"", 《HUMAN CENTERED COMPUTING 2016》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790368A (zh) * | 2016-11-17 | 2017-05-31 | 北京奇艺世纪科技有限公司 | 一种分布式系统中的资源调度方法和装置 |
CN106686081A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇虎科技有限公司 | 一种数据库服务系统的资源分配方法和装置 |
CN108268318A (zh) * | 2016-12-30 | 2018-07-10 | 华为技术有限公司 | 一种分布式系统任务分配的方法和装置 |
EP3553656A4 (en) * | 2016-12-30 | 2019-11-27 | Huawei Technologies Co., Ltd. | METHOD AND DEVICE FOR PLANNING RESOURCES |
CN107071014A (zh) * | 2017-03-30 | 2017-08-18 | 北京奇艺世纪科技有限公司 | 一种资源调整方法及装置 |
CN107071014B (zh) * | 2017-03-30 | 2019-12-13 | 北京奇艺世纪科技有限公司 | 一种资源调整方法及装置 |
CN109753353A (zh) * | 2017-11-07 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 虚拟机资源分配方法、装置及电子设备 |
CN109753353B (zh) * | 2017-11-07 | 2023-04-18 | 阿里巴巴集团控股有限公司 | 虚拟机资源分配方法、装置及电子设备 |
CN108184149B (zh) * | 2017-12-29 | 2021-04-20 | 北京奇艺世纪科技有限公司 | 一种视频cdn调度优化方法及装置 |
CN108184149A (zh) * | 2017-12-29 | 2018-06-19 | 北京奇艺世纪科技有限公司 | 一种视频cdn调度优化方法及装置 |
CN110858161A (zh) * | 2018-08-24 | 2020-03-03 | 阿里巴巴集团控股有限公司 | 资源分配方法、装置、系统、设备和介质 |
CN110858161B (zh) * | 2018-08-24 | 2023-05-12 | 阿里巴巴集团控股有限公司 | 资源分配方法、装置、系统、设备和介质 |
CN110888733A (zh) * | 2018-09-11 | 2020-03-17 | 北京奇虎科技有限公司 | 集群资源使用情况处理方法、装置及电子设备 |
CN110888733B (zh) * | 2018-09-11 | 2023-12-26 | 三六零科技集团有限公司 | 集群资源使用情况处理方法、装置及电子设备 |
CN111796933A (zh) * | 2020-06-28 | 2020-10-20 | 北京小米松果电子有限公司 | 资源调度方法、装置、存储介质和电子设备 |
CN111796933B (zh) * | 2020-06-28 | 2023-11-21 | 北京小米松果电子有限公司 | 资源调度方法、装置、存储介质和电子设备 |
CN115202871A (zh) * | 2022-06-30 | 2022-10-18 | 中国电信股份有限公司 | 一种协同空间划分方法、装置、设备及存储介质 |
CN115202871B (zh) * | 2022-06-30 | 2024-09-06 | 中国电信股份有限公司 | 一种协同空间划分方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105872114A (zh) | 一种视频监控云平台资源调度方法及装置 | |
CN109783229B (zh) | 线程资源分配的方法及装置 | |
CN106033373B (zh) | 一种云计算平台中虚拟机资源调度方法和调度系统 | |
CN107357661A (zh) | 一种针对混合负载的细粒度gpu资源管理方法 | |
CN109492774B (zh) | 一种基于深度学习的云资源调度方法 | |
CN101004743B (zh) | 分布式文档转换系统及方法 | |
CN110166282A (zh) | 资源分配方法、装置、计算机设备和存储介质 | |
CN104679595B (zh) | 一种面向应用的IaaS层动态资源分配方法 | |
CN110334959A (zh) | 一种航班舱位资源分配方法及装置 | |
CN104881322B (zh) | 一种基于装箱模型的集群资源调度方法及装置 | |
CN105892996A (zh) | 一种批量数据处理的流水线作业方法及装置 | |
CN104657207B (zh) | 远程授权请求的调度方法、业务服务器和调度系统 | |
CN105373426B (zh) | 一种基于Hadoop的车联网内存感知实时作业调度方法 | |
CN108270805B (zh) | 用于数据处理的资源分配方法及装置 | |
CN104391918A (zh) | 基于对等部署的分布式数据库查询优先级管理的实现方法 | |
CN111030983B (zh) | 基于分布式分发的数据处理方法、装置及相关设备 | |
CN110990121B (zh) | 一种基于应用画像的Kubernetes调度策略 | |
CN105488134A (zh) | 大数据处理方法及大数据处理装置 | |
CN110543352A (zh) | 调度系统的任务分配方法及其相关的装置 | |
CN104156505B (zh) | 一种基于用户行为分析的Hadoop集群作业调度方法及装置 | |
CN116560860A (zh) | 一种基于机器学习的资源优先级的实时优化调整方法 | |
CN110084507A (zh) | 云计算环境下分级感知的科学工作流调度优化方法 | |
CN111796932A (zh) | 一种gpu资源调度方法 | |
CN111428973A (zh) | 一种能有效提高资源利用率的虚拟资源分配方法 | |
CN116010447A (zh) | 一种优化异构数据库用户查询的负载均衡方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160817 |